datax:如何使用datax

一、如何编译
https://github.com/alibaba/DataX将工程代码下载到本地,配置好java和maven环境,执行命令mvn -U clean package assembly:assembly -Dmaven.test.skip=true即可实现打包,执行完毕之后会在工程目录下面有一个target目录,包含有一个datax的文件夹和datax.tar.gz文件即是我们需要的文件
二、如何使用
进入datax/bin目录下,新建test.json文件,文件内容为:

  {
    "job": {
        "setting": {
            "speed": {
                "channel": 1
            }
        },
        "content": [
            {
                "reader": {
                    "name": "txtfilereader",
                    "parameter": {
                        "path": ["/XXX/src"],
                        "encoding": "UTF-8",
                        "column": [
                            {
                                "index": 0,
                                "type": "long"
                            },
                            {
                                "index": 1,
                                "type": "long"
                            }
                        ],
                        "fieldDelimiter": ","
                    }
                },
                "writer": {
                    "name": "txtfilewriter",
                    "parameter": {
                        "path": "/XXX/dest",
                        "fileName": "dest",
                        "writeMode": "truncate"
                    }
                }
            }
        ]
    }
}

在当前目录下执行python datax.py test.json命令,即可将datax运行起来
三、参数说明

1、datax使用json作为配置文件,文件可以是本地的也可以是远程http服务器上面
2、json配置文件最外层是一个job,job包含setting和content两部分,其中setting用于对整个job进行配置,content是数据的源和目的
3、setting:用于设置全局channel配置,脏数据配置,限速配置等,本例中只配置了channel个数1,也就是使用单线程执行数据传输
4、content:
  1)reader:配置从哪里读数据
    name:插件名称,需要和工程中的插件名保持一致
    parameter:插件对应的输入参数
      path:源数据文件的路径
      encoding:数据编码
      fieldDelimiter:数据分隔符
      column:源数据按照分隔符分割之后的位置和数据类型
  2)writer:配置将数据写到哪里去
    name:插件名称,需要和工程中的插件名保持一致
    parameter:插件对应的输入参数
      path: 目标路径
      fileName: 目标文件名前缀
      writeMode: 写入目标目录的方式
5、具体插件参数含义可以查看datax官方文档
  1)https://github.com/alibaba/DataX/blob/master/txtfilereader/doc/txtfilereader.md
  2)https://github.com/alibaba/DataX/blob/master/txtfilewriter/doc/txtfilewriter.md

四、/XXX/src测试数据

  文件a:
    1,2
    3,4
    5,6
上一篇:datax:总结


下一篇:App-V5.0服务器部署