17.10 - テンプレートの使用に関する制約 - Parallel Transporter

Teradata® Parallel Transporter ユーザー ガイド

Product
Parallel Transporter
Release Number
17.10
Release Date
2021年6月
Content Type
ユーザー ガイド
Publication ID
B035-2445-061K-JPN
Language
日本語 (日本)

ユーザー定義のテンプレートを含め、テンプレートの使用可能な範囲の制限により、ConsumerオペレータやStandaloneオペレータをジョブ スクリプトで定義する理由はありません。 一方、Producerオペレータ テンプレートの使用については、制限される可能性があります。これは、Producerオペレータの定義には、明示的な(スクリプト定義の)スキーマをDEFINE OPERATOR構文の一部として指定する必要があるためです。

Standaloneオペレータはスキーマを使用しないため、スキーマの指定は不要です。 Consumerオペレータでは次のようにスキーマを指定します。

SCHEMA *

これは、オペレータをデータ ソースに接続するデータ ストリームで、オペレータに送るいかなるデータのスキーマもオペレータが受け取るということです。 一方、Producerオペレータは、次の構文フェーズを使用して、データ ストリームに配置するデータを記述するスクリプト定義のスキーマを識別する必要があります。

SCHEMA  schemaName

schemaNameは、ジョブ スクリプトのDEFINE SCHEMA文で定義されるスキーマの名前です。 プロデューサ テンプレートで実際にスキーマが指定されている場合、そのテンプレートの使用は、特定のスキーマの定義を含むスクリプトに限定されるうえ、そのスキーマが適切であるテンプレートに限定されます。

Producerオペレータ テンプレートの使用に関するこの潜在的に厳しい制限を解消するために、Teradata PTはAPPLY文にProducerオペレータ テンプレートへの参照の一部として明示的に、または暗黙にスキーマを指定できる機能をサポートしています。次に3つの例を示します。

... FROM OPERATOR( $FILE_READER( DAILY_SALES ) ) ...
... FROM OPERATOR( $EXPORT( 'Product_Shipments' ) ) ...
... FROM OPERATOR( $FILE_READER( DELIMITED 'Gross_Receipts_YTD' ) )         ...
  1. 最初の例(テンプレート名$FILE_READERへのこの特定の参照による、DataConnector producerオペレータの実行)では、'DAILY_SALES'がそのスキーマとして使用されます。 このような明示的なスキーマ参照は、ジョブ スクリプトでDEFINE SCHEMA文を使用してあらかじめ定義されたスキーマに対してのみ行なうことができます。
  2. 2つ目の例(テンプレート名$EXPORTへのこの特定の参照による、Exportオペレータの実行)では、データベース テーブルProduct_Shipmentsの列記述に基づき、Teradata PTによって生成されたスキーマが使用されます。 このような暗黙的なスキーマ参照は、必ず、ジョブのサブミット時にすでに存在するデータベース テーブルの名前を介して行なう必要があります。
  3. 3つ目の例(DataConnector Producerオペレータの実行)では、既存のデータベース テーブルGross_Receipts_YTDの列記述に基づき、Teradata PTによって生成されたスキーマの区切り記号付きファイル形式のバージョンが使用されます。