一、dataX简介
阿里巴巴一款异构数据源离线同步工具,可实现mysql、oracle、hdfs、hive、odps、hbase等各种异构数据源之间稳定高效的数据同步功能。
1.1 datax设计
将复杂的网状同步链路转为星型链路,data作为中间节点链接各种数据接口,方便管理与开发维护。
1.2 框架设计
类似于flume的框架设计,
reader:采集模块,包含各个数据源的读取接口
channel:中间数据缓存,并发控制、数据转换
writer:同reader
1.3 运行原理
job:管理单个作业,负责数据清理、划分子任务、taskGroup监控管理
task:datax作业的最小单元,每个task负责一部分数据同步工作
schedule:将task组成taskgroup,单个taskgroup大小为5;
taskGroup:启动管理task
2.安装与使用
2.1 下载地址
源码:https://github.com/alibaba/DataX
安装包:http://datax-opensource.oss-cn-hangzhou.aliyuncs.com/datax.tar.gz
2.2 依赖
linux
jdk 1.8以上
python 2.6.x以上
下载、解压即可使用
运行示例:
bin/datax.py job/job.json
- 打印json模板
python bin/datax.py -r mysqlreader -w hdfswriter