数据同步框架 DataX
DataX本身作为离线数据同步框架,采用 Framework+ plugin架构构建。将数据源读取和写入抽象成为Reader/ Writer插件,纳入到整个同步框架中。
Reader: Reader为数据采集模块,负责采集数据源的数据,将数据发送给 Framework。
Writer: Writer为数据写入模块,负责不断向 Framework取数据,并将数据写入到目的端。Framework: Framework用于连接 reader和 writer,作为两者的数据伎输通道,并处理缓冲,流控,并发数据转换等核心技术问题
![](https://i-blog.csdnimg.cn/direct/b0833e87a23f4873a54bd8d331595cf1.png)
安装与配置:
1.安装JDK
wget --no-check-certificate --no-cookies --header "Cookie: oraclelicense=accept-securebackup-cookie" http://download.oracle.com/otn-pub/java/jdk/8u131-b11/d54c1d3a095b4ff2b6607d096fa80163/jdk-8u131-linux-x64.rpm
2.解压JDK
rpm -ivh jdk-8u131-linux-x64.rpm
3.查看JDK版本
![](https://i-blog.csdnimg.cn/direct/de6b662c03974220908a95bc415b1492.png)
4.上传dataX文件
5.解压dataX
tar zxf datax.tar.gz -C /usr/local/
6.删除隐藏文件
rm -rf /usr/local/datax/plugin/*/._*
7.验证运行
cd /usr/local/datax/bin/
python datax.py ../job/job.json
dataX目录结构简介:
content:配置读和写插件
reader:配置迹插件
name:插件名称
parameter:插件参数
encoding:字符集编码
writer:配置写插件
setting:配置任务参数
speed:配置速度相关参数
channel:配置线程并发数
errorLimit:配置脏数据容忍度(记录数或比例
DataX配置文件——CSV
txtfilereader:
- 支持且仅支持读取TXT的文件,且要求TXT中 shema为一张二维表
- 支持类CSV格式文件,自定义分隔符。
- 支持多种类型数据读取(使用 String表示),支持列裁剪,支持列常量
- 支持递归读取、支持文件名过滤
- 支持文本压缩,现有压缩格式为zip、gzip、bzip2
- 多个File可以支持并发读取
![]()
txtfilewriter:
- 支持且仅支持写入TXT的文件,且要求TXT中 shema为一张二维表·
- 支持类CSV格式文件,自定义分隔符。
- 支持文本压缩,现有压缩格式为gzip、bzip2
- 支持多线程写入,每个线程写入不同子文件。
![]()
DataX-web部署
下载地址:
百度网盘 请输入提取码,提取码:cpsk
上传到linux上并解压
![](https://i-blog.csdnimg.cn/direct/b04469ba0f83455fa2d06892edd518f3.png)
mysql建库
![](https://i-blog.csdnimg.cn/direct/b152eee3f0114845a1de025cdab7f4f9.png)
执行一键安装脚本:
![](https://i-blog.csdnimg.cn/direct/0aae6a82479d47e6be159daeaa423356.png)
运行dataX-web:
![](https://i-blog.csdnimg.cn/direct/91d97946380541518def5ffbb7eb823b.png)
直接访问网页即可登录系统:
![](https://i-blog.csdnimg.cn/direct/b81729d258ce43b599b15543bac2fd5e.png)
账号密码为admin 123456
网页页面:
![](https://i-blog.csdnimg.cn/direct/e1e3903d713c4e21a1fd42359f98a159.png)