16.20 - 外部サーバー オブジェクトのコピーについて - Teradata Data Mover

Teradata® Data Mover ユーザー ガイド

Product
Teradata Data Mover
Release Number
16.20
Published
2021年11月
Content Type
ユーザー ガイド
Publication ID
B035-4101-107K-JPN
Language
日本語 (日本)

Teradata Database 15.0で導入された外部サーバー オブジェクトを使用すると、HadoopまたはOracleなどの他社製システムのデータをクエリーするための定義を作成することができます。Data Moverでは、それらの外部サーバー オブジェクトの定義をTeradataシステム間でコピーできます。

すべての外部サーバー オブジェクトは、TD_SERVER_DBデータベースに保持されます。このデータベースは、Teradata Database 15.0以降に存在します。

Hadoopシステムの外部サーバー オブジェクトDDLを以下に示します。適切な権限を持つデータベース ユーザーは、システム情報がわかっている他社製システムの外部サーバー オブジェクトを作成できます。外部サーバー オブジェクトを作成、更新、削除、または使用する方法については、Teradata Databaseのマニュアルを参照してください。

要件および制限

  • 外部サーバー オブジェクトを作成およびコピーするには、Teradata Databaseシステムに各外部サーバー パッケージがインストールされて正しく構成されている必要があります。サポートが必要な場合は、https://support.teradata.comでGlobal Technical Support Centerにお問い合わせください。
  • Data Moverジョブ ユーザーには、外部サーバー オブジェクトに対する権限を付与する必要があります。権限がない場合、ジョブは失敗します。
  • Data Moverは、SHOW FOREIGN foreign_server_name SQL文を実行して外部オブジェクトDDLを取得します。
  • Teradata Databaseシステム ユーザーには、外部サーバー オブジェクトに対する権限を付与する必要があります。権限がない場合、ジョブは失敗します。
  • ソースとターゲットの両方のシステムが、バージョン15.0以上のTeradataシステムであることが必要です。
  • Data Moverは、外部サーバー オブジェクトDDLの構文解析は行いません。まったく同じDDLがターゲット システムで実行されます。
  • 外部サーバ オブジェクトの定義のみをコピーします。
  • 再配置はサポートされていません。外部サーバー オブジェクトはすべてデータベースTD_SERVER_DBになければなりません。
  • 部分コピーはサポートされていません。
  • 行数の確認はサポートされていません。
  • DDLの比較はサポートされていません。
  • 外部サーバー オブジェクトの定義を移動するときに、ステージング テーブルとステージング データベースは使用できません。
  • 外部サーバー オブジェクトの定義は、ARC、DSA、TPT、またはJDBCを使用してコピーできます。
  • コピーするオブジェクトがターゲット データベースに存在しない場合は、ターゲット データベース上に作成されます。オブジェクトがターゲット データベースに存在する場合は、overwrite_existing_objectsプロパティがfalseに設定されていないとオブジェクトは上書きされます。 その場合、作成タイムエラーが生成されます。

CREATE FOREIGN SERVER、オブジェクトの名前、およびサーバーの情報を指定して外部サーバー オブジェクトを作成します。
CREATE FOREIGN SERVER MyServer USING 
server('sdll9119.labs.teradata.com')
port('9083')
hosttype('hadoop')
hiveport ('10000')
username('hive')
DO IMPORT WITH syslib.load_from_hcatalog_hdp1_3_2 
USING transformformatting('true'),
DO EXPORT WITH syslib.load_to_hcatalog_hdp1_3_2;
上記の例では、アクセス ポートが9083のリモートhadoopサーバーsdll7680.labs.teradata.comを定義するオブジェクトMyServerを作成しています。
  • function load_from_hcatalog_hdp1_3_2を使用して、Teradata Databaseシステム上のMyServerからデータを取得することができます。
  • function load_to_hcatalog_hdp1_3_2を使用して、MyServerにデータをエクスポートすることができます。
  • オブジェクトMyServerはデータベースTD_SERVER_DBに作成されます。完全修飾名を使用する必要はありません。