数据交换工具DataX使用

1,下载

svn co http://code.taobao.org/p/datax

2,安装

根据服务器安装软件情况可能需要安装下面软件

yum install ant

yum install gcc-c++

yum install rpm-build


进入rpm目录编译
cd datax/trunk/rpm

rpmbuild --ba t_dp_datax_engine.spec

rpmbuild --ba  t_dp_datax_hdfsreader.spec

rpmbuild --ba  t_dp_datax_hdfswriter.spec

rpmbuild --ba  t_dp_datax_mysqlreader.spec

rpmbuild --ba  t_dp_datax_mysqlwriter.spec

如果编译过程中有错误还需要修改下源码,修改如下内容,再编译

数据交换工具DataX使用_第1张图片


成功后输出路径中有:

....

/root/rpmbuild/RPMS/noarch/t_dp_datax_mysqlreader-1.0.0-1.noarch.rpm


依次安装编译好的rpm包
....
rpm -ivh /root/rpmbuild/RPMS/noarch/t_dp_datax_mysqlreader-1.0.0-1.noarch.rpm

3,使用,安装好engine和要用到的插件后就可以使用了

例如,从hdfs->mysql

编辑datax.xml如下

<?xml version="1.0" encoding="UTF-8"?>
<jobs>
  <job id="HdfsReader_to_OracleWriter_job">
    <reader>
      <plugin>HdfsReader</plugin>
      <param key="hadoop_conf" value="/home/hadoop/conf/core-site.xml"/>
      <param key="dir" value="hdfs://namenode:9000/user/test.txt"/>
      <param key="field_split" value=","/>
      <param key="encoding" value="UTF-8"/>
      <param key="buffer_size" value="4096"/>
      <param key="nullString" value="\N"/>   
      <param key="ignore_key" value="true"/>
      <param key="concurrency" value="1"/>
    </reader>
    <writer>
      <plugin>MysqlWriter</plugin>
      <param key="ip" value="localhost"/>
      <param key="port" value="3306"/>
      <param key="dbname" value="test"/>
      <param key="username" value="root"/>
      <param key="password" value="123456"/>
      <param key="table" value="datax_test"/>
      <param key="colorder" value="?"/>
      <param key="encoding" value="UTF-8"/>
      <param key="replace" value="false"/>
      <param key="concurrency" value="1"/>
    </writer>
  </job>
</jobs>


执行 /home/taobao/datax/bin/datax.py /home/hadoop/datax.xml后


如果是hadoop 2.*版本需要把依赖jar包copy替换到/home/taobao/datax/plugins/reader/hdfsreader目录下。


上面那个是老版本datax使用方式,最新版本的是通过json格式来配置的

最新版:

https://github.com/alibaba/DataX

安装使用方法:

https://github.com/alibaba/DataX/wiki/Quick-Start



你可能感兴趣的:(数据交换工具DataX使用)