1.概述
- 1.1 什么是DataX
DataX 是阿里巴巴开源的一个易购数据源离线同步工具,致力于实现包括关系型数据库,HDFS,ODFS,HBASE,FTP等各种异构数据源之间稳定高效的数据同步功能。
- 1.2 DataX的设计
为了解决异构数据源同步问题,DataX将复杂的网状的同步连变成了星型数据链路,DataX作为中间传输载体,负责链接各种数据源。
DataX框架
- Reader:负责采集数据,将数据发送给FrameWork
- Writer:数据写入模块,负责不断向FrameWork取数据,并将数据写入到目的终端
- FrameWork:连接上两段,作为数据通道,并处理缓冲,流控,并发,数据转换等核心技术问题
运行原理
- job:单个作业的管理节点,负责数据清洗,子任务划分,TaskGroup监控管理
- Task:由Job切分而来,是DataX作业的最小单元,每个Task负责一部分数据的同步工作
- Schedule:将Task组成TaskGroup,单个TaskGroup的并发数量为5
DataX装机
- 安装环境:
- jdk:1.8
- linux
- python
- 注意:最新版linux安装的默认是python3,但是datax的脚本是python2,所以需要重新安装一下python2
sudo apt install python2
- 下载页面:下载
- 官方文档:官方文档
安装步骤如下
# 上传
scp datax.tar.gz root@IP:~/
# 解压
tar -zxvf **.tar.gz -C /usr/local/
# 试运行
cd /user/local/datax/
./bin/datax.py job/job.json
这里会报错,需要调整一下
datax.py
的执行脚本,改为python2执行
安装成功,该脚本会产出很多输出,末尾显示
任务启动时刻 : 2020-11-23 14:39:00
任务结束时刻 : 2020-11-23 14:39:10
任务总计耗时 : 10s
任务平均流量 : 253.91KB/s
记录写入速度 : 10000rec/s
读出记录总数 : 100000
读写失败总数 : 0