Datax
架构
架构图
DataX 作为离线数据同步框架,采用 Framework + Plugin 模式构建。 将数据源读取和写入抽象为 Reader/Writer 插件。 Reader: 作为数据采集模块,负责采集数据源的数据,将数据发送给 Framework。 Writer: 作为数据写入模块,负责不断向 Framework 获取数据,并将数据写入到目的端。 Framework: 用于连接 Reader 和 Writer,作为两者的数据传输通道,并处理缓冲、流控、并发、数据转换等核心技术问题。支持的数据源
Datax 安装
拖进放置的目录,tar解压即可
Datax 入门案例
目标:
实现将 oracle 中的 emp 表抽取到 MySQL 数据库中
步骤1:
使用datax 来生成 模板
python /opt/soft/datax/bin/datax.py -r mysqlreader -w txtfilewriter > 模板文件名.json步骤2:
对生成的模板填空
注意:填写值得时候,必须使用双引号包裹该值
{ "job": { "content": [ { "reader": { "name": "oraclereader", "parameter": { "column": ["*"], "connection": [ { "jdbcUrl": ["jdbc:oracle:thin:@192.168.52.132:1521:orcl"], "table": ["emp"] } ], "password": "999999", "username": "scott" } }, "writer": { "name": "mysqlwriter", "parameter": { "column": ["*"], "connection": [ { "jdbcUrl": "jdbc:mysql://192.168.1.157:3306/test", "table": ["user1"] } ], "password": "999999", "preSql": [], "session": [], "username": "root", "writeMode": "insert" } } } ], "setting": { "speed": { "channel": "1" } } } }步骤3:
运行写好得json配置文件
python /opt/soft/datax/bin/datax.py emp.json