etl 增量對比解決方案 etl-engine 如何實現增量對比
什麼是增量對比
-
增量是相對於全量來說的,它們都是處於“同步資料”這個場景中。
全量同步實現的邏輯是不管原表與目標表資料是否發生過變數,都要定期將原表資料全部覆蓋到目標表,以保證目標表資料的完整性。 -
增量對比實現的邏輯是將原表與目標表的資料透過演算法進行對比,然後只將差異資料(增加、刪除、修改)同步到目標表,在最小化操作目標表的同時還保證了目標表資料的完整性。
增量對比的必要性
模擬一個使用場景,業務系統A表中的資料要同步到資料倉儲B表中(最簡單的樣例是A表與B表結構完全一樣),
-
全量同步實現方式:
把A表資料全部同步到B表中,目的是讓兩表資料始終保持一致,這種方式一般都是採用簡單粗暴的方式來實現,實現起來就是先刪除B表資料,然後再將A表資料全部插入到B表,
-
優點是操作簡單,缺點就是資料量大時(假設A表有1億條記錄,其中只有一條記錄發生變化),也要先刪除B表中的1億條記錄,然後再將A表中的1億條記錄插入到B表中 ,很顯然全量同步方式已經不適合了。
增量對比實現方式:
1、選擇出A表與B表中業務屬性相同的欄位作為對比的主鍵;
2、根據主鍵進行兩表的對比,如果主鍵不同,證明A表中有資料刪除或新增;
3、如果主鍵相同,再對比其它欄位,如果其它欄位都相同證明資料未發生變化,否則A表中有資料做了修改。
4、將差異資料同步到B表中。
優點是隻將差異化資料同步到B表中,缺點是要事先按條件進行篩選對比的記錄集(事先做好充分的業務分析),否則要對比的資料量過大會佔用大量記憶體進行運算,並且等待對比結果的時間也很長(對比時間的長短取決於對比資料量的大小)。
etl-engine增量對比節點
etl-engine 提供的增量對比節點實現了上述增量演算法,只需要按配置要求進行相關配置,很容易實現增量對比效果並直接將差異資料入庫到目標表(或轉存差異資料),提高了開發人員及實施人員的工作效率。
增量對比場景1
增量對比場景2
參考資料
[免費下載]() [etl-engine使用手冊]() [etl-crontab使用手冊](/wiki/etl-crontab%E8%B0%83%E5%BA%A6) [嵌入指令碼開發](/wiki/%E5%B5%8C%E5%85%A5%E8%84%9A%E6%9C%AC%E5%BC%80%E5%8F%91) [etl-engine配置樣例](/wiki/etl-engine%E4%BD%BF%E7%94%A8%E6%A0%B7%E4%BE%8B)
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/70024931/viewspace-2939836/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 現代ETL工具與傳統解決方案清單附對比
- Lora通訊解決方案對比
- ETL工具與指令碼實現之間的對比指令碼
- ETL 是什麼 ETL 工具有哪些 ETL 工具對比 engine
- RestCloud ETL實踐之無標識位實現增量資料同步RESTCloud
- 國產ETL工具 etl-engine
- 透過innobackupex實現對MySQL的增量備份與還原MySql
- 單例模式實現對比單例模式
- Restcloud ETl資料通過時間戳實現增量資料同步RESTCloud時間戳
- Memcached 與 Redis 實現的對比Redis
- memcached與redis實現的對比Redis
- SPA 的 SEO 方案對比、最終實踐
- ETL資料整合工具DataX、Kettle、ETLCloud特點對比Cloud
- 億級流量架構之分散式事務解決方案對比架構分散式
- Flink增量快照的實現
- 對於增量檢查點工作原理的理解
- 【js】版本號對比處理方案JS
- oracle同步軟體技術實現對比Oracle
- kettle 實現mysql單表增量同步MySql
- matlab實現 線性拉伸某灰度影像的對比度 程式碼 對比度拉伸Matlab
- ETL通用解決方案---oracle+儲存過程 實現Oracle儲存過程
- ETL常用的三種工具介紹及對比Datastage、Informatica、KettleASTORM
- map 對比
- MYSQL如何比對版本號字串MySql字串
- Redux 非同步資料流方案對比Redux非同步
- Python實現簡單的excel對比工具PythonExcel
- redux, koa, express 中介軟體實現對比解析ReduxExpress
- js拖動實現左右圖片對比效果JS
- linux下如何增量增量傳輸mysql binlog日誌LinuxMySql
- 如何實現混合 App Web 資源的打包與增量更新APPWeb
- ETL介紹與ETL工具比較
- MySQL如何髮型不亂的應對半年數十TB資料增量MySql
- 資料倉儲系列之ETL中常見的增量抽取方式
- 響應式佈局的常用解決方案對比(媒體查詢、百分比、rem和vw/vh)REM
- win10怎麼調對比度_windows10如何調整對比度Win10Windows
- Oracle和MySQL的高可用方案對比(一)OracleMySql
- Oracle和MySQL的高可用方案對比(二)OracleMySql
- ETL和EAI比較AI