Sybase 提供三種復制技術:
MobiLink是一種基於會話的技術,用來在中心統一數據庫和大量遠程數據庫間進行雙向數據復制。它支持多種統一數據庫服務器,其中包括非 Sybase 數據庫。遠程站點的管理和資源要求已降到了最低限度,因此,它非常適於各種移動數據庫。每個同步會話結束後,這些數據庫就會保持一致。
SQL Remote是一種基於消息的技術,用於雙向事務復制。這種技術適用於統一數據服務器和大量遠程數據庫之間的雙向復制。遠程站點的管理和資源要求已降到了最低限度,因此,它非常適合於移動數據庫。此系統是基於消息的系統。根據體系的不同,統一數據庫和遠程數據庫間通常的延遲時間為幾秒鐘、幾分鐘或幾個小時。
復制服務器是一種基於連接的技術,用於雙向事務復制。它非常適於使用高速網絡連接的少量企業數據庫間進行的復制,通常每個站點有一個管理員。在這類系統中,有可能將延遲時間縮短到幾秒鐘。
選擇復制技術
每種 Sybase 復制技術都適用於特定的場合。下面介紹這些技術之間的差異,可從中了解哪種技術最適合您的需要。
應考慮下面的哪些注意事項對您的應用比較重要。
統一數據庫系統
在典型的復制環境中,大型數據庫用作信息的中心倉庫。有時,可以選擇適合您的需要的數據庫系統。但在其它情況下,中心數據庫已經存在,必須修改復制系統以便與它配套使用。
MobiLink 可以與許多常用的數據庫服務器一起使用,包括 AdaptiveServer Anywhere、 Sybase Adaptive Server Enterprise、 Oracle、Microsoft SQL Server 和 IBM DB2。
在 SQL Remote 系統中,中心數據庫必須是 Adaptive Server Anywhere 或Sybase Adaptive Server Enterprise。
遠程數據庫系統
在所支持的遠程數據庫類型方面, Sybase 的復制技術也互不相同。MobiLink 允許將 Adaptive Server Anywhere 或 UltraLite 作為遠程數據庫。
SQL Remote 僅支持 Adaptive Server Anywhere 遠程數據庫。
網絡特性
MobiLink 和 SQL Remote 非常適於不定時連接環境,在這類環境中遠程站點必須孤立地運行幾小時或幾天;當網絡連接可用時,就可以進行更頻繁的同步。與之相比, Replication Server 適用於不間斷連接,它可以快速復制大量的數據。
MobiLink 基於會話。在同步過程中要求實時連接。如果此連接在同步完成之前中斷,則在下次同步之前,無法完成此過程。相對而言,SQL Remote 通過消息來傳遞信息 (消息的發送或接收可以異步進
行)。這些消息可以采用硬盤上的文件或電子郵件形式。在收到消息後,就可以對消息進行處理了,從而以遞增的方式進行復制。
同步頻率
在某些情況下,立即復制信息是非常重要的。而在其它情況下,每天復制一次或兩次就足夠了。事實上,在網絡連接不可用時,無法進行更頻繁的復制。
MobiLink 和 SQL Remote 主要適用於復制不是很頻繁的情況,例如每隔幾小時或幾天復制一次。 MobiLink 和 SQL Remote 可處理更頻繁的同步,但對資源和網絡的要求很高。如果有充足的資源,則 MobiLink 同步可以每隔幾分鐘進行一次。在不間斷模式下運行時, SQL Remote 允許每隔幾秒鐘進行一次復制。
Replication Server 適用於要求接近實時的復制系統。
遠程站點的數量
如果有大量遠程用戶,則最佳選擇是 MobiLink 或 SQL Remote。SQL Remote 基於消息的設計允許采用典型系統來處理數以千計的遠程用戶。 MobiLink 的可伸縮性僅受統一數據庫管理系統可伸縮性的限制。 Replication Server 僅適用於幾個站點。
雖然這些數量是基准指標,但是,在上述任一系統中,對遠程站點數量的最大值並沒有硬性限制。實際的數量取決於復制的信息量、同步的頻率以及您的應用設計。
事務排序
QL Remote 通過掃描事務日志並相應地為每個事務准備消息來復制數據。它將這些消息進行排序,然後將它們發送到遠程站點或統一站點。在處理過程收到消息時, SQL Remote 始終按應用到其它數據庫上的順序來處理它們。如有必要,它將自動延遲對某條消息的處理,直到應用了先前的所有消息為止。
與之相比, MobiLink 的工作方式是:將遠程服務器上多個事務的結果劃分為一個更改集,再將該更改集應用到統一數據庫。因為同步始終在事務邊界進行的,所以保持了參照完整性。但是,並不保留在組件事務過程中所做的各項更改的順序。由於沒有同步未提交的數據,所以保持了數據完整性。
在特定時間保持數據一致性
在每個 MobiLink 同步會話剛完成後,兩個數據庫中的數據是一致的。MobiLink 基於會話的復制的優點之一是,在特定時刻能夠保證遠程站點數據的一致性。例如,如果要在特定時間 (例如上午 10 點)使遠程站點的數據准確反映統一數據庫中的數據,則可以在快要到這一時刻時進行同步來實現此目的。只要同步成功完成,就可保證遠程站點數據是最新的。
在通過消息交換復制數據更改時,很難保證在任何特定時刻某個遠程站點的數據與統一站點的數據完全一致。例如,有時消息在傳遞過程中丟失。 SQL Remote 能夠自動識別這種故障並重新發送消息,但這種中斷可能會造成意想不到的延遲。
復制技術特點小結
下表總結了每種復制技術的特點。 (責任編輯:盧兆林)