datax:如何使用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 数据格式 Java
DataX插件编写指南
DataX 是阿里巴巴集团内被广泛使用的离线数据同步工具/平台,实现包括 MySQL、Oracle、HDFS、Hive、OceanBase、HBase、OTS、ODPS 等各种异构数据源之间高效的数据同步功能。DataX采用了框架 + 插件 的模式,目前已开源,代码托管在github。
13419 1
|
7月前
|
存储 NoSQL 关系型数据库
阿里DataX极简教程
【5月更文挑战第1天】DataX是一个高效的数据同步工具,用于在各种数据源之间迁移数据,如MySQL到另一个MySQL或MongoDB。它的工作流程包括read、write和setting步骤,通过Framework协调多线程处理。其核心架构包括Job、Task和TaskGroup,支持并发执行。DataX支持多种数据源,如RDBMS、阿里云数仓、NoSQL和无结构化数据存储。例如,从MySQL读取数据并同步到ClickHouse的实践操作包括下载DataX、配置任务文件和执行同步任务。
1051 1
阿里DataX极简教程
|
SQL 分布式计算 Oracle
Datax 环境搭建
datax、环境搭建、数据同步
392 1
|
调度 DataX 容器
DataX教程(07)- 图解DataX任务分配及执行流程
DataX教程(07)- 图解DataX任务分配及执行流程
603 0
DataX教程(07)- 图解DataX任务分配及执行流程
|
监控 DataX
DataX教程(09)- DataX是如何做到限速的?
DataX教程(09)- DataX是如何做到限速的?
377 0
|
JSON Java DataX
DataX教程(04)- 配置完整解读
DataX教程(04)- 配置完整解读
2592 0
|
存储 NoSQL 关系型数据库
DataX教程(01)- 入门
DataX教程(01)- 入门
838 0
|
Java DataX Maven
DataX教程(02)- IDEA运行DataX完整流程(填完所有的坑)
DataX教程(02)- IDEA运行DataX完整流程(填完所有的坑)
693 0
|
JSON 缓存 关系型数据库
5、DataX(DataX简介、DataX架构原理、DataX部署、使用、同步MySQL数据到HDFS、同步HDFS数据到MySQL)(二)
5、DataX(DataX简介、DataX架构原理、DataX部署、使用、同步MySQL数据到HDFS、同步HDFS数据到MySQL)(二)
|
Oracle 关系型数据库 大数据