16.20 - 有効時間 - Teradata Vantage NewSQL Engine

Teradata Vantage™ ANSIテンポラル テーブル サポート

prodname
Teradata Database
Teradata Vantage NewSQL Engine
vrm_release
16.20
category
プログラミング リファレンス
featnum
B035-1186-162K-JPN

有効時間とは、行内の情報が実世界のアプリケーションで有効または真である期間のことです。(ANSIでは、この期間を「アプリケーション時間」といいます。)valid-time列には、保険証書や契約が有効である期間、従業員の雇用期間など、時間を認識した手法での追跡や操作が重要になる情報を格納します。

valid-time期間は、VALIDTIME列属性で指定された派生期間列で表わされますが、列には任意の名前がある場合があります。

  • valid-time期間の開始境界は、行の情報が真または有効になり始める時刻です。
  • valid-time期間の終了境界は、契約の終了日など、行の情報が真または有効とは見なされなくなる時間を反映しています。

したがって、行の有効時間は、過去、現在、および将来の時間にわたります。現在有効な情報を含む行には、現在の時間を含むvalid-time期間が含まれます。行内の情報が最新だがvalid-time期間が有限である場合、相応の時間が経過すると情報が古くなり、有効ではなくなります。その時点で、行は履歴行と見なされます。

valid-time次元を持つテーブルに新たに行を追加する場合は、valid-time期間の開始境界と終了境界の値を含めることにより、行情報が有効である期間を指定する必要があります。無期限に有効な情報を含む行は、ほとんどの場合、システム日付またはタイムスタンプの最大値の終了境界値で表わされます。

valid-timeテーブルの行に対して時間境界の変更を行なうと、変更が有効になったときに、データベースは自動的に新しい行を作成し、それらのvalid-time期間を必要に応じて定義して時間的に区切りますが、変更前後の期間の情報の元の状態を保持します。これらの自動変更の性質は、行のvalid-time期間に関連する変更の期間がどのように指定されたかによって決定されます。詳細については、テンポラル テーブルの変更を参照してください。

valid-time表は、表の行内の情報に期限が定められていて、時間を認識した手法で行の情報を保守、追跡および操作する必要のある場合に使用してください。

valid-time表は、行の変更頻度が比較的少ない場合に最適です。POS (販売時点情報管理)表など、非常に頻繁に変更される属性を表現するには、valid-time表よりもイベント表の方が適しています。イベント テーブルにはテンポラル セマンティクスを適用しません。

valid-timeテーブルの詳細については、ANSI Valid-Timeテーブルの操作を参照してください。