天天看點

沃信科技ERP系統容災方案的伺服器與資料庫容災

Web伺服器和應用伺服器的容災主要有兩種技術,一種是高可用叢集(High

Availability Cluster),另一種是負載均衡叢集(Load

Balance Cluster),下面分别予以介紹。

l  高可用叢集

沃信科技ERP系統容災方案的伺服器與資料庫容災

高可用叢集的基本方式是為每個伺服器設定一個備份伺服器,備份伺服器可以使本地的,也可以是遠端的,兩台伺服器通過心跳(HeartBeat)機制連接配接,備份伺服器可通過該機制監控主伺服器狀态,一旦發現主伺服器不能正常工作,則由備份伺服器接替出現問題的主伺服器。

為了提高備份伺服器的利用效率,可以在備份伺服器上部署其他應用,兼做備份伺服器,或者配置成兩台伺服器互為備份,如A伺服器是應用a的主伺服器,是應用b的備份伺服器,B伺服器是應用a的備份伺服器,是應用b的主伺服器。

l  負載均衡叢集

如果需要的Web伺服器或應用伺服器比較多,可以采用負載均衡叢集,使用負載均衡器連接配接同類伺服器(如Web伺服器),由負載均衡器自動平衡各Web伺服器的負載,一旦某台伺服器出現故障,負載均衡器自動将該伺服器的負載均勻分布到剩下的正常伺服器上,進而避免單點故障,獲得更高的可用性。

沃信科技ERP系統容災方案的伺服器與資料庫容災

 沃信科技資料庫容災

前面已經分析過,對于資料庫中資料的容災,有多種技術,包括最基礎的錄音帶冷備份方式,到磁盤複制、存儲網絡複制、主機邏輯卷複制、資料庫級複制等多種聯機資料複制方式,但是為了保證業務資料的完整性、一緻性和備份系統的可用性,還是資料庫級複制方式更好。

沃信的資料庫容災方案是基于自有産品的資料庫容災方案,包括資料遷移、資料同步兩大主要功能,在此過程中還可以進行資料驗證,保證遷移和同步的資料品質。下面分别予以介紹。

沃信科技資料遷移

沃信科技ERP系統容災方案的伺服器與資料庫容災

資料庫容災的第一步是将源資料庫在某個時間點的初始資料先遷移到目标資料庫中,再通過資料同步工具,将源資料庫該時間點後發生的事務同步到目标資料庫中,這個步驟是通過分析源資料庫的事務日志(Redo

Log)來實作的,從Redo Log中分析出交易定義和SQL語句,在目标資料庫中重做該SQL語句,進而實作源資料庫和目标資料庫的一緻性。

資料遷移的步驟當然可以通過離線冷備份的方式在目标資料庫中恢複,但這種方式對生産系統影響較大。沃信資料遷移工具允許在不停機的條件下進行初始資料遷移,可以由使用者指定庫/使用者模式/表/事務進行不同粒度的資料遷移,避免傳輸不需要的資料,降低帶寬占用,提高傳輸效率。

在傳輸過程中支援斷點續傳,如果網絡中斷,遷移工具會記錄斷點,網絡恢複後會從斷點處繼續傳輸。

在資料庫同步過程中,大對象的更改可能是不記錄日志的,還有Sequence等緩存在記憶體中的資料是不能通過資料庫同步工具準确同步的,沃信的資料遷移工具也可以處理這些資料,将這些資料準确遷移到備份資料庫中。

沃信資料遷移工具的效率非常高,采用了資料庫底層的批量資料移動技術,比普通SQL語句載入效率有大幅度的提升。

1.1.1.2  沃信科技資料同步

沃信科技ERP系統容災方案的伺服器與資料庫容災

沃信資料同步工具不需要在生産系統和備份系統上安裝任何程式,隻需要一個具有操作相應資料權限的資料庫連接配接即可。

沃信資料同步工具的抽取元件從源資料庫的聯機日志(Online Log)和歸檔日志(Archive

Log)中捕獲資料庫日志(Redo Log)記錄,再通過分析元件對擷取的Redo

Log進行分析,擷取完整的交易記錄和針對每個資料庫表操作的SQL語句,然後通過裝載元件在目标資料庫中執行該SQL語句,同步資料庫變更。

該方案同步的實際上市資料庫的變化,傳輸的資料是Redo Log的一部分,是以傳輸資料量小,占用帶寬少,與基于存儲複制和主機邏輯卷複制的技術相比,沃信方案主要優勢如下:

ü  保證備份資料庫一直可用

ü  保證兩端資料庫事務的一緻性

ü  異構支援,不需要兩端主機、存儲同構,也不需要資料庫版本一緻

ü  支援多種資料複制方式,如資料集中、分發、多層複制等

ü  不會降低生産系統可用性,并且可以提供網絡失敗、資料庫失敗、主機失敗、容災系統本身失敗的容錯能力

ü  傳輸資料量小,占用帶寬少

與同類技術比,沃信技術主要優勢如下:

ü  不在生産系統和備份系統安裝任何軟體,降低對生産系統的影響

ü  支援不停機資料遷移

ü  強容錯能力:抽取元件、分析元件和裝載元件均支援重入,類似于斷點續傳,避免重做已完成的工作

ü  對出錯表,可跳過,避免影響整體進度,并可針對單表進行資料遷移,遷移完成後繼續同步,避免因單表故障導緻重新初始化(資料遷移)

ü  自身具有資料總線,不依賴通訊隊列緩存資料,避免故障時因隊列滿導緻的資料丢失。