manuallatest製品マニュアル / TaJsonWriterプラグイン
TaJsonWriterプラグイン
1. はじめに
TaJsonWriterは、AE JSON形式のファイルをローカルファイルに書き込む機能を提供します。TaJsonWriterは、AEクラスターのデータをjsonテキストに復元する必要があるユーザー向けです。
2. 機能と制限
TaJsonWriterは、DataXプロトコルからAE JSON形式のローカルファイルへの変換機能を実装しています。TaJsonWriterには次の取り決めがあります:
- AE形式のjsonテキストファイルへの書き込みにのみ対応しています。
- マルチスレッドでの書き込みに対応しており、スレッドごとに異なるサブファイルに書き込みます。
3. 機能の説明
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のフィールド情報を指定することもできます。設定は次のとおりです:
[
{
"type": "Number",
"colTargetName": "test_col", //生成するデータに対応する列名
"index": 0 //readerからdataxに転送される1列目からNumberフィールドを取得
},
{
"type": "string",
"value": "testvalue",
"colTargetName": "test_col" //TaDataWriter内部で生成したtestvalueの文字列フィールドを現在のフィールドとする
},
{
"index": 0,
"type": "date",
"colTargetName": "testDate",
"dateFormat": "yyyy-MM-dd HH:mm:ss.SSS"
}
]
3.3 型変換
タイプはTaJsonWriterで定義されています:
| DataX内部型 | TaJsonWriterデータタイプ |
|---|---|
| Int | Number |
| Long | Number |
| Double | Number |
| String | String |
| Boolean | Boolean |
| Date | Date |
このページは役に立ちましたか?

