# TaCustomTableWriter プラグイン
# 一、迅速な紹介
TACustomTableWriter は、Ta システムにカスタムテーブルを作成する機能を提供します。
場合によっては、適用する必要のあるデータを user または event 形式で表現できない場合があります。たとえば、マッピングリレーショナルテーブルや外部データなどです。このデータを適用する必要がある場合は、TACustomTableWriter プラグインを使用してカスタムデータを TA システムにインポートする必要があります。
# 二、機能と制限
TA システムのカスタムテーブル機能のみをサポートします。
# 三、機能説明
# 3.1 構成サンプル
{
"job": {
"setting": {
"speed": {
"channel": 1
}
},
"content": [
{
"reader": {
"name": "streamreader",
"parameter": {
"column": [
{
"value": 123456,
"type": "long"
},
{
"value": "123123",
"type": "string"
},
{
"value": "pay",
"type": "string"
},
{
"value": "2020-01-01 08:08:08",
"type": "date"
},
{
"value": "2020-01-01 08:08:08",
"type": "date"
},
{
"value": "2222",
"type": "string"
},
{
"value": "2020-01-01 08:08:08",
"type": "date"
},
{
"value": "test",
"type": "string"
},
{
"value": true,
"type": "bool"
}
],
"sliceRecordCount": 10
}
},
"writer": {
"name": "ta-custom-table-writer",
"parameter": {
"appid": "6f9e64da5bc74792b9e9c1db4e3e3822",
"table": "ta_custom_table",
"tableDesc": "测试表",
"partitionValue": "2020-01-01",
"writeMode": "overwrite",
"column": [
{
"type": "double",
"name": "id"
},
{
"type": "string",
"name": "distinct_id"
},
{
"type": "string",
"name": "event_name"
},
{
"type": "string",
"name": "time"
},
{
"name": "event_time",
"type": "string"
},
{
"type": "string",
"name": "account_id"
},
{
"type": "string",
"name": "testDate"
},
{
"type": "string",
"name": "timetest2"
},
{
"type": "string",
"name": "os_1"
}
]
}
}
}
]
}
}
# 3.2 パラメータの説明
- appid
- 説明:インポートテーブルに対応する項目 appid は、TA システムのバックグラウンドで検出でき、システムに存在しなければならず、オフラインの項目はない。
- タイプ: string
- 必須:はい
- デフォルト:なし
- テーブル
- 説明: TA システムにインポートされたテーブル名、注意:テーブル名はグローバルに重複することはできません、異なる項目に基づいて識別できる接頭辞や接尾辞を追加することをお勧めします、テーブル名は、数字、文字、下線の組み合わせ
- タイプ: string
- 必須:はい
- デフォルト:なし
- テーブルデスク
- 説明:テーブルのコメントをインポートします。インポート時にこのパラメータを構成することをお勧めします。次のテーブルを調べるときにテーブルの意味を明確
- タイプ: string
- 必須:いいえ
- デフォルト:空
- 分割価値
- 説明:インポートされたパーティション値、TA システムインポートされたカスタムテーブルはデフォルトでパーティションフィールド$pt を持っているので、インポート時にインポートされたパーティション値を指定する必要があります。一般的にインポートされたデータの日付として設定できます。例えば、20180701、時間マクロの置換もサポートしています。例えば、@[{yyyyMMdd}-{1day}]は、XXXX 節で具体的な使用方法
- タイプ: string
- 必須:はい
- デフォルト:なし
- ライトモード
- 説明: TACustomTableWriter 書き込み前データクリーンアップ処理モード:
- append、partitionValue パーティションのようにように、書き込みデータを蓄積します。
- overwrite、partitionValue パーティションの下に存在するテキストを削除し、インポートしたデータを書き込みます。
- 必須:はい
- デフォルト:なし
- 説明: TACustomTableWriter 書き込み前データクリーンアップ処理モード:
- コラム
- 説明:データを書き込むフィールド
- 必須:はい
- デフォルト:なし
- ここで、name はフィールド名を指定し、type はフィールドタイプを指定します。
ユーザーは Column フィールド情報を指定できます。
"column":
[
{
"name": "userName",
"type": "string"
},
{
"name": "age",
"type": "long"
}
]
# 3.3 タイプ変換
現在 TACustomTableWriter は HIVE タイプをサポートしています。
以下に、TACustomTableWriter の HIVE データ型変換リストを示します
DataX内部型 | HIVEデータ型 |
---|---|
ロング | TINYINT, SMALLINT, INT, BIGINT |
ダブル | フロート、ダブル |
弦 | ストリング、VARCHAR、CHAR |
ブール型 | ブーリアン |
日付 | 日付、タイムスタンプ |