1 Python安装
DataX 主要由Java和python开发,所以需要确保服务器上安装有Java>=1.6,python>=2.6 由于linux os本身自带的python 版本比较低,需要安装一个新版本的python.
1.1 下载python2.6.9版本
本次安装将python安装包放在服务器 /opt/ 路径下,视环境而定。
1.2 解压python命令
Putty工具连接到服务器,切换至/opt 目录下,执行以下命令:
tar xzf Python-2.6.9.tgz cd Python-2.6.9
1.3 编译安装python命令
本示例python文件解压缩后的路径是 /opt/python2.6.9 仅供参考
Putty工具连接到服务器,切换至/opt/python2.6.9 目录下,执行以下命令安装 ./configure --prefix=/opt/python2.6.9 make && make install
1.4 创建一个python2.6的连接
ln -sf /opt/python2.6.9/bin/python2.6 /usr/bin/python2.6
2 DataX安装
2.1 方式一:下载DataX源码,自己编译:
源码地址:https://github.com/alibaba/DataX
Maven构建
$ cd {DataX_source_code_home}
$ mvn -U clean package assembly:assembly -Dmaven.test.skip=true
第 1 页
打包成功后的DataX包位于 {DataX_source_code_home}/target/datax/datax/ ,结构如下:
$ cd {DataX_source_code_home} $ ls ./target/datax/datax/
bin conf job lib log log_perf plugin script tmp
将target/datax 下的 datax 目录放到服务器上
2.2 方式二:直接下载DataX工具包
工具包:datax.tar.gz 753M大小
下载后解压至服务器某个目录,修改权限为755,进入bin目录,即可运行样例同步作业
以下分别是解压缩,赋权限,及运行样例同步作业命令
$ tar zxvf datax.tar.gz
$ sudo chmod -R 755 {YOUR_DATAX_HOME} $ cd {YOUR_DATAX_HOME}/bin
$ python datax.py ../job/job.json
192.168.31.100服务器上DataX目录:opt/datax
3 DataX其他软件要求
如果要使用Oracle,请确保已经安装oracle客户端
如果使用HDFS,需要确保hadoop命令行可用;同时请确保在执行DataX的用户/home目录下,链接Hadoop config目录文件,在用户目录下执行: ln -s /home/$user/config hadoop-configure-目录
第 2 页
4 DataX概述
DataX是一个在异构的数据库/文件系统之间高速交换数据的工具,实现了在任意的数据处理系统(RDBMS/Hdfs/Local filesystem)之间的数据交换,由淘宝数据平台部门完成。
DataX插件分为Reader和Writer两类。Reader负责从数据源端读取数据到Storage(交换空间),Writer负责将Storage中的数据写入到数据目的端。Storage可以适配不同种类的Reader和Writer,从而实现数据同步.
目前DataX版本已经提供的Reader插件如下: 1、 hdfsreader : 支持从hdfs文件系统获取数据。 2、mysqlreader: 支持从mysql数据库获取数据。 3、 sqlserverreader: 支持从sqlserver数据库获取数据。 4、 oraclereader : 支持从oracle数据库获取数据。
5、 streamreader: 支持从stream流获取数据(常用于测试) 6、httpreader : 支持从http URL获取数据。
提供的Writer插件如下:
1、 hdfswriter :支持向hdbf写入数据。 2、 mysqlwriter :支持向mysql写入数据。 3、 sqlserverwriter:支持向sqlserver写入数据。 4、 oraclewriter :支持向oracle写入数据。
5、 streamwriter :支持向stream流写入数据。(常用于测试)
DataX 3.0每一种读插件都有一种或多种切分策略,都能将作业合理切分成多个Task并行执行,单机多线程执行模型可以让DataX速度随并发成线性增长。
在源端和目的端性能都足够的情况下,单个作业一定可以打满网卡。
5 DataX使用实例(Json操作)
5.1 Oracle-to-Txtfile
从oracle数据库查询然后导出到本地文件 { \\
第 3 页
{ \\\\\\\ { \\ from sys_user\ ], \\ ] } ] } }, \\\\\\\ } } } ], \\\ } } } }
第 4 页
writeMode:truncate
把oracle-to-txtfile.json放在 datax/job路径下
然后命令:python /opt/datax/bin/datax.py /opt/datax/job/oracle-to-txtfile.json
执行完毕显示:
5.2 Oracle-to-Oracle
从oracle数据库查询然后导出到另一个oracle数据库 { \\ { \\\\\\\ { \\ ], \\
第 5 页
百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说教育文库DataX安装及实例在线全文阅读。
相关推荐: