テーブル演算子 - Teradata Database - Teradata Vantage NewSQL Engine

Teradata Vantage™ SQL外部ルーチン プログラミング

Product
Teradata Database
Teradata Vantage NewSQL Engine
Release Number
16.20
Published
2019年3月
Language
日本語
Last Update
2019-10-29
dita:mapPath
ja-JP/uhh1512082756414.ditamap
dita:ditavalPath
ja-JP/uhh1512082756414.ditaval
dita:id
B035-1147
Product Category
Software
Teradata Vantage

Javaテーブル演算子の実装に対するガイドラインは、C/C++テーブル演算子の実装に対するガイドラインによく似ています。詳細は、テーブル演算子を参照してください。

Javaの観点からは、入力ストリームと出力ストリームは前もって開かれており、また関数は暗黙的クローズにより終了するため、ユーザーは入力ストリームや出力ストリームをクローズする必要はありません。ストリームは一度だけクローズできます。また、入力ストリーム全体を読み込む必要はありません。入力ストリームのデータ末尾を取得した場合には、例外とされます。

TeradataResultSet()で最初の()を呼び出すと、java.sql.ResultSetのJava文書で指定されている最初の行ではなく、最初の行の前にカーソルが巻き戻されます。したがって、TeradataResultSet.first()は、java.qul.Result.Set.beforeFirst()のようなものです。

Teradataはテーブル演算子に対応する、以下のJavaアプリケーション クラスを提供します。

  • ArrayTypeInfo
  • ColumnDefinition
  • InputInfo
  • ResultSetの拡張
  • RuntimeContract
  • StreamFormat
  • UDTBaseInfo
  • AMPInfo
  • NodeInfo

Java SQLTABLEパラメータ スタイルの中心クラスはRuntimeContractです。行処理中に使用されるコンストラクタ メソッドとイテレータ メソッドにより、クラスを定義します。コンストラクタはコントラクト関数の機能を果たします。

Javaテーブル演算子は、通常のJavaUDFと同様に、保護モードJavaサーバー内で実行します。この環境はマルチスレッド化されるため、スレッド セーフにするためにユーザー コードを記述する必要があります。

入力と出力のパフォーマンスを向上させるため、テーブル演算子に提供される行はバッファされます。