异构数据迁移工具:DataX、DataX-Web
一、简介
1. DataX 核心特性
DataX 是阿里开源的基础数据迁移引擎(纯命令行工具),核心功能是跨数据源同步数据。
- 架构:通过'Reader(读数据插件)+ Writer(写数据插件)'实现跨数据源(MySQL、Oracle、HDFS 等)数据搬运;
- 局限性:本身不自带分表规则逻辑,需配合脚本预处理或自定义插件实现按分表规则拆分数据;
- 优势:轻量、开源免费、跨数据源兼容性强,适合中小规模数据迁移。
2. DataX-Web 核心作用
DataX-Web 是 DataX 的可视化调度管理工具。
- 核心功能:可视化配置迁移任务、定时调度(如每日增量同步)、迁移进度监控、日志查询与异常告警;
- 依赖关系:必须与 DataX 引擎配合使用(部署时需关联 DataX 安装路径,无法独立工作);
- 优势:降低操作门槛,支持多任务管理,适合非技术人员或批量任务场景。
二、DataX 安装
1. 下载
可从官方仓库获取源码:
- GitHub: https://github.com/alibaba/DataX
2. Python 环境配置
注意:部分版本仅支持 Python 2.x,若环境为 Python 3 以上,需下载对应的 Python 3 脚本文件替换 datax 文件夹中 bin 目录下的默认脚本。
3. 测试安装
在 bin 目录下执行以下命令验证安装:
python datax.py -r streamreader -w streamwriter
4. 简单入门测试(MySQL 案例)
参考官方提供的 JSON 脚本格式。示例:将同一库下的 users 表数据写入 users_0 表(命名为 job001.json)。
{
"job": {
"setting": {"speed": {"channel": 2}, "errorLimit": {"record": 5, "percentage": 0.03


