writer: writer為資料寫入模組,負責不斷向framework取資料,並將資料寫入到目的端。
framework:framework用於連線reader和writer,作為兩者的資料傳輸通道,並處理緩衝,流控,併發,資料轉換等核心技術問題。
資料來源reader(讀)
writer(寫)
rdbms 關係型資料庫
mysql√√
oracle√√
sqlserver√√
postgresql√√
達夢√√通用rdbms(支援所有關係型資料庫)√√
阿里雲數倉資料儲存
odps√√
ads√
oss√
√ocs√√
nosql資料儲存
ots√
√hbase0.94√√
hbase1.1√√
mongodb√√
無結構化資料儲存
txtfile√√
ftp√
√hdfs√√
dataxjob啟動後,會根據不同的源端切分策略,將job切分成多個小的task(子任務),以便於併發執行。task便是datax作業的最小單元,每乙個task都會負責一部分資料的同步工作。
切分多個task之後,datax job會呼叫scheduler模組,根據配置的併發資料量,將拆分成的task重新組合,組裝成taskgroup(任務組)。每乙個taskgroup負責以一定的併發執行完畢分配好的所有task,預設單個任務組的併發數量為5。
每乙個task都由taskgroup負責啟動,task啟動後,會固定啟動reader—>channel—>writer的執行緒來完成任務同步工作。
datax作業執行起來之後, job監控並等待多個taskgroup模組任務完成,等待所有taskgroup任務完成後job成功退出。否則,異常退出,程序退出值非0
根據20個併發,datax計算共需要分配4個taskgroup。
4個taskgroup平分切分好的100個task,每乙個taskgroup負責以5個併發共計執行25個task。
datax舊版對於部分資料型別(比如時間戳)傳輸一直存在毫秒階段等資料失真情況,新版本datax3.0已經做到支援所有的強資料型別,每一種外掛程式都有自己的資料型別轉換策略,讓資料可以完整無損的傳輸到目的端。
datax3.0執行過程中可以將作業本身狀態、資料流量、資料速度、執行進度等資訊進行全面的展示,讓使用者可以實時了解作業狀態。並可在作業執行過程中智慧型判斷源端和目的端的速度對比情況,給予使用者更多效能排查資訊。
在大量資料的傳輸過程中,必定會由於各種原因導致很多資料傳輸報錯(比如型別轉換錯誤),這種資料datax認為就是髒資料。datax目前可以實現髒資料精確過濾、識別、採集、展示,為使用者提供多種的髒資料處理模式,讓使用者準確把控資料質量大關!
豐富的資料轉換功能
"speed":
datax在執行日誌中列印了大量資訊,其中包括傳輸速度,reader、writer效能,程序cpu,jvm和gc情況等等。
開源離線同步工具 DataX3 0 介紹
一.datax3.0概覽 datax 是乙個異構資料來源離線同步工具,致力於實現包括關係型資料庫 mysql oracle等 hdfs hive odps hbase ftp等各種異構資料來源之間穩定高效的資料同步功能。設計理念 為了解決異構資料來源同步問題,datax將複雜的網狀的同步鏈路變成了星...
重磅 阿里雲文件開源
文件開源的前世今生 開源專案一直是很多開發者的寵兒。通過開源,開發者集思廣益,共同管理 分享 學習某個產品及其 通過精英式的管理方式,誕生了很多款優秀的開源軟體,長期以來在軟體市場佔據這獨特的地位。但是對於it行業,產品文件開源還是新鮮事物。不管是在傳統的通訊行業,還是在飛速發展的網際網路行業,文件...
雲無邊界,阿里雲混合雲資料同步發布
針對不同資料庫間資料實時同步難的問題,日前,阿里雲宣布推出混合雲資料同步一站式解決方案,便於廣大雲產品使用者實現實時資料同步的混合雲支援,更為方便的是,該功能讓本地oracle也能實現與雲上資料庫的實時同步。目前,很多使用者有云下或其他廠商的oracle mysql到阿里雲rds或ecs自建資料庫間...