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
日本語 (日本)

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









構文規則:

Exportオペレータの属性定義
構文要素 説明
AccountId = 'acctId' 特定のユーザー名に関連するアカウントを指定する任意の属性。

この属性を省略すると、デフォルトでデータベースの直接所有者のアカウントIDが設定されます。

BlockSize = bytes クライアントにデータを返すときに使用するブロック サイズを指定する任意の属性。最小値は256バイトです。デフォルト値は1048472バイトです。最大値は16775168バイトです。
BlockSizeの値は、データベースによってサポートされるメッセージ サイズを超えることはできません。 指定されたブロック サイズが大きすぎる場合、オペレータはその値を指定可能な最大サイズまで減らし、ジョブを続行します。
ConnectString = 'connectionString' 接続文字列を指定する任意選択の属性。この接続文字列はCLIに渡され、CLIが接続文字列を検証します。

接続文字列の詳細については、<Teradata® Call-Level Interface Version 2リファレンス - ワークステーション接続システム, B035-2418>を参照してください。

TPTの接続文字列機能は、z/OS以外のすべてのプラットフォームで利用できます。
DataEncryption = ‘option’ SQLリクエスト、応答、およびデータを暗号化して完全なセキュリティを可能にする任意選択の属性。
有効な値は次のとおりです。
  • ’On’ = すべてのSQLリクエスト、応答、およびデータが暗号化されます。
  • ’Off’ = 暗号化されません(デフォルト)。
DateForm = 'option' Exportオペレータ ジョブのDATEデータ型を指定する任意の属性。 有効な値は次のとおりです。
  • 'integerDate' = 整数のDATEデータ型(デフォルト)
  • 'ansiDate' = ANSI固定長のCHAR(10) DATEデータ型
DiscardLargeRow = ‘option’ Consumerオペレータはサイズの大きい行を処理できないため、サイズの大きい(64Kを超える)行を破棄するかどうかをオペレータに指示する任意選択の属性。
有効な値は次のとおりです。
  • 'Yes'または'Y' = サイズの大きい行を破棄してジョブを続行するようにオペレータに指示します。
  • 'No'または'N' = サイズの大きい行が検出されたときにジョブを終了するようにオペレータに指示します(デフォルト値)。
Consumerオペレータが、64Kを超える行をサポートしていないデータベースと通信している場合、Consumerオペレータはサイズの大きい行を処理できません。
このオプションを有効にし、Consumerオペレータがサイズの大きい行を処理できない場合、オペレータはサイズの大きい行を破棄します。破棄された行は保存されません。
  • オペレータは、Consumerオペレータに対して行が大きすぎるかどうかを事前に認識しないため、このオプションはFastExport NoSpoolモードでのみ適用されます。
  • オペレータは、Consumerオペレータに対して行が大きすぎるかどうかを事前に認識するため、このオプションはFastExport Spoolモードには適用されません。オペレータは、サイズの大きい行が1つ以上あることを事前に認識すると、ジョブを即座に終了します。
LogonMech = ‘string’ 使用するログオン メカニズムを指定する任意の属性。

認証方式によってはこの属性の指定が必須になる場合があります。

属性が8バイトを超えると、ジョブが終了されます。

LogonMechの指定要件については、<Teradata® Parallel Transporterユーザー ガイド, B035-2445>の「ログオン セキュリティ」を参照してください。

LogonMechData = ‘data 追加のログオン メカニズム データを転送する任意の属性。

外部認証方式によってはこの属性の指定が必須になります。

LogonMechDataの指定要件については、<Teradata® Parallel Transporterユーザー ガイド, B035-2445>の「ログオン セキュリティ」を参照してください。

LogSQL = 'option' 対象ジョブのSQLの中でログに記録する数を制御する任意選択の属性。
有効な値は次のいずれかです。
  • 'Yes' = すべてのSQLをログに出力します。 最大長は1Mです。
  • 'No' = SQLをログに出力しません。
  • 値なし、または属性指定の除外時は、事前定義の制限を使用します。最大32KのSQLを表示します(SQL全体が32K未満の場合)。 ログ対象のSQLが32Kを超える場合は、表示が最初の32KBに切り捨てられます。
MaxDecimalDigits = digits エクスポートできるDECIMALデータ型の桁数を制限する任意の属性。

有効値は1~38で、

デフォルト値は38です。

属性値q38 ≥ q ≥ 1の場合、返されたDECIMAL (n[,m])データ項目のうちn>qのものはDECIMALに暗黙的にCASTされます。オーバーフローは明示的CASTと同様に処理されます。

メインフレーム接続のプラットフォームでは、MaxDecimalDigits属性を31以下にして、ネイティブ命令セットの容量を超える表現を回避することが推奨されます。

MaxSessions = maxSessions ログオンするExportセッションの最大数を指定する任意の属性。

MaxSessionsには、1以上の値を指定する必要があります。1未満の値を指定すると、ジョブが終了されます。

デフォルトは、使用可能なAMPごとに1セッションです。最大値は、使用可能なAMP数を超えることはできません。

MinSessions = minSessions Exportオペレータ ジョブを継続するために最低限必要な最小セッション数を指定する任意の属性。

MinSessionsには、1以上およびExportオペレータの最大セッション数以下の値を指定する必要があります。デフォルトは1セッションです。

NotifyExit = 'inmodName' ユーザー定義の通知出口ルーチンの名前を指定する任意の属性。 値を指定しない場合、次のデフォルト名が使用されます。
  • Windowsプラットフォームの場合、libnotfyext.dll
  • Apple macOSプラットフォームの場合、libnotfyext.dylib
  • 他のすべてのUNIXプラットフォームの場合、libnotfyext.so
  • z/OSプラットフォームの場合、NOTFYEXT

独自の通知出口ルーチンを指定する方法については、使用制限語を参照してください。

NotifyLevel = ' notifyLevel ' 特定のイベントについてレポートするレベルを指定する任意の属性。 有効な値は次のとおりです。
  • 'Off' = イベントの通知は実行されません(デフォルト)。
  • 'Low' = 通知レベル「低」の欄に「あり」と表示されているイベントが通知されます。
  • 'Med' = 通知レベル「中」の欄に「あり」と表示されているイベントが通知されます。
  • 'High' = 通知レベル「高」の欄に「あり」と表示されているイベントが通知されます。
NotifyMethod = 'notifyMethod' イベントをレポートするために使用するメソッドを指定する任意の属性。方法は次のいずれかです。
  • 'None' = イベントをログに記録しません(デフォルト)。
  • 'Msg' = イベントをログに送ります。

    Windowsの場合、イベントはイベント ビューアで閲覧できるイベント ログに送られます。 メッセージはアプリケーション ログに送られます。

    Solaris、AIX、およびLinuxの各プラットフォームの場合、イベントの送り先は/etc/syslog.confファイルで指定された設定値に依存します。

    SLES11の場合、イベントの送り先は/etc/syslog-ng.confファイルで指定された設定値に依存します。

    z/OSシステムの場合、イベントはジョブ ログに送られます。

  • 'Exit' = イベントをユーザー定義の通知出口ルーチンに送ります。 行カウント情報は、4バイトの符号無し整数値になります。
  • 'Exit64' = イベントをユーザー定義の通知出口ルーチンに送ります。 行カウント情報は、次のイベントについては、8バイトの符号無し整数値になります。

    NXEventStmtFetchEnd64

    NXEventReqFetchEnd64

    NXEventExportEnd64

  • 'ExitEON' = イベントをユーザー定義の通知出口ルーチンに送ります。

    完全なTeradataオブジェクト名が、NXEventInitializeEONイベントの通知出口ルーチンに渡されます。 また、ExitEONから8バイトの符号なし整数値の形式で行カウント情報が送信されます。

NotifyString = 'notifyString' システム ログに送られるすべてのメッセージの先頭に付加するユーザー定義文字列を指定する任意の属性。 この文字列は、ユーザー定義の通知出口ルーチンにも送られます。 文字列の最大長は次のとおりです。
  • NotifyMethodが'Exit'の場合、80バイト
  • NotifyMethodが'Msg'の場合、16バイト
OutLimit = maxRecords Optional attribute that specifies the maximum number of records processed by each instance of the operator.
   INTEGER OutLimit = 1000
  • 指定する場合、OutLimit値は1以上である必要があります。
  • OutLimitを指定しない場合、処理レコード数に制限はありません。
  • OutLimitを指定すると、制限がジョブ全体ではなく、Exportオペレータの各インスタンスに適用されます。
PrivateLogName = 'logName' Teradata PT Loggerによってパブリック ログ内部に保持されるログの名前を指定する任意の属性。 プライベート ログには、Exportオペレータによる出力がすべて記録されます。

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

tlogview -j jobid -f privatelogname

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

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

QueryBandSessInfo = 'queryBandExpression' ジョブ セッションの期間のクエリー バンドを指定する任意選択の属性。

queryBandExpressionは、セミコロンで区切られ、セミコロンで終了する、名前=値ペアのセットです。 ユーザーは、下記の例のようなクエリー バンド式を定義します。

‘org=Finance;load=daily;location=west;’

QueryBandSessInfoは、ARRAY属性として指定することもできます。

クエリー バンド式の作成規則については、Teradata Vantage™ - SQLデータ定義言語-構文規則および例, B035-1144およびTeradata Vantage™ - SQLデータ定義言語 - 詳細トピック, B035-1184を参照してください。

QueryBandSessInfo属性の値は、エクスポート オペレータのプライベート ログに表示されます。

QueryBandSessInfo属性の使用には、以下のルールが適用されます。
  • デフォルトでは、QueryBandSessInfo属性に有効な値が指定されるまで、クエリー バンドはオフになります。
  • QueryBandSessInfo属性に値が含まれている場合、エクスポート オペレータは、必要なSET QUERY BAND SQLを構成し、LoadオペレータのSQLセッションの一部として発行して、データベースにリクエストを伝達します。
  • Exportオペレータはクエリー バンド式をチェックせず、データベースに式をそのまま渡します。
  • ジョブを実行するデータベースのバージョンでクエリー バンド機能がサポートされていない場合、クエリー バンドは実行されません。 ただし、オペレータはエラーを無視してジョブの残りの部分を実行します。
  • クエリー バンド式に構文エラーがあると、データベースはエラーを返します。 すると、Exportオペレータはジョブを終了し、エラーをユーザーに報告します。
RoleName - 'role name'

データベース環境にセキュリティを実装する任意の属性。オペレータの先頭には、"SET ROLE"の値が付加されます。構文は、次のようにデータベースに送信されます。

SET ROLE <role name>;

例:

SET ROLE All;

SET ROLEコマンドの使用の詳細については、<Teradata Vantage™ - SQLデータ定義言語-構文規則および例, B035-1144>を参照してください。

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

VARCHAR ARRAY RoleName = ['role name1', 'role name2'],

SQLセッションが接続されると、オペレータはそのセッションでデータベースにリクエストを送信します。

データベースではFastExportプロトコル セッションでリクエストを送信できないため、オペレータはFastExportプロトコル セッションでリクエストを送信しません。

  • オペレータはこの属性の値を検証せずに、そのままデータベースに渡し、データベースが値を検証します。検証が失敗すると、オペレータはそのジョブをエラーで終了します。
  • 値ではC形式のコメントが使用可能であり、そのコメントはデータベースに渡されます。
  • 値ではANSI形式のコメントはサポートされていません。値にANSI形式のコメントが含まれている場合、オペレータは構文エラーでジョブを終了することがあります。
  • セミコロンは値に使用できません。これは、オペレータがリクエストごとに1つのステートメントのみを許可するためです。値にセミコロンが含まれている場合に、オペレータはオペレータ エラーでジョブを終了します。
SelectStmt = 'SELECT statements; SQL SELECT文を指定する必須の属性。

オペレーティング システムのSQLリファレンスを参照して、SelectStmt属性に対して1つ以上の有効なSQL SELECT文を入力します。

ステートメントは単一引用符で囲む必要があります。また、各ステートメントの末尾にはセミコロンを付ける必要があります。

SpoolMode = 'option' 応答セットに使用するスプーリング モードを指定する任意選択の属性。
  • 'Spool'は、応答セットをスプールすることをエクスポート オペレータに指示します。これがデフォルトです。
  • 'NoSpool'は、NoSpoolメソッドを使用して試行することをエクスポート オペレータに指示します。NoSpoolがサポートされていない場合は、Spoolが使用されます。
  • 'NoSpoolOnly'は、NoSpoolメソッドのみを使用することをエクスポート オペレータに指示します。NoSpoolがサポートされていない場合は、エラーによりジョブは終了します。
VARCHAR TASMFASTFAIL = ‘value’ FASTFAILを有効にする任意選択の属性。
有効な値は次のとおりです。
  • 'Yes'または‘Y’ = FastFail機能を有効にします。 データベースで保留にされていると見なされる場合、ジョブは正常に終了します。
  • 'No'または‘N’ = FastFail機能は有効になりません(デフォルト)。 何らかの理由でジョブが保留になっているとTASMルールで判断された場合、ジョブはハングしたように見えます。
TdpId = 'dbcName' Exportオペレータ ジョブのデータベース マシン(非メインフレーム プラットフォーム)またはTDP(メインフレーム プラットフォーム)の名前を指定する任意の属性。

dbcNameは、最大256文字まで指定でき、ドメイン サーバー名を1つ指定できます。

dbcNameは、ネットワークのhostsファイルに入力されているホストの名前にします。

TdpId属性に対して値を指定しない場合、オペレータは、システム管理者がユーザー用に設定したデフォルトのTdpIdを使用します。

メインフレームでは、1文字のTdpIdがサポートされます。 1文字だけを指定すると、TDPで始まる4文字のTdpIdの略語とみなされます。
TenacityHours = hours データベースで最大数のUpdate/Export/Loadジョブがすでに実行されている場合、Exportオペレータが継続的にログオンを試行する時間数を指定する任意の属性。

デフォルト値は4時間です。 Tenacity機能を有効にするためには、hoursに1以上を指定する必要があります。 0を指定すると、Tenacity機能は無効になります。 0未満の値を指定すると、ジョブが終了されます。

TenacitySleep = minutes データベース上で最大数のUpdate/Export/Loadジョブがすでに実行されている場合、Exportオペレータがログオン操作を再試行するまでに一時停止する分数を指定する任意の属性。

分数には1以上の値を指定する必要があります。1未満の値を指定すると、Exportオペレータはエラー メッセージを返してジョブを終了します。デフォルトは6分です。

TimeZoneSessInfo = 'timeZoneValue' オペレータのジョブ セッションの期間にデフォルトのタイムゾーンの変位を変更できるようにする任意選択の属性。

この属性の値を指定すると、オペレータは"SET TIME ZONE <timeZoneValue>;" SQLリクエストを作成します。

SQLセッションが接続されると、オペレータはそのセッションでデータベースにリクエストを送信します。

データベースではFastExportプロトコル セッションでリクエストを送信できないため、オペレータはFastExportプロトコル セッションでリクエストを送信しません。

以下に例を示します。
  • 例1: 次の例では、セッションのデフォルトのタイムゾーン変位をシステム デフォルトのタイムゾーンであるLOCALに設定します。

    VARCHAR TimeZoneSessInfo = 'LOCAL'

  • 例2: 次の例では、セッションのデフォルトのタイムゾーン変位を、ログオンしているユーザーのデフォルトのタイムゾーンであるUSERに設定します。

    VARCHAR TimeZoneSessInfo = 'USER'

  • 例3: 次の例では、セッションのデフォルトのタイムゾーン変位を単純な定数タイムゾーン文字列式に設定します。

    VARCHAR TimeZoneSessInfo = '''America Pacific'''

    値内のどの単一引用符文字(')も、TPTジョブ スクリプトで2つの連続した単一引用符文字として入力する必要があります。これにより、正しい値がデータベースに送信されます。
  • オペレータはこの属性の値を検証せずに、そのままデータベースに渡し、データベースが値を検証します。検証が失敗すると、オペレータはそのジョブをエラーで終了します。
  • 値ではC形式のコメントが使用可能であり、そのコメントはデータベースに渡されます。
  • 値ではANSI形式のコメントはサポートされていません。値にANSI形式のコメントが含まれている場合、オペレータは構文エラーでジョブを終了します。
  • セミコロンは値に使用できません。これは、オペレータが "SET TIME ZONE SQL"リクエスト内で1つのステートメントのみを許可するためです。値にセミコロンが含まれている場合に、オペレータはオペレータ エラーでジョブを終了します。

SET TIME ZONE SQLについて詳しくは、Teradata Vantage™ - SQLデータ定義言語-構文規則および例, B035-1144を参照してください。

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

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

VARCHAR TraceLevel = 'CLI'
VARCHAR TraceLevel = 'OPER'
VARCHAR ARRAY TraceLevel = [ 'CLI' ]
VARCHAR ARRAY TraceLevel = [ 'CLI', 'OPER' ]
TraceLevel属性は、診断を支援するためにのみ指定します。 この属性によって得られる追加情報の量とタイプは、ニーズの変化に合わせてリリースごとに変わります。
です。
TransformGroup = 'transformgroupname' Teradata複合データ型(CDT)のアクティブな変換の変更をサポートする任意選択の属性。この値は<udt name> <transform group name>であり、オペレータが、ハードコードされた文字列"SET TRANSFORM GROUP FOR TYPE "を先頭に付加します。RDBMSに送信される構文は次のとおりです。
SET TRANSFORM GROUP FOR TYPE <udt name> <transform group name>;
例えば、次のように指定します。
"SET TRANSFORM GROUP FOR TYPE JSON CHARACTER SET LATIN TD_JSON_VARCHAR;"
VARCHAR ARRAYを使用すると、複数の値を指定できます。以下に例を示します。
VARCHAR ARRAY TransformGroup = ['JSON CHARACTER SET LATIN TD_JSON_VARCHAR',
                                'ST_GEOMETRY TD_GEO_VARCHAR'],

SQLセッションが接続されると、オペレータはそのセッションでデータベースにリクエストを送信します。

データベースではFastExportプロトコル セッションでリクエストを送信できないため、オペレータはFastExportプロトコル セッションでリクエストを送信しません。

  • オペレータはこの属性の値を検証せずに、そのままデータベースに渡し、データベースが値を検証します。検証が失敗すると、オペレータはそのジョブをエラーで終了します。
  • 値ではC形式のコメントが使用可能であり、そのコメントはデータベースに渡されます。
  • 値ではANSI形式のコメントはサポートされていません。値にANSI形式のコメントが含まれている場合、オペレータは構文エラーでジョブを終了することがあります。
  • セミコロンは値に使用できません。これは、オペレータがリクエストごとに1つのステートメントのみを許可するためです。値にセミコロンが含まれている場合に、オペレータはオペレータ エラーでジョブを終了します。
TreatDBSRestartAsFatal= ‘option’ データベースの再起動時にジョブを終了するかどうかをオペレータに指示する任意選択の属性。
TreatDBSRestartAsFatalの値は次のいずれかです。
  • ’No’(’N’) = データベースの再起動が発生した場合、オペレータは終了しない(デフォルト)。データベースの再起動は、再試行可能な処理として扱われます。
  • ’Yes'(’Y’) = データベースの再起動が発生した場合、オペレータは終了する。
UnicodePassThrough = ‘value’ Unicode Pass Through機能を有効または無効にするようにオペレータに指示する任意選択の属性。
有効な値は次のいずれかです。
  • ’On’ = オペレータ内のUnicode Pass Through機能を有効にする。
  • ’Off’ = (デフォルト)オペレータ内のUnicode Pass Through機能を無効にする。
TPTジョブがUTF8またはUTF16のセッション文字セットを使用している場合、UnicodePassThrough属性を'On'に設定して、オペレータがUnicodeパス スルー文字を使用してデータをエクスポートできるようにすることができます。
UserName = 'userId' データベース上のユーザー名を指定する属性。
一部の外部認証ログオン方式は、この属性の使用に対応していません。UserNameの指定要件の詳細については、<Teradata® Parallel Transporterユーザー ガイド, B035-2445>の「ログオン セキュリティ」を参照してください。
UserPassword = 'password' データベースのユーザー名に関連するパスワードを指定する属性。
一部の外部認証ログオン方式は、この属性の使用に対応していません。UserPasswordの指定要件の詳細については、<Teradata® Parallel Transporterユーザー ガイド, B035-2445>の「ログオン セキュリティ」を参照してください。
VARCHAR 定義済み属性のデータ型としてVARCHARを指定するキーワード。
WorkingDatabase = 'databaseName' ログオン データベース以外のデータベースをデフォルト データベースとして指定する任意の属性。

この属性で指定されたデータベース名は、2つのSQLセッションを接続した直後にオペレータによって送られるSQL DATABASE文で使用されます。

WorkingDatabaseが指定されない場合、修飾されていないすべてのテーブル名において、ログオンしたユーザーに関連付けられたデフォルト データベースがWorkingDatabaseとみなされます。