Datax使用說明


一、dataX概覽

1.1 DataX

DataX 是阿里巴巴集團內被廣泛使用的離線數據同步工具/平台,實現包括 MySQLSQL ServerOraclePostgreSQLHDFSHiveHBaseOTSODPS 等各種異構數據源之間高效的數據同步功能。

 

經過測試,對43萬條事項數據,datax交換用時1分鍾,原kettle用時740秒,快了7倍多,可針對有特殊要求的項目客戶短期內強制要求采用此種方案解決問題。

 

1.2 Features

DataX本身作為數據同步框架,將不同數據源的同步抽象為從源頭數據源讀取數據的Reader插件,以及向目標端寫入數據的Writer插件,理論上DataX框架可以支持任意數據源類型的數據同步工作。同時DataX插件體系作為一套生態系統, 每接入一套新數據源該新加入的數據源即可實現和現有的數據源互通。

 

1.3 System Requirements

Windows

JDK(1.8以上,推薦1.8)

Python(推薦Python2.6.X)

其中pythonwindins版本安裝可以

以下為在 Window 平台上安裝 Python 的簡單步驟: 

打開 WEB 瀏覽器訪問https://www.python.org/downloads/windows/ 

 

在下載列表中選擇Window平台安裝包,包格式為:python-XYZ.msi 文件 , XYZ 為你要安裝的版本號。

要使用安裝程序 python-XYZ.msi, Windows 系統必須支持 Microsoft Installer 2.0 搭配使用。只要保存安裝文件到本地計算機,然后運行它,看看你的機器支持 MSIWindows XP 和更高版本已經有 MSI,很多老機器也可以安裝 MSI

 

 

 

下載后,雙擊下載包,進入 Python 安裝向導,安裝非常簡單,你只需要使用默認的設置一直點擊"下一步"直到安裝完成即可。

然后類似jdk一樣,配置環境變量,doc下面執行python查看

 

 

1.4 工具部署

 

與目前公司交換使用較多的kettle,我們推薦使用windows操作系統

 

步驟一、直接下載DataX工具包:DataX下載地址 https://github.com/alibaba/DataX.git

下載后解壓至本地某個目錄:

 

 

 

 

步驟二、進入Job目錄,可以存放數據交換配置的json文件,例如mysql >mysql

配置參考mysql2mysql.json文件:

{

    "job": {

        "content": [

            {

                  "reader": {

                    "name": "mysqlreader",

                    "parameter": {

                        "column": ["*"],

                        "connection": [

                            {

                                "jdbcUrl": ["jdbc:mysql://172.168.251.43:3306/zfsoft_gov_sxservice_std_v3_0_xn"],

                                "table": ["t_sx_service"]

                            }

                        ],

                        "password": "*****",

                        "username": "root",

                        

                    }

                },

                "writer": {

                    "name": "mysqlwriter",

                    "parameter": {

                           "column": ["*"],

                        "connection": [

                            {

"jdbcUrl": "jdbc:mysql://127.0.0.1:3306/back",

                                "table": ["t_sx_service"]

                                

                                

                            }

                        ],

                        "password": "*****",

                        "username": "root",

                    }

                }

            }

        ],

        "setting": {

            "speed": {

                "channel": 1

            }

        }

    }

}

 

 

 

 

 

步驟三、通過bin目錄下datax.py來啟動配置交換,如cmd 命令下進入datax目錄,通過bin\datax.py job\mysql2mysql.json 來執行

  

同步結束,顯示日志如下:

 

...

2015-12-17 11:20:25.263 [job-0] INFO  JobContainer -

任務啟動時刻                    : 2020-5-26 11:20:15

任務結束時刻                    : 2020-5-26 11:20:25

任務總計耗時                    :                 10s

任務平均流量                    :              205B/s

記錄寫入速度                    :              5rec/s

讀出記錄總數                    :                  50

讀寫失敗總數                    :                   0

 

 

這是一個簡單的應用,大家可以通過datax github地址進行學習https://github.com/alibaba/DataX 進行相關的學習


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM