17.10 - 必須属性および任意属性 - Parallel Transporter

Teradata® Parallel Transporterリファレンス

Product
Parallel Transporter
Release Number
17.10
Release Date
2021年10月
Content Type
プログラミング リファレンス
Publication ID
B035-2436-061K-JPN
Language
日本語 (日本)

Updateオペレータの必須および任意の属性値を宣言するためには、Teradata PTのDEFINE OPERATOR文で属性定義リスト構文を使用します。





構文規則:

ODBCオペレータの属性定義
構文要素 説明
AddBOMToFile = ‘option’ XML、JSON、またはCLOBのデータ ファイルの先頭にUTFバイト オーダー マーク(BOM)を追加するかどうかを指定する任意選択の属性。
有効な値は次のとおりです。
  • ’Y’または'Yes' = ODBCオペレータは、XML、JSON、またはCLOBの出力データ ファイルの先頭に、該当するUTF BOMを追加します。
  • ’N’または'No' = ODBCオペレータは、XML(JSONまたはCLOB)の出力データ ファイルの先頭に、該当するUTFバイト オーダー マーク(BOM)を追加しません(デフォルト)。

AddBOMToFileは、次の2つの条件が満たされている場合にのみ使用できます。

ジョブ スキーマに、AS DEFERRED BY NAMEで定義されているXML、JSON、またはCLOBの列が1列以上ある。

ロード ジョブのクライアント文字セットが、Unicode文字セットである。

この2つの条件が満たされていないと、この属性で指定した値は無視されます。

このオペレータは、遅延モードでBLOB列から抽出されたデータ ファイルにはBOMを追加しません。
ConnectString = 'connectString' データ ソースに接続するための代替方法を指定する任意の属性。

指定されている場合、この属性の設定は、DSNname、UserName、およびUserPassword属性の設定に取って代わります。 この文字列には、使用するODBCドライバに適した有効な接続またはドライバに関する情報を含めることができます。

この属性での設定は、ODBC初期化ファイルのデフォルト設定を上書きします。

DataBlockSize = KBytes ODBCオペレータのパフォーマンスを微調整できる任意選択の属性。この調整は、単一の取得呼び出しで複数の行を保持するバッファのデータ ブロック サイズを動的に調整することで行ないます。

行のサイズにより、このデータ ブロックに取り込める行数が変化します。

属性の制限事項については、DataBlockSizeを参照してください。

DriverManagerName = 'DriverManagerName' ODBCドライバ マネージャ名のフルパスを指定するオプションの属性です。
DriverManagerName属性が使用されない場合は、Teradata Parallel Transporterにバンドルされているデフォルトのドライバ マネージャを使用します。
DriverManagerName属性は、z/OSとWindowsではサポートされません。Windowsでは、ODBCオペレータはWindowsのデフォルトのドライバ マネージャを使用します。
DSNname = 'dsnName' データ ソース名を指定する任意の属性。

使用できるのは、システム データ ソース名のみです。 ユーザー データ ソース名は機能しません。

この名前は、ODBC初期化ファイルにも入力され、そのファイルで接続情報を提供するラベルとして使用できます。

この属性での設定は、ODBC初期化ファイルのデフォルト設定をオーバーライドします。 ConnectString 属性は、この設定をオーバーライドします。

LobDirectoryPath = ‘pathName すべてのLOB、JSON、およびXMLのデータ ファイルが書き込まれる既存のディレクトリの完全なパス名を指定する任意の属性。
LobFileBaseName = ‘fileName LOB、JSON、およびXMLのデータ ファイルの名前の先頭に付加される文字列を定義する任意選択の属性。ODBCオペレータで作成されるファイル名の形式は以下のとおりです。
<column-name>_<job-id>_p<#>_r<#>
説明
  • "p"の後の#は、ODBCオペレータ コピーの識別情報です。
  • "r"の後の#は、Teradata Databaseから返される行順序です。

例えば、以下のスキーマがあるとします。

DEFINE SCHEMA <schema-name>

(
COL2 BLOB AS DEFERRED BY NAME,
COL3 CLOB AS DEFERRED BY NAME,
COL4 XML AS DEFERRED BY NAME,
COL5 JSON(1000000) AS DEFERRED BY NAME,
 );
LobFileBaseNameの値が"my_test"であれば、ファイル名は次のようになります。
  • my_test_COL2_<job-id>_p1_r1
  • my_test_COL3_<job-id>_p1_r1
  • my_text_COL4_<job-id>_pl_r1
  • my_text_COL5_<job-id>_pl_r1
  • my_test COL2_<job-id>_p1_r2
  • my_test_COL3_<job-id>_p1_r2
  • my_test_COL4_<job-id>_pl_r2
  • my_test_COL5_<job-id>_pl_r2
  • my_test_COL2_<job-id>_p1_r3
  • my_test_COL3_<job-id>_p1_r3
  • my_test_COL4_<job-id>_pl_r3
  • my_test_COL5_<job-id>_pl_r3

以下同様に続きます。

作成されたファイルには、LobFileExtension属性で指定されている場合を除き、拡張子はありません。

LobFileExtension = ‘fileExtension LOB、JSON、およびXMLのデータ ファイル名の拡張子を指定する任意選択の属性。
'fileExtension'の例を以下に示します。
  • ’jpg’:ファイルの’ccc.jpg’が画像ファイルであることを示します。
  • ’gif’:ファイルの’ddd.gif’が画像ファイルであることを示します。
  • ’html’:ファイルの’aaa.html’がhtmlファイルであることを示します。
  • 'json':ファイルがJSONファイルであることを示します。
OutLimit = maxRecords オペレータの各インスタンスで処理される最大レコード数を指定する任意選択の属性。

INTEGER OutLimit = 1000

指定する場合、OutLimit値は1以上である必要があります。

OutLimitを指定しない場合、処理レコード数に制限はありません。

OutLimitを指定すると、制限がジョブ全体ではなく、エクスポート オペレータの各インスタンスに適用されます。

PrivateLogName = 'logName' Teradata PT Loggerによってパブリック ログ内部に保持されるログの名前を指定する任意の属性。 プライベート ログには、オペレータによる出力がすべて記録されます。

プライベート ログは、tlogviewコマンドを次のように使用すると表示できます。ここで、jobidはTeradata PTのジョブ名を、privatelognameはオペレータのPrivateLogName属性の値を示します。

   tlogview -j jobid -f privatelogname

プライベート ログを指定しない場合、出力はすべてパブリック ログに格納されます。

tlogviewコマンドの詳細については、Teradata PTユーティリティのコマンドを参照してください。

SelectStmt = 'SELECT statements;' ODBC準拠のデータ ソースに送信されるSQL SELECT文を指定する必須の属性。 結果テーブルとして行データが返されます。

オペレータは、ステートメントの正当性を確認するための構文解析を実行しません。 ステートメントは、どのようなタイプの処理も実行されず、そのまま送られます。

SELECT文には、その構文がODBCオペレータと接続するデーターベースによってサポートされているあらゆるSQL SELECT文を使用できます。

すべてのデータベースが複文のSELECTをサポートするとは限りません。異なるデータ ソースは異なる構文をサポートしているため、指定したODBC準拠のデータ ソースのSQLリファレンスを参照して、SelectStmt属性に対して有効なSQL SELECT文のみを入力します。

TraceLevel = 'level' オペレータの各インスタンスによってパブリック ログ(PrivateLogName属性で指定されている場合はプライベート ログ)に書き込まれる診断メッセージの種類を指定する任意選択の属性。診断トレース機能は、ログ ファイルで詳細な情報を提供するため、問題の追跡や診断に役立ちます。
有効なトレース レベルは次のいずれかです。
  • 'None' = トレース機能を無効にします(デフォルト)。
  • 'PX' = Teradata PTインフラストラクチャに関連するアクティビティについてのトレース機能を有効にします。
  • 'Oper' = オペレータ固有のアクティビティについてのトレース機能を有効にします。
  • 'All' = 上記すべてのアクティビティについてのトレース機能を有効にします。

VARCHAR ARRAYを使用すると、複数の値を指定できます。以下に例を示します。

 VARCHAR TraceLevel = 'PX'
   VARCHAR TraceLevel = 'OPER'
   VARCHAR ARRAY TraceLevel = [ 'PX' ]
   VARCHAR ARRAY TraceLevel = [ 'PX', 'OPER' ]
TraceLevel属性は、診断を支援するためにのみ指定します。 この属性によって得られる追加情報の量と種類は、ニーズの変化に合わせてリリースごとに変わります。
TruncateData = 'option' データ ソースから受け取ったデータを、Teradataの列型に合うように切り捨てるかどうかを指定する属性。

Teradata以外のデータベース(Oracle、DB2など)がTeradataの列型を使用しない場合があるため、この属性は必須です。 例えば、DB2の列型LONGはVARCHAR列に相当しますが、その最大サイズは2MBです。 Teradataの最大列サイズは1MBです。 データはこの列から抽出できます(サイズが2MBとして定義されているからといって、実際のデータがその大きさであるとは限りません)。ただし、実際のデータが1MBを超過する場合は、そのデータを切り捨てるのか、またはエラーとしてジョブを中止するのかをODBCオペレータに知らせる必要があります。

値は次のいずれかです。
  • 'Yes'(または'Y') = データを切り捨てます。
  • 'No'(または'N') = データを切り捨てません(デフォルト)。
UserName = 'userId' データ ソースに含まれるアカウントまたはデータベースのユーザー名を指定する任意の属性。

この属性を指定しない場合、ODBCドライバは初期化ファイル内を検索してユーザー名情報を取得します。

この属性での設定は、ODBC初期化ファイルのデフォルト設定をオーバーライドします。 ConnectString 属性は、この設定をオーバーライドします。

UserPassword = 'password' データ ソースに含まれるアカウントまたはデータベースのUserNameに関連するパスワードを指定する任意の属性。

この属性を指定しない場合、ODBCドライバはODBC初期化ファイル内を検索してユーザー パスワード情報を取得します。

この属性での設定は、ODBC初期化ファイルのデフォルト設定をオーバーライドします。 ConnectString属性は、この設定をオーバーライドします。