歡迎您光臨本站 登入註冊首頁

sybase系統的數據同步與複製

admin @ 2014-03-14 , reply:0

概述

ybase系統的數據同步與複製  sybase複製伺服器(sybasereplicationserver)用來滿足日益發展的企業客戶/伺服器計算機環境的需要。自從複製伺服器被廣泛應用以來,已成為企業範……

sybase系統的數據同步與複製


  sybase複製伺服器(sybase replication server)用來滿足日益發展的企業客戶/伺服器計算機環境的需要。自從複製伺服器被廣泛應用以來,已成為企業範圍內客戶/伺服器應用模式的基礎。

  一個實用的複製系統必須考慮到以下的業務要求。

  數據的高可靠性:
  複製系統將使應用系統更加可靠,減少了計算機系統失敗給業務處理造成的影響。

  信息傳遞的一致性:
  分佈系統各節點內保護數據的一致性;

  高的系統性能:
  複製系統必須在不增加數據源節點的負擔、有效使用網路的前提下,允許每個節點優化本地數據的存取方式;

  方便數據集中管理:
  系統管理員能夠方便容易地管理分佈與各節點的數據;

  異構數據源訪問:
  複製系統有能力在不同廠商提供的數據源之間移動傳遞數據,如sybase、oracle、ms sql等系統間數據的複製和同步;

  本地自治:
  每個節點能夠決定自己將接受的是哪些數據,以及訪問和更新本節點數據。
  複製伺服器的工作方式

  在這節中我們將描述sybase複製伺服器產品的各個部份及它們的功能。複製數據操作可以分為四個部分:

  對一個或多個數據源改變數據事務的監測
  在網路上傳送事務
  將事務分發給各個目標數據源
  複製系統管理
  在sybase複製伺服器環境中,對源資料庫中數據的修改由一個稱為日誌傳輸管理(log transfer manager 簡稱ltm)的進程來實現。最典型的結構中ltm與源資料庫放在同一個硬體平台上。

  ltm將log傳送給複製伺服器進程,複製伺服器進程可以在另一機器上。在一個複製系統中,若干複製伺服器的配置,可以分佈在不同的區域網上,根據複製系統的配置,改變數據的log從一個複製伺服器傳送到其它複製伺服器,最後由這些複製伺服器將數據改變傳給目標資料庫。完整的數據複製操作進程可以由一個基於gui環境的複製伺服器管理界面來管理和監控。因為在複製系統中使用了穩定隊列(stable queue),數據從源資料庫到目標資料庫的途徑中,能夠避免系統中任一部分失敗發生的數據丟失現象。穩定隊列是一個安全機制,容錯環境失敗。

  日誌傳輸管理

  sybase複製伺服器產品有一部分為log transfer manager(ltm).ltm是一個低調度進程,最典型的配置方法是將ltm運行在與源資料庫相同的平台上。如果複製系統中將有多於一個節點的源數據被修改,則需要每個節點有一個ltm。

  ltm的任務是監視並捕獲與它相聯資料庫的事務,而且將這些事務傳送給複製伺服器,以便複製伺服器將事務再傳給其它的複製節點。

  ltm有一個聯接到sql server,讀取主sql server的事務日誌,監測它是否改變了主節點數據。事務日誌是用來觀察主節點數據變化的最好的信息來源,因為它包含已經提交給server的事務,可用來恢復事務。在圖六中,當某應用程序修改了主節點數據時,這個事務被記在事務日誌中,以保證數據一致性,當提交時數據改變寫入磁碟。複製進程不干涉資料庫功能,只是ltm在監測sql server中的事務,當發現某個事務應該被複制時,將它傳送給sybase複製伺服器。

  ltm進程,是一個由sybase open server/open client編寫的應用程序,並有一個聯接到sybase複製伺服器。這個進程可以駐留在單獨的機器上。正是由於sybase複製伺服器進程可以運行在與主數據源不同的機器上,才使用戶將複製系統對主資料庫施加的負擔降低到最小限度。

  ltm進程可以將獨立於主數據源命令的事務翻譯給複製伺服器。例如,一個事務中完成的是「update」,ltm將把事務傳送給複製伺服器並且給予解釋,翻譯成主節點完成的update命令。這個源資料庫事務到複製伺服器翻譯或映射所認識的命令的機制是sybase複製伺服器技術的一個重要策略。從ltm到複製伺服器的界面對用戶來說是可見的。也就是說,如果你能獲得數據源的事務,就可以將它映射到sybase複製系統環境並且複製它。與其它競爭廠家產品不同,sybase複製技術允許建立應用程序來複制異構數據源。

  數據在區域網和廣域網上的傳送

  現在讓我們來看,當信息從ltm傳送到與之相聯的複製伺服器之後,又發生了什麼?如果當數據與複製數據在不同的區域網上,那麼複製進程將要把數據從主資料庫的複製伺服器傳送到負責複製節點資料庫的複製伺服器。請注意,如果主節點與複製節點同在一個區域網上,那麼可以省掉第二個複製伺服器。在單一區域網複製環境中,一個複製伺服器可以完成接受ltm數據並傳送到複製節點兩項任務。

  在多區域網環境中,不同sybase複製伺服器之間路由可以是直接的,不需要中間節點。也可以是間接的。在主複製伺服器與從複製伺服器之間有中間傳送節點。這些直接的或間接的路由是由系統管理員來配置的,允許系統管理員根據網路限制及應用程序傳送數據的需要,有效地使用整個系統環境。在直接的及間接的配置狀態中,可用複製伺服器管理軟體監視路由上傳遞的信息。

  數據到達複製節點

  在上兩個標題中我們已看到ltm進程與伺服器進程是如何協同工作的,將事務從主節點資料庫送過網路到達目標節點。現在來看複製過程最後處理程序,複製伺服器怎樣把數據送到目標資料庫。

  sybase複製伺服器是由基於sybase open server/open client的應用程序。在複製的最後過程,複製伺服器在目標資料庫上建立一個聯接,將從主資料庫接收到的數據寫入複製資料庫。同樣,複製節點可以是非sybase數據系統。

  sybase複製伺服器以標準客戶/伺服器聯接方式連到目標資料庫。並有足夠的許可權修改目標資料庫。下面我們可以看到複製伺服器怎樣知道傳送哪些事務,傳送到什麼地方。包含複製數據的節點要向複製系統訂購它所需要的數據。至於訂購單信息被存在與之相關的sybase複製伺服器數據字典中。每個複製伺服器有一個相應的數據字典。簡稱rssd,用來存貯複製系統信息。

  因為sybase複製伺服器僅是簡單地象其客戶程序一樣把事務傳送到目標數據源,可以是非sybase數據源。用戶可以使用sybase omni-gateway,讓複製伺服器聯接到第三方數據源,使複製伺服器認為複製節點就是sybase,從複製伺服器到目標數據源之間傳送數據不需做任何形式變化。

  複製系統配置和管理工具

  replication server manager(rsm)是一個功能性很強的系統管理工具,使我們能成功地實現和管理分佈複製環境。sybase正是認識到這一點,設計複製伺服器的同時也設計了複製伺服器管理程序。 rsm提供一個圖形用戶界面,使用戶僅從一個圖形操作界面便能使系統管理員監控管理複製系統的每個部分。rsm是sybase企業客戶/伺服器系統管理工具家庭成員之一,提供基於對象的管理方式。

  rsm幫助系統管理員建立複製數據定單,接收複製的數據,指定這些數據複製到某個節點。定單上定義複製節點將從主節點訂購哪些記錄行。

  使用rsm代替了複雜的複製伺服器sql命令,僅需用易於使用的填空方式便可建立複製系統定義,可用性非常好。

  穩定隊列:

  sybase複製系統的設計模式,允許複製系統中的網路或者任意部分在短暫失敗之後,能快速而簡便地重新達到數據同步,這種配置能保護複製系統不受環境失敗的影響,在其中擔當主要任務的是穩定磁碟隊列。

  在複製環境中,事務從複製系統的一個部分傳送到另一部分(例如,從ltm傳送到sybase複製伺服器,或者從某一複製伺服器傳送到另外一個複製伺服器),在傳輸的中間環節,事務均可以被暫時存放在磁碟上,避免某一部分失敗引發的數據丟失。當複製環境恢復到正常狀態時,複製伺服器能自動將磁碟隊列中數據傳送到目標節點。存放數據隊列的磁碟分區的大小則可以動態調整。

  修改複製數據(分佈修改)

  一般情況下,複製節點數據跟隨主節點而變化。如果用戶希望直接修改複製節點數據又會怎樣呢?sybase複製伺服器如何來保證協同環境下的數據一致性?

  在sybase複製伺服器環境中,修改複製節點數據有以下兩種方法:

  非同步複製:節點之間傳輸存貯過程調用
  同步複製:直接連接到各節點,修改每一個節點數據
  在任何系統中,任何時刻,每個數據項都必須有一個明確的主節點來控制它。也就是說,每個數據項在分散式環境中在某一節點是唯一標準的,其它網路節點只存放主節點數據的拷貝。update操作可以發生在任何節點上,但在系統環境中只有主節點唯一能真正完成update。

  數據項之間的關係是相當重要的,在任意一個update節點,其數據也屬於其他節點,一個成功的系統,其生命周期的很多時間花費在解決這樣的數據衝突問題上。另外,還有系統備份與恢復,在複雜的數據關係下也不是件容易的事情。設計一個良好的系統環境,在應用系統中變得十分重要。


sybase複製伺服器是數據複製與同步可以採用的最佳解決方案

  在上部分我們介紹過數據複製的概念,並介紹過sybase複製伺服器是如何工作的及複製環境的幾個實例。現在我們來探討sybase複製伺服器究竟有哪些優點,使它在同類產品市場上占居絕對的主導地位。

  sybase複製伺服器的優點——高性能

  高性能主要體現在數據複製過程的三個方面

  高效的事務捕俘
  高效事務傳輸
  高效的數據訪問
  高效事務捕俘——不依賴於觸發器和規則

  構成sybase複製伺服器的每個部分並未採用資料庫系統的特性及功能。複製伺服器的工作模式是專門為複製而設計的技術。sybase複製伺服器的組件ltm是完全獨立於源資料庫而工作的。sybase複製服務並設有使用資料庫觸發器及規則,因此也不增加源資料庫的負擔。

  在一個基於觸發的過程中,如果改變了源數據將觸發一個資料庫中的警報,這個警報將激活一段源資料庫中定義的一段指定的複製代碼,從而開始一個複製過程。一個基於觸發或規則的複製系統是與源資料庫中操作密切相關的。代碼段必須在源資料庫中執行,以便觸發一個複製處理過程。因此,觸發或規則給源數據節點增加了不必要的負擔,造成性能下降。而且觸發和規則必須嚴密監控,當源數據被修改之後,管理員必須跟蹤每個警報以免遺漏。當然,觸發和規則用於在源資料庫中維護數據一致性,或加強業務規則,其給性能和管理帶來的開銷是可以理解的,也是有價值的。

  相反,sybase複製伺服器提供一種機制,複製系統是獨立的,不會給主數據源造成負擔,也不會給主資料庫管理員增加過多的責任。

  高性能事務傳遞

  sybase複製伺服器允許管理員選擇網上傳送數據的路由,從而更加有效地使用網路。路由可以是直接的,也可以是間接的。直接路由線路較短,數據可以較快地到達目的地,而間接路由則提供給管理員更大的靈活性。帶有中間節點的路由給系統提供很大優越性:

  縮減網路大小
  信息傳送到中轉節點后,可以蔓延到所有下級節點。間接路由減少了網路連接數量。
  複製伺服器環境中靈活地分佈處理過程
  利用間接路由,一些相關的複製定義共享sybase複製伺服器。
  正是因為間接路由的存在,允許系統管理員在網路失敗的特殊情況下,轉換其它途徑傳遞信息。
  高效數據存取

  sybase複製系統將數據傳送給sybase伺服器或其它非sybase伺服器。每個節點配備怎樣的數據源只需與本地需求一致。sybase複製系統不限制每個遠程節點對本地應用的設計與規劃,也不會幹涉本地數據存取方式的優化選擇,資料庫索引設計或者數據在磁碟上分佈。

  sybase複製伺服器優點——一致信息傳送

  sybase複製伺服器在環境中傳遞事務,而不是傳遞數據行,因此在複製系統內數據的事務性一致得到保障。sybase複製伺服器採用的事務性一致技術不同於早期的複製技術,例如錶快照。此外,它也不象基於觸發器和規則的複製系統,sybase複製伺服器傳遞事務本身,而不是傳送數據行的改變。由於sybase複製伺服器傳遞事務,它也能夠傳遞存貯過程,因而提供了一個有效的方法複製非同步遠程存貯過程完成複製節點對數據的修改。

  sybase複製伺服器簡單的集中管理

  sybase複製伺服器產品中包括一個強有力的系統管理工具replication server manager(rsm)。rsm圖形化的用戶界面使系統管理員從一個簡單的桌面系統便能管理複製系統中的每一個對象,或者幾個對象的集合。rsm幫助系統管理員檢查複製系統中各組件的狀態,監控它們的性能,rsm基於對象界面的特性使系統管理員避開網路配置細節,不用考慮資源的實際位置,僅在一個桌面平台上便可以管理所有的系統資源。

  複製伺服器管理還有一些屏幕可以監控網路聯接的狀態及性能、空間分配、穩定隊列使用情況和複製定義配置。

  在市場上沒有其他的複製產品包含象複製伺服器管理這樣的功能強大而且高效的系統管理工具,這個產品證實了sybase讓企業範圍客戶/伺服器環境下分佈系統管理簡單高效的承諾。

  sybase複製伺服器優點——高效數據可用性

  以上所述sybase複製產品的優點簡化了日復一日的複製系統操作,使之易於管理,確保整個企業範圍內協調數據的高度可用性。

  系統失敗之後,數據重新自動同步

  當複製環境失敗之後,正處於向複製節點傳送的事務被臨時存放在磁碟的穩定隊列。在系統恢復之後,隊列中的數據重新恢復原來路徑傳送到複製節點。複製數據也因此能夠重新同步。

  協調資料庫備份,易於系統恢復

  在分佈環境中備份和重新裝載資料庫是麻煩的,而且難免疏忽造成的信息不一致。為簡化備份過程,在複製環境下,sybase提供一種機制,即用複製系統來達到資料庫備份。

  通過批量拷貝重建複製節點

  當第一次建立複製節點或者重建複製節點時,有可能沒有初始化跨越網路的資料庫的複製數據,即主節點與複製節點沒有達到完全一致。sybase複製伺服器允許系統管理員輸出主節點數據到磁帶然後再從磁帶裝載到複製節點。當數據從磁帶裝載到複製節點之後,基於網路的複製系統恢復正常複製而不丟失數據。

  數據鏡像

  sybase在複製環境下,有另外一個優點-數據鏡像。在複製伺服器最良可用程度下,包含主數據節點能被鏡像到磁碟上。

  sybase複製伺服器優點——異構一致

  sybase複製伺服器允許非sybase數據源加入複製環境。在其中,異構數據源不僅能充當目標節點,接受複製的數據及存貯過程,而且能充當主節點。

  用戶能夠使用open server/open client技術定製特殊的事務傳送管理(ltm)從非sybase數據源複製數據。sybase提供訪問和複製非sybase數據所必需的工具。訪問非sybase資料庫尤其對那些有遺留系統的用戶非常重要。利用sybase複製伺服器提供的開放系統技術能複製以前遺留系統的數據,不會因為採納了新的軟體系統而使以前成功的應用系統受到威脅。

  sybase複製伺服器優點——本地自治

  sybase複製系統傳遞事務到sybase或非sybase數據源。總之,每個節點保留完全自治決定怎樣去訪問,怎樣去使用複製節點的數據,每個節點有權力做以下選擇:

  選擇接受或訪問某個主數據集合(或完全集合)
  設置在本地的表名和列名
  優化本地數據訪問方式
  修改數據,使用非同步遠程存貯過程,或同步地直接聯接到主節點,使主節點與複製節點保持一致。
  總之,sybase複製伺服器奠定了企業客戶/伺服器應用中數據分佈的基礎,解決了分佈操作和分佈數據中高效數據可用性 、一致信息傳遞、高性能 、簡單集中管理 、異構數據存取 、本地自治等問題。

[admin via 研發互助社區 ] sybase系統的數據同步與複製已經有2416次圍觀

http://cocdig.com/docs/show-post-102.html