南大通用GBase XDM複製功能的詳解(1)

樸所羅門發表於2020-10-13

關於GBase XDM複製功能的詳解(1)

 

南大通用公司資料庫產品GBase XDM是自主開發的一款記憶體級的物件資料庫,其複製功能可實現資料的實時/定時資料同步。保證在一個分散式的環境中, 主伺服器的資料和從伺服器的資料保持一致。

 

既然是複製,我們就要談一下角色。在複製的環境中設計到以下角色:

   主資料庫:主資料庫的資料能夠進行讀寫的操作。主資料庫可處理從資料庫客戶機發出的更新請求。

   從資料庫:包含主資料庫所含資訊副本資料庫。從資料庫可處理來自客戶機的搜尋請求。

   中間資料庫:中間伺服器資料庫接收來自主資料庫的修改,並把變化傳送到從資料庫。

 

GBase XDM  資料庫有三種複製的方式,分別是推拉複製、主從複製、和映象複製。

這次我們先介紹推拉複製。          

推拉複製是由資料使用方在本地維護資訊資料片段的映象複製。是透過服務程式來實現的。可以週期性地獲取資料提供方的資料更新。它以維護和交換cookie的方式,保持對複製內容狀態的跟蹤。因為使用者和提供者維護各自資料內容的狀態,使用者可以透過向提供者查詢所需要的條目來進行增量的同步。

在拉模式同步模式中,提供者使用基於拉的同步機制,提供者不需要跟蹤使用者,也不需維護歷史資訊。提供者用來處理週期性檢測請求的資訊包含在請求的同步cookie中。在推拉同步模式中,提供者使用基於推的同步機制,提供者保持跟蹤使用者,使用者請求了持久的查詢,提供者在複製內容改變時傳送給使用者必需的更新。

 

舉個例子:

1)  從資料庫傳送請求,進行資料同步初始化,此時無須傳送同步cookie;

2)  主資料庫接收從資料庫請求,將初始資料及表示當前狀態cookie返回給從資料庫;

3)  從資料庫接收主資料庫資料,更新本地資料,並儲存cookie,cookie中的主要內容項有環境CSN,用該項來表示同步狀態;

4)  此時應用系統對主資料庫進行了操作;

5)  主資料庫將資料儲存,並更新相應的CSN,包括條目的CSN及環境CSN;

6)  當從資料庫同步週期到時,從將向主傳送同步變更資料請求,該請求包含了上次同步後獲得的環境CSN;

7)  主資料庫接收到從資料庫的請求後,將所有條目CSN大於從資料庫發過來的環境CSN的所有條目及新的環境CSN傳送給從資料庫;

8)  從資料庫接收主資料庫資料,據新變化更新本地資料,同時更新本地cookie,以便下次使用。如此迴圈往復,實現主資料庫和從資料庫之間的資料同步。


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69978212/viewspace-2726544/,如需轉載,請註明出處,否則將追究法律責任。

相關文章