DataX:异构数据源离线同步工具

DataX:异构数据源离线同步工具

DataX实现了包括关系型数据库(MySQL、Oracle等)、HDFS、Hive、ODPS、HBase、FTP等各种异构数据源之间稳定高效的数据同步功能。

类型 数据源 Reader(读) Writer(写)
RDBMS 关系型数据库 MySQL
Oracle
OceanBase
SQLServer
PostgreSQL
DRDS
通用RDBMS
阿里云数仓数据存储 ODPS
ADS
OSS
OCS
NoSQL数据存储 OTS
Hbase0.94
Hbase1.1
Phoenix4.x
Phoenix5.x
MongoDB
Hive
Cassandra
无结构化数据存储 TxtFile
FTP
HDFS
Elasticsearch
时间序列数据库 OpenTSDB
TSDB

框架原理

  • DataX设计理念:将复杂的网状的同步链路变成了星型数据链路,DataX作为中间传输载体负责连接各种数据源。当需要接入一个新的数据源的时候,只需要将此数据源对接到DataX,便能跟已有的数据源做到无缝数据同步。

    DataX:异构数据源离线同步工具

  • 框架设计:DataX本身作为离线数据同步框架,采用Framework + plugin架构构建。将数据源读取和写入抽象成为Reader/Writer插件,纳入到整个同步框架中。

    DataX:异构数据源离线同步工具

  • DataX运行流程

    DataX:异构数据源离线同步工具

DataX与Sqoop对比

功能 DataX Sqoop
运行模式 单进程多线程 MR
分布式 不支持,可以通过调度系统规避 支持
流控 有流控功能 需要定制
统计信息 已有一些统计,上报需定制 没有,分布式的数据收集不方便
数据校验 在core部分有校验功能 没有,分布式的数据收集不方便
监控 需要定制 需要定制

DataX安装部署

  • 下载DataX

  • 解压缩到指定路径

     tar -zxvf datax.tar.gz -C /opt/module/
    
  • 测试

    python /opt/module/datax/bin/datax.py /opt/module/datax/job/job.json
    

具体使用可查看DataX官方GitHub

上一篇:DataX介绍


下一篇:【DataX】 DataX3.0 学习(一)