DataX基礎與安裝
第1章 概述
1.1 什麼是DataX
DataX 是阿里巴巴開源的一個異構資料來源離線同步工具,致力於實現包括關係型資料庫(MySQL、Oracle等)、HDFS、Hive、ODPS、HBase、FTP等各種異構資料來源之間穩定高效的資料同步功能。
1.2 DataX的設計
為了解決異構資料來源同步問題,DataX將複雜的網狀的同步鏈路變成了星型資料鏈路,DataX作為中間傳輸載體負責連線各種資料來源。當需要接入一個新的資料來源的時候,只需要將此資料來源對接到DataX,便能跟已有的資料來源做到無縫資料同步。
1.3 框架設計
Reader:資料採集模組,負責採集資料來源的資料,將資料傳送給
Writer:資料寫入模組,負責不斷向Framework取資料,並將資料寫入到目的端。
Framework:用於連線reader和writer,作為兩者的資料傳輸通道,並處理緩衝,
流控,併發,資料轉換等核心技術問題。
1.4 執行原理
Job:單個作業的管理節點,負責資料清理、子任務劃分、TaskGroup監控管理。
Task:由Job切分而來,是DataX作業的最小單元,每個Task負責一部分資料的同步工作。
Schedule:將Task組成TaskGroup,單個TaskGroup的併發數量為5。
TaskGroup:負責啟動Task。
第2章 快速入門
2.1 官方地址
下載地址:http://datax-opensource.oss-cn-hangzhou.aliyuncs.com/datax.tar.gz
原始碼地址:https://github.com/alibaba/DataX
2.2 前置要求
- Linux
- JDK(1.8以上,推薦1.8)
- Python(推薦Python2.6.X)
2.3 安裝
1)將下載好的datax.tar.gz上傳到hadoop102的/opt/software
[jason@hadoop102 software]$ ls datax.tar.gz
2)解壓datax.tar.gz到/opt/module
[jason@hadoop102 software]$ tar-zxvf datax.tar.gz -C /opt/module/
3)執行自檢指令碼
[jason@hadoop102 bin]$ cd /opt/module/datax/bin/
[jason@hadoop102 bin]$ python datax.py /opt/module/datax/job/job.json