歡迎參與討論乙個分布式資料同步的問題

2022-02-14 04:44:20 字數 583 閱讀 7649

還不單單是個資料庫的問題,還有檔案同步的問題。

背景是:乙個分布式系統中,乙個主站和多個子站,現在要把子站的資料同步到主站中,子站的資料報括資料庫記錄和大量的檔案。

主站和子站都存在2個表a和表b,a和b是一對多的關係。

現在出現的問題是:由於該系統設計當初設計時未考慮到分布式設計,所以對於子站的編碼也沒做出規定,所以存在子站的資料id和主站的資料id相同的情況。

如果現在主站沒有子站的資料,這樣我們通過遍歷子站匯出的資料,就可以方便的把子站的資料插入到主站中,

但是如果子站對資料進行的編輯,這樣主站的資料就沒法更新。比如子站刪除了b表中的一條資料,而這條資料曾經被匯入到主站中,現在主要無法判斷.因為我們是這樣操作的,從子站中遍歷每一條資料,如果主站沒有,則插入.

目前我們系統中,由於先前沒有考慮為分布式系統,所以好多表中,都沒有為記錄新增裝置標識id。

我的思路如下:

在主站和子站資料庫中,新增乙個記錄的id,為唯一標識的id,和子站的編碼。子站中新增log表,記錄每個表中資料新增、刪除、更新情況,這樣每次資料同步只需要從log表中匯出即可。這樣我們就會很方便的實現增量匯出。

不知道這樣思考有沒問題?

ORACLE分布式資料同步

b 1.dblink b url url b 2.copy from b url b 3.快照 b 先在源庫見快照日誌,再在目標庫建立快照,可以將這些快照放到乙個組中,重新整理可以一起重新整理。b 4.trigger b b 5.ogg,高階複製 流複製 物化檢視 b 用advanced repli...

編寫乙個redis分布式鎖

分布式鎖 無論集群伺服器有多少臺,使用了該分布式鎖之後都可以統一的對某乙個資源進行鎖定 某個使用者加鎖之後只有他將分布式鎖釋放了才能讓其它的人操作資源。redis分布式鎖 根據redis中的乙個key的是否存在來實現的 如果key不存在則說明沒有人加鎖,所以建立key成功表示鎖獲取到了 如果key存...

設計乙個分布式RPC框架

提前先祝大家春節快樂!好了,先簡單聊聊。我從事的是大資料開發相關的工作,主要負責的是大資料計算這塊的內容。最近hive集群跑任務總是會出現thrift連線hs2相關問題,研究了解了下內部原理,突然來了興趣,就想著自己也實現乙個rpc框架,這樣可以讓自己在設計與實現rpc框架過程中,也能從中了解和解決...