資料同步:當資料源發生改變時,其他相關資料也跟着發展變化。根據需求不同可采取以下方案。
1.觸發器
在資料庫建立增删改的觸發器。觸發器将變更放到一張臨時表裡。oracle同步cdc
優點:實時同步
缺點:影響到業務系統,因為需要在業務系統建立觸發器
2.日志
通過分析源資料庫日志,來獲得源資料庫中的變化的資料。oracle異步cdc
優點:不影響業務系統
缺點:有一定得延時,對于沒有提供日志分析接口的資料源,開發的難度比較大
3.時間戳
在要同步的源表裡有時間戳字段,每當資料發生變化,時間戳會記錄發生變化的時間
優點:基本不影響業務系統
缺點:要求源表必須有時間戳這一列
4.資料比較
通過比較兩邊資料源資料,來完成資料同步。一般用于實時性要求不高的場景。
缺點:效率低
5. 全表拷貝
定時清空目的資料源,将源資料源的資料全盤拷貝到目的資料源。一般用于資料量不大,實時性要求不高的場景。
優點:基本不影響業務系統,開發、部署都很簡單
總結:
1. 上面五種資料同步方式,除了第五種都需要業務表有主鍵。
2. 對于沒有觸發器和日志的一些小型資料源,如txt 文本,excel 檔案,aceess,則隻能使用後三種方式。
3. 對于大型資料源,一般優先選擇日志方式,如 orcale asynchronized cdc, 對于不能通過日志來實作的情況,可以考慮第1,3,4種方式。
轉載:http://blog.csdn.net/foreverling/article/details/10625701