目录

  • 1. DataX介绍
  • 2. 框架设计
  • 3. 架构

1. DataX介绍

DataX是一个各种数据源之间的离线数据同步工具


DataX的设计理念是一种星型数据链路。DataX作为中间传输载体负责连接各种数据源,通过reader从一个数据源读取数据,再通过writer将数据写入另一个数据源。这样可以以一种插件的方式拓展其它数据源

特点:

  • 支持ORC格式
  • 任务执行完,有执行统计信息
  • 在core部分有数据校验功能
  • 只能在一台服务器,以多线程的方式运行
  • 不支持分布式。但可以再多台服务器部署,对不同的数据库表进行数据同步

2. 框架设计


采用Framework + plugin架构。将数据读取和写入抽象成为Reader和Writer插件。
其中Framework用于连接reader和writer,作为两者的数据传输通道,并处理缓冲,流控,并发,数据转换等核心技术问题

3. 架构

  • Job:单个作业的管理节点,负责数据清理、子任务划分、TaskGroup监控管理
  • Task:由Job切分而来,是DataX作业的最小单元,每个Task负责一部分数据的同步工作
  • Schedule:将Task组成TaskGroup,单个TaskGroup的并发数量为5。如果总共分配10个channel,则最终会有2个TaskGroup
  • TaskGroup:负责启动Task