Teradataインテグレーションを使用すると、Treasure DataからTeradataサーバーにデータをエクスポートできます。
- Treasure Dataの基本的な知識
- Teradata SQLの基本的な知識
- 稼働中のTeradataインスタンス
- インテグレーションハブ > カタログに移動します。
- 検索してTeradataを選択します。

- ダイアログが開きます。

- 設定情報を入力します。
| パラメータ | 説明 |
|---|---|
| ホスト | TeradataデータベースのホストIPアドレスなどのホスト情報。 |
| ポート | インスタンスの接続ポート。Teradataのデフォルトは1025です。 |
| ユーザー名 | Teradataデータベースに接続するためのユーザー名。 |
| パスワード | Teradataデータベースに接続するためのパスワード。 |
| JDBC接続オプション | Teradataデータベースで必要な特別なJDBC接続。以下のJDBCオプションは無視されるため、追加しないでください:
|
| 接続タイムアウト | ソケット接続のタイムアウト(秒単位)(デフォルトは300)。 |
| ネットワークタイムアウト | ネットワークソケット操作のタイムアウト(秒単位)(デフォルトは1800)。0はタイムアウトなしを意味します。 |
- 接続に名前を付けて、完了を選択します。
このステップでは、クエリを作成または再利用し、クエリ内のデータ接続を設定します。
| TD/Teradata | string | double | long | boolean | timestamp | json |
|---|---|---|---|---|---|---|
| BYTEINT | yes | yes | yes | yes | no | no |
| SMALLINT | yes | yes | yes | yes | no | no |
| INTEGER | yes | yes | yes | yes | no | no |
| BIGINT | yes | yes | yes | yes | yes (EpochMilli) | no |
| FLOAT | yes | yes | yes | yes | no | no |
| DECIMAL | yes | yes | yes | yes | no | no |
| VARCHAR | yes | yes | yes | yes | yes | yes |
| CHAR | yes | yes | yes | yes | yes | yes |
| CLOB | yes | yes | yes | yes | yes | yes |
| DATE | yes (format yyyy-MM-ddが必要) | no | yes (EpochMilliが必要) | no | yes | no |
| TIME | yes (format HH:mm:[ss]が必要) | no | yes (EpochMilliが必要) | no | yes | no |
| TIMESTAMP | yes (format yyyy-MM-ddTHH:mm:ssZが必要) | no | yes (EpochMilliが必要) | no | yes | no |
互換性がない場合は、NULL値が設定されます。その他のTeradataデータ型はサポートされていません。
ターゲットテーブルが存在しない場合のTDタイプからTeradataタイプへのデフォルトマッピングは以下の通りです:
| TD結果 | Teradata |
|---|---|
| json | VARCHAR (1000) |
| string | VARCHAR (500) |
| double | FLOAT |
| long | BIGINT |
| timestamp | TIMESTAMP |
| boolean | BYTEINT |
デフォルトとは異なる型を設定したい場合があるかもしれません。データ型マッピングを使用すると、特定の列に特定の型(例えば、VARCHAR)を明示的に設定できます。
データマッピングを使用する場合、以下のことが当てはまります:
新しいターゲットテーブルを作成する場合にのみ適用されます。データ型マッピングパラメータの構文は次のとおりです:col_name_1:VARCHAR; col_name2:BIGINT。列名はエクスポート結果のフィールド名と一致する必要があります。
TDコンソールに移動します。データワークベンチ > クエリに移動します。データのエクスポートに使用するクエリにアクセスします。
クエリエディタの上部にあるエクスポート結果を選択します。
インテグレーション選択ダイアログが開きます。結果のエクスポートに使用する接続を選択する際に、次の2つのオプションがあります:
既存の接続を使用する 検索ボックスに接続名を入力して、接続をフィルタリングして選択します。
ダイアログが開きます: Insert モード

Truncate モード

Merge モード

新しいTeradata接続を作成する。 新規インテグレーションを選択し、タイプドロップダウンからTeradataを選択します。以下が表示されます:

新しい接続のTeradata情報を入力します。次に「次へ」をクリックします。
| パラメータ | 説明 |
|---|---|
| データベース名(必須) | データベース名 |
| ターゲットテーブル(必須) | ターゲットテーブル名 |
| テーブルタイプ(必須) | テーブルタイプ。新しいテーブルを作成する場合にのみ適用されます |
| モード(必須) | 操作モード |
| プライマリインデックスフィールド(マージモードの場合は必須) | ターゲットテーブルのプライマリインデックスフィールド |
| データ型マッピング(オプション) | ターゲットテーブルフィールドを特定のデータ型にマップします。新しいテーブルを作成する場合にのみ適用されます |
| バッチサイズ(オプション) | 単一のバッチ挿入のサイズ |
| 新しいデータが空の場合、切り捨てをスキップしますか?(オプション) | 読み込む新しいデータがない場合、切り捨て操作をスキップします |
- オーディエンススタジオでアクティベーションを作成して、セグメントデータをこのインテグレーションにエクスポートできます。
- スケジュールジョブと結果エクスポートを使用して、定期的にデータをターゲット先にアップロードできます。
Treasure Workflowでは、データコネクタを使用してデータをエクスポートすることを指定できます。
詳細はTDツールベルトを使用したワークフローでのデータのエクスポートをご覧ください。
insertモードの場合
_export:
td:
database: teradata
+teradata_export_task:
td>: export.sql
database: ${td.database}
result_connection: new_created_teradata
result_settings:
type: teradata
database: xxx
table: xxxx
table_type: set
mode: insert
column_options: col_1:VARCHAR(50), col_2:BIGINT
batch_size: 16777216truncateモードの場合
_export:
td:
database: teradata
+teradata_export_task:
td>: export.sql
database: ${td.database}
result_connection: new_created_teradata
result_settings:
type: teradata
database: xxx
table: xxxx
table_type: set
mode: truncate
column_options: col_1:VARCHAR(50), col_2:BIGINT
batch_size: 16777216
skip_truncate_if_empty: truemergeモードの場合
_export:
td:
database: teradata
+teradata_export_task:
td>: export.sql
database: ${td.database}
result_connection: new_created_teradata
result_settings:
type: teradata
database: xxx
table: xxxx
table_type: set
mode: merge
column_options: col_1:VARCHAR(50), col_2:BIGINT
batch_size: 16777216
merge_keys: col_1,col_2CLI(ツールベルト)を使用してTeradataに結果をエクスポートすることもできます。
td queryコマンドの--resultオプションを使用して、アカウントにエクスポートするための情報を指定する必要があります。td queryコマンドの詳細については、この記事を参照してください。
オプションの形式はJSONで、一般的な構造は以下の通りです。
insertモードの場合
{
"type": "teradata",
"host": "xxxx",
"port": 1025,
"user": "xxx",
"password": "xxx",
"options": "{\\\"xxxx\\\": \\\"xxxx\\\"}",
"connect_timeout": 30,
"socket_timeout": 60,
"database": "xxx",
"table": "xxxx",
"table_type": "set",
"mode": "insert",
"column_options": "col_1:VARCHAR(50), col_2:BIGINT",
"batch_size": 16777216
}truncateモードの場合
{
"type": "teradata",
"host": "xxxx",
"port": 1025,
"user": "xxx",
"password": "xxx",
"options": "{\\\"xxxx\\\": \\\"xxxx\\\"}",
"connect_timeout": 30,
"socket_timeout": 60,
"database": "xxx",
"table": "xxxx",
"table_type": "set",
"mode": "truncate",
"column_options": "col_1:VARCHAR(50), col_2:BIGINT",
"batch_size": 16777216,
"skip_truncate_if_empty": true
}mergeモードの場合
{
"type": "teradata",
"host": "xxxx",
"port": 1025,
"user": "xxx",
"password": "xxx",
"options": "{\\\"xxxx\\\": \\\"xxxx\\\"}",
"connect_timeout": 30,
"socket_timeout": 60,
"database": "xxx",
"table": "xxxx",
"table_type": "set",
"mode": "merge",
"column_options": "col_1:VARCHAR(50), col_2:BIGINT",
"batch_size": 16777216,
"merge_keys": "col_1,col_2"
}| 名前 | 説明 | 型 | 値 | デフォルト値 | 必須 |
|---|---|---|---|---|---|
| type | コネクタタイプ | string | teradata | 該当なし | はい |
| host | Teradataサーバーホスト | string | 該当なし | 該当なし | はい |
| port | Teradataサーバーポート | number | 該当なし | 1025 | はい |
| options | Teradata JDBCオプション | string(ハッシュオブジェクト形式) | 該当なし | 該当なし | いいえ |
| connect_timeout | Teradataログオンタイムアウト | number | 該当なし | 300 | いいえ |
| socket_timeout | ネットワークソケット操作タイムアウト | number | 該当なし | 1800 | いいえ |
| database | Teradataデータベース | string | 該当なし | 該当なし | はい |
| table_type | テーブルタイプ | string | サポート値:set, multiset | set | はい |
| table | テーブル名 | string | 該当なし | 該当なし | はい |
| mode | モード | string | サポート値:insert, truncate, merge | insert | はい |
| column_options | テーブルフィールドを特定のデータ型にマップ | string | 該当なし | 該当なし | いいえ |
| batch_size | 単一のバッチ挿入のサイズ | number | 該当なし | 16777216 | いいえ |
| merge_keys | ターゲットテーブルのプライマリインデックスフィールド | string | 該当なし | 該当なし | mergeモードの場合はい |
| skip_truncate_if_empty | 読み込む新しいデータがない場合、切り捨て操作をスキップする | boolean | true/false | false | いいえ |