ワークベンチを使用して、時間に基づくデータをモデリングできます。テンポラル・オブジェクトを作成および変更するには、ワークベンチのテンポラル・フィーチャーを使用します。
テンポラル・エンティティーは、システム時間 (または、トランザクションが記録される場合はトランザクション時間)、ビジネス時間 (または、実世界の情報に関してデータが有効である場合は有効時間)、またはその両方に対して行が有効である期間をモデリングするエンティティーです。
有効であると見なされるために、モデリングされる事実は一定の期間のみ真となります。この資料では、2 種類の期間を具体的に定義します。
期間とは、テンポラル・エンティティーで 2 つの日付属性または時刻属性によって定義される時間の間隔のことです。期間は開始属性と終了属性を含みます。
開始属性は期間の開始を示し、終了属性は期間の終わりを示します。期間の開始値はその値を含みますが、期間の終了値は含みません。
例えば、開始属性の値が 01/01/1995 であるとき、この日付は行に含まれます。一方、終了属性の値が 03/21/1995 であるとき、この日付は行に含まれません。
ワークベンチは 3 種類のテンポラル・エンティティーをサポートします。
- システム期間
- システム期間エンティティーにより、システム時間 (または、トランザクションが記録される場合はトランザクション時間) に基づく
履歴情報を保管する方法がモデル化されます。
論理データ・モデリング段階では、システム期間属性を作成します。この属性は、トランザクションが発生する期間を示すシステム保守値である属性のペアをモデリングします。開始属性には、行が作成される (挿入操作または既存の行に対する更新操作のどちらかによって) ときのタイム・スタンプ値が入ります。
終了属性には、行が有効ではなくなる時を指定するデータ・タイプ DATE または TIMESTAMP が入ります。
- アプリケーション期間
- 論理データ・モデリング段階において、アプリケーション期間属性を作成します。これらの属性は、行が実世界の情報に関して有効である期間を示す属性のペアで、アプリケーションが維持する値を取ります。
開始属性は、実世界の出来事または実世界の状態が開始する時についての情報をモデリングします。
終了属性には、行が有効ではなくなる時を指定するデータ・タイプ DATE または TIMESTAMP が入ります。
アプリケーション期間のみを持つエンティティーを、アプリケーション期間テンポラル・エンティティーといいます。
- バイテンポラル
- 論理データ・モデリング段階において、バイテンポラル・エンティティーはシステム期間テンポラル属性とアプリケーション期間テンポラル属性の両方を使用します。
バイテンポラル・エンティティーを使用して、アプリケーション期間情報とシステム・ベースの履歴情報をモデリングできます。
したがって、期間に基づくデータをモデリングする方法にはかなり柔軟性があります。