通過時間戳來同步資料,資料源在另外一個業務部門,他們提供了資料介面,在同步的程序中,發現資料總是不一致,經過排查,問題來資料源:
1.資料源修改了表結構,導致同步失敗;
2.資料源做物理洗掉,資料洗掉無法實作同步,導致我們這邊資料增多。
目前只能通過與資料源溝通,保證他們遵守同步的規則,但是,總是有這樣的風險:他們突然又修改了,不及時通知我們。
面對這樣的同步難題,有沒有技術上的好辦法?
uj5u.com熱心網友回復:
用OGG同步吧,oracle goldengateuj5u.com熱心網友回復:
這個要看你們的同步方式是什么。不然,沒有辦法幫你分析問題。
uj5u.com熱心網友回復:
同步方法是掃描時間戳,按照時間來觸動同步。現在主要問題是 資料源那邊總是人為改變表結構,這對我們來說是不可意料的,他們也沒有及時通知我們。
uj5u.com熱心網友回復:
掃描時間戳,這個方法也是常用的,就怕他們洗掉欄位,那你們的查詢陳述句,就要報錯了。如果他們修改了表結構,你們取到資料以后,你們的系統也要發生變化的。不通知你們,屬于管理問題。

uj5u.com熱心網友回復:
這取決于同步的方式,時間戳的方式的確會存在洗掉資料無法同步的問題。可以考慮利用觸發器,把洗掉記錄復制到另外一張表,然后利用這張表做洗掉資料的同步。
uj5u.com熱心網友回復:
有沒有其他的技術方案,解決這樣由于 管理問題引起的問題?uj5u.com熱心網友回復:
源端不配合,怎么都弄不好的……
uj5u.com熱心網友回復:
資料源修改了表結構,導致同步失敗的問題可以通過etl工具來解決,比如data service,將源表資料同步到目標表,如果源表的表結構發生變化,etl程序中會自動轉換欄位型別與目標表的欄位型別進行匹配;源做物理洗掉的問題可以通過data service與資料庫的cdc功能一起來解決,具體如下:在源表與目標表之間建一個中間表,源表的資料通過表比較的方式抽入到中間表,對中間表通過cdc進行跟蹤,跟蹤結果寫入目標表
uj5u.com熱心網友回復:
那兩邊資料條目相差幾百條是什么問題啊……轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/281494.html
標籤:基礎和管理
下一篇:PB2019 64位ODBC