前言
DataX 是一款由阿里巴巴开源的数据同步工具,旨在帮助用户实现不同数据源之间的高效数据迁移和同步。无论是从传统的关系型数据库、NoSQL 数据库,还是到大数据存储系统,DataX 都能够轻松应对各种数据同步需求。通过简单的配置和灵活的插件机制,用户可以快速构建数据同步任务,实现数据的可靠传输和处理。DataX 的设计理念注重性能和可扩展性,同时保证数据同步过程的稳定性和数据一致性。
安装部署
安装部署主要有两种方式
-
源码构建 (java环境(git jdk maven等))
# git clone 源码下载 # 或者 通过DataX项目的release 页面下载最新的源码包 https://github.com/alibaba/DataX/releases git clone [email protected]:alibaba/DataX.git # 推荐jdk版本为1.8 jdk 版本大于16 是需要改动下源码 # 将项目中的引入到Record 的类 手动添加导包路径 不然可能被识别为jdk里的Record # import com.alibaba.datax.common.element.Record; # maven构建 mvn -U clean package assembly:assembly -Dmaven.test.skip=true # 打包成功后的DataX包位于 target/datax/datax/ # {DataX_source_code_home}/target/datax/datax/ ,结构如下:
-
直接下载工具包 链接 https://datax-opensource.oss-cn-hangzhou.aliyuncs.com/202309/datax.tar.gz
第二种 下载完成需要进行解压
tar -zxvf ./datax.tar.gz
使用
使用过程也比较简单
-
编写job
# 可使用如下命令 datax会生成一个 job的json # -r 表示 reader -w 是writer # 可自行替换为自己需要的reader writer python3 ./bin/datax.py -r mysqlreader -w mysqlwriter
执行结果
DataX (DATAX-OPENSOURCE-3.0), From Alibaba ! Copyright (C) 2010-2017, Alibaba Group. All Rights Reserved. Please refer to the mysqlreader document: https://github.com/alibaba/DataX/blob/master/mysqlreader/doc/mysqlreader.md Please refer to