开源数据同步工具——datax

开源数据同步工具——datax

DataX 是阿里巴巴集团内被广泛使用的离线数据同步工具/平台,实现包括 MySQL、Oracle、SqlServer、Postgre、HDFS、Hive、ADS、HBase、TableStore(OTS)、MaxCompute(ODPS)、DRDS 等各种异构数据源之间高效的数据同步功能。

github地址:https://github.com/alibaba/DataX

支持的数据存储

类型 数据源 Reader(读) Writer(写) 文档
RDBMS 关系型数据库 MySQL √ √ 读 、写
Oracle √ √ 读 、写
SQLServer √ √ 读 、写
PostgreSQL √ √ 读 、写
DRDS √ √ 读 、写
通用RDBMS(支持所有关系型数据库) √ √ 读 、写
阿里云数仓数据存储 ODPS √ √ 读 、写
ADS √ 写
OSS √ √ 读 、写
OCS √ √ 读 、写
NoSQL数据存储 OTS √ √ 读 、写
Hbase0.94 √ √ 读 、写
Hbase1.1 √ √ 读 、写
Phoenix4.x √ √ 读 、写
MongoDB √ √ 读 、写
Hive √ √ 读 、写
无结构化数据存储 TxtFile √ √ 读 、写
FTP √ √ 读 、写
HDFS √ √ 读 、写
Elasticsearch √ 写

环境依赖

  • JDK(1.6以上,推荐1.6) 教程

  • Python(推荐Python2.6.x) 教程

  • datax 下载地址

  • 脚本文件:run.bat ,内容如下:


cd E:\Application\datax #进入  datax  目录

python2 bin\datax.py -p "-Dtable=TableName" job\myjob.json

  • 任务文件:job/job.json ,内容如下:

{

    "job": {

        "setting": {

            "speed": {

                "byte": 10485760

            },

            "errorLimit": {

                "record": 0,

                "percentage": 0.02

            }

        },

        "content": [{

            "reader": {

                "name": "sqlserverreader",

                "parameter": {

                    "username": "sa",//源数据库用户名

                    "password": "123456",//源数据库密码

                    "column": ["*"],

                    "connection": [{

                        "table": ["$table"],

                        "jdbcUrl": ["jdbc:sqlserver://10.1.1.1:1433;DatabaseName=dbname"]//源数据库ip、port、库名

                    }]

                }

            },

            "writer": {

                "name": "sqlserverwriter",

                "parameter": {

                    "username": "sa",//目的数据库用户名

                    "password": "123456",//目的数据库密码

                    "column": ["*"],

                    "preSql": [

                                  "  truncate table @table "

                    ],

                    "postSql": ["],

                    "connection": [{

                        "table": ["$table"],

                        "jdbcUrl": "jdbc:sqlserver://10.1.1.1:1433;DatabaseName=dbname"

                    }]//目的数据库 ip、port、库名

                }

            }

        }]

    }

}

目录结构


datax

├──run.bat 

│

├──job

│  ├──job.json

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容