IT博客汇
  • 首页
  • 精华
  • 技术
  • 设计
  • 资讯
  • 扯淡
  • 权利声明
  • 登录 注册

    [原]数据交换工具DataX使用

    liuzhoulong发表于 2016-07-22 19:31:37
    love 0

    1,下载

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

    2,安装

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

    yum install ant

    yum install gcc-c++


    进入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

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



    成功后输出路径中有:

    ....

    /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目录下。



沪ICP备19023445号-2号
友情链接