跳到主要内容

Ta-Datax-Writer 插件使用指南

最近更新 2026/10/03

一、介绍​

Ta-Datax-Writer 是 DataX 的写入数据插件,提供了 DataX 生态中向 AE 集群传输数据的功能,您可以在数据传输服务器上部署 DataX,同时使用 DataX 所支持的数据源读取插件以及本插件,实现多数据源与 AE 集群的数据同步。

如需了解 DataX,可以访问DataX 的 Github 主页

数据发送到 AE 接收端的方式进行数据传输

二、功能与限制​

TaDataWriter 实现了从 DataX 协议转为 AE 集群内部数据功能,TaDataWriter 如下几个方面约定:

  1. 支持且仅支持写入 AE 集群。
  2. 支持数据压缩,现有压缩格式为 gzip、snappy。
  3. 支持多线程传输。

三、使用说明​

3.1 下载 datax​

wget https://download.thinkingdata.cn/tools/datax/datax.tar.gz

下载完成时的输出类似:

HTTP request sent, awaiting response... 200 OK
Length: 829372407 (791M) [application/x-gzip]
Saving to: ‘datax.tar.gz’

2019-12-23 10:34:17 (12.4 MB/s) - ‘datax.tar.gz’ saved [829372407/829372407]

3.2 解压 datax​

tar -zxvf datax.tar.gz

3.3 安装 ta-datax-writer 插件​

wget https://download.thinkingdata.cn/tools/release/ta-datax-writer.tar.gz
  • 把 ta-datax-writer.tar.gz 拷贝到 datax/plugin/writer 目录下
cp ta-datax-writer.tar.gz datax/plugin/writer
  • 进入 datax/plugin/writer 目录,执行 ll 查看,目录中已有 ta-datax-writer.tar.gz
cd datax/plugin/writer/
ll
-rw-r--r-- 1 root root 8575618 Dec 23 10:38 ta-datax-writer.tar.gz
  • 解压插件包
tar -zxvf ta-datax-writer.tar.gz
  • 删除软件包
rm -rf ta-datax-writer.tar.gz
  • 执行 ll 查看,目录中已有解压出的 ta-datax-writer 插件目录
ll
drwxr-xr-x 4 ta ta 4096 Nov 25 19:17 ta-datax-writer

四、 功能说明​

4.1 配置样例​

{
"job": {
"setting": {
"speed": {
"channel": 1
}
},
"content": [
{
"reader": {
"name": "streamreader",
"parameter": {
"column": [
{
"value": "123123",
"type": "string"
},
{
"value": "testbuy",
"type": "string"
},
{
"value": "2019-08-16 08:08:08",
"type": "date"
},
{
"value": "2222",
"type": "string"
},
{
"value": "2019-08-16 08:08:08",
"type": "date"
},
{
"value": "test",
"type": "bytes"
},
{
"value": true,
"type": "bool"
}
],
"sliceRecordCount": 10
}
},
"writer": {
"name": "ta-datax-writer",
"parameter": {
"thread": 3,
"type": "track",
"pushUrl": "http://{数据接收地址}",
"appid": "6f9e64da5bc74792b9e9c1db4e3e3822",
"column": [
{
"index": "0",
"colTargetName": "#distinct_id"
},
{
"index": "1",
"colTargetName": "#event_name"
},
{
"index": "2",
"colTargetName": "#time",
"type": "date",
"dateFormat": "yyyy-MM-dd HH:mm:ss.SSS"
},
{
"index": "3",
"colTargetName": "#account_id",
"type": "string"
},
{
"index": "4",
"colTargetName": "testDate",
"type": "date",
"dateFormat": "yyyy-MM-dd HH:mm:ss.SSS"
},
{
"index": "5",
"colTargetName": "os_1",
"type": "string"
},
{
"index": "6",
"colTargetName": "testBoolean",
"type": "boolean"
},
{
"colTargetName": "add_clo",
"value": "123123",
"type": "string"
}
]
}
}
}
]
}
}

4.2 参数说明​

  • thread

    • 描述:线程数,为每个 channel 内部并发使用,与 DataX 的 channel 数量无关。
    • 必选:否
    • 默认值:3
  • pushUrl

    • 描述:接入点地址。
    • 必选:是
    • 默认值:无
  • uuid

    • 描述:在传输数据中增加 "#uuid":"uuid 值",配合数据唯一 ID功能使用 。
    • 必选:否
    • 默认值:false
  • type

    • 描述:写入的数据类型 user_set、track。
    • 必选:是
    • 默认值:无
  • compress

    • 描述:文本压缩类型,默认不填写意味着没有压缩。支持压缩类型为 gzip、snappy。
    • 必选:否
    • 默认值:无压缩
  • appid

    • 描述:对应项目的 appid。
    • 必选:是
    • 默认值:无
  • column

    • 描述:读取字段列表,type 指定数据的类型,index 指定当前列来对应 reader 的第几列(以 0 开始),value 指定当前类型为常量,不从 reader 读取数据,而是根据 value 值自动生成对应的列。

用户可以指定 Column 字段信息,配置如下:

[
{
"type": "Number",
"colTargetName": "test_col", //生成数据对应的列名
"index": 0 //从reader到datax传输第一列获取Number字段
},
{
"type": "string",
"value": "testvalue",
"colTargetName": "test_col"
//从TaDataWriter内部生成testvalue的字符串字段作为当前字段
},
{
"index": 0,
"type": "date",
"colTargetName": "testdate",
"dateFormat": "yyyy-MM-dd HH:mm:ss.SSS"
}
]
  • 对于用户指定 Column 信息,index/value 必须选择其一,type 非必选,设置 date 类型时,可设置 dateFormat 非必选。

    • 必选:是
    • 默认值:全部按照 reader 类型读取

4.3 类型转换​

类型是 TaDataWriter 定义:

DataX 内部类型TaDataWriter 数据类型
IntNumber
LongNumber
DoubleNumber
StringString
BooleanBoolean
DateDate
这篇文档对你有帮助吗?