# TaCustomTableWriterプラグイン
# 一、迅速な紹介
TACustomTableWriterは、TEシステムにカスタムテーブルを作成する機能を提供します。
場合によっては、適用する必要のあるデータをuserまたはevent形式で表現できない場合があります。たとえば、マッピングリレーショナルテーブルや外部データなどです。このデータを適用する必要がある場合は、TACustomTableWriterプラグインを使用してカスタムデータをTEシステムにインポートする必要があります。
# 二、機能と制限
TEシステムのカスタムテーブル機能のみをサポートします。
# 三、機能説明
# 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は、TEシステムのバックグラウンドで検出でき、システムに存在しなければならず、オフラインの項目はない。
- タイプ: string
- 必須:はい
- デフォルト:なし
- テーブル
- 説明: TEシステムにインポートされたテーブル名、注意:テーブル名はグローバルに重複することはできません、異なる項目に基づいて識別できる接頭辞や接尾辞を追加することをお勧めします、テーブル名は、数字、文字、下線の組み合わせ
- タイプ: string
- 必須:はい
- デフォルト:なし
- テーブルデスク
- 説明:テーブルのコメントをインポートします。インポート時にこのパラメータを構成することをお勧めします。次のテーブルを調べるときにテーブルの意味を明確
- タイプ: string
- 必須:いいえ
- デフォルト:空
- 分割価値
- 説明:インポートされたパーティション値、TEシステムインポートされたカスタムテーブルはデフォルトでパーティションフィールド$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 |
ブール型 | ブーリアン |
日付 | 日付、タイムスタンプ |