TaJsonFileWriter 插件
一、介绍
TaJsonWriter提供了向本地文件写入TA-JSON格式的文件。TaJsonWriter服务于需要把TA集群数据还原成json文本的用户。
二、功能与限制
TaJsonWriter 实现了从DataX协议转为TA-json格式的本地文件功能,TaJsonWriter 如下几个方面约定:
支持且仅支持写入TA格式的json文本文件。
支持多线程写入,每个线程写入不同子文件。
三、功能说明
3.1 配置样例
{
"job": {
"setting": {
"speed": {
"channel":1
}
},
"content": [
{
"reader": {
"name": "streamreader",
"parameter": {
"column" : [
{
"value": 123123,
"type": "long"
},
{
"value": "123123",
"type": "string"
},
{
"value": "login",
"type": "string"
},
{
"value": "2019-08-16 08:08:08",
"type": "date"
},
{
"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": 100
}
},
"writer": {
"name": "ta-json-writer",
"parameter": {
"type":"event",
"path": "/data/export/ta_datafile/",
"filename": "test",
"column": [
{
"index": "0",
"colTargetName": "#user_id"
},
{
"index": "1",
"colTargetName": "#distinct_id"
},
{
"index": "2",
"colTargetName": "#event_name"
},
{
"index": "3",
"colTargetName": "#time",
"type": "date",
"dateFormat":"yyyy-MM-dd HH:mm:ss.SSS"
},
{
"index": "4",
"colTargetName": "#event_time",
"type": "string"
},
{
"index": "5",
"colTargetName": "#account_id",
"type": "string"
},
{
"index": "6",
"colTargetName": "timetest",
"type": "date",
"dateFormat":"yyyy-MM-dd HH:mm:ss.SSS"
},
{
"index": "6",
"colTargetName": "timetest2",
"type": "date",
"dateFormat":"yyyy-MM-dd HH:mm:ss"
}
,
{
"index": "7",
"colTargetName": "os_1",
"type": "string"
},
{
"index": "7",
"colTargetName": "os_2",
"type": "string"
},
{
"index": "8",
"colTargetName": "booleantest",
"type": "boolean"
},
{
"index":"0",
"colTargetName":"testNumber",
"type":"number"
},
{
"colTargetName": "add_clo",
"value": "123123",
"type": "string"
}
]
}
}
}
]
}
}
3.2 参数说明
path
描述:本地文件系统的路径信息,TaJsonWriter会写入Path目录下属多个文件。
必选:是
默认值:无
fileName
描述:TaJsonWriter写入的文件名,该文件名会添加随机的后缀作为每个线程写入实际文件名。
必选:是
默认值:无
writeMode
描述:TaJsonWriter写入前数据清理处理模式:
- truncate,写入前清理目录下一fileName前缀的所有文件。
- append,写入前不做任何处理,DataX TAJsonWriter直接使用filename写入,并保证文件名不冲突。
- nonConflict,如果目录下有fileName前缀的文件,直接报错。
必选:是
默认值:append
encoding
描述:读取文件的编码配置。
必选:否
默认值:utf-8
column
描述:读取字段列表,type指定数据的类型,index指定当前列来对应reader的第几列(以0开始),value指定当前类型为常量,不从reader读取数据,而是根据value值自动生成对应的列。
用户可以指定Column字段信息,配置如下:
3.3 类型转换
类型是TaJsonFileWriter 定义:
DataX 内部类型 | TaJsonWriter 数据类型 |
---|---|
Int | Number |
Long | Number |
Double | Number |
String | String |
Boolean | Boolean |
Date | Date |