Relational Algebra
Time-Varying Relations
この章のポイント
しかし、時間変化する関係とは何だろうか。まず、古典的な関係代数の観点から定義し、その後、ストリーム理論やテーブル理論との関係についても考えてみよう。
関係代数の観点からは、時変関係は古典的な関係が時間と共に変化したもので ある。
ユーザーイベントからなる未加工のデータセットを想像してみよう。
時間の経過とともに、ユーザーが新しいイベントを生成すると、データセットは成長し進化し続ける。ある時点でそのデータセットを観察すれば、それは古典的な関係である。
しかし、時間の経過に伴う集合の全体的な進化を観察するのであれば、それは時間変化する関係である。
例
12:07> SELECT * FROM UserScores;
-------------------------
| Julie | 7
| Frank | 3
| Julie | 1
| Julie | 4
-------------------------
この関係において到着したデータがこれだけであったとすると、12時7分以降に観測したときには、先の表のような状態になる。しかし、もし私たちが12時1分にこの関係を観察していたとしたら、次のようになるはずです。
12:01> SELECT * FROM UserScores; -------------------------
| Name | Score | Time | -------------------------
| Julie | 7 | 12:01 |
-------------------------
12:03> SELECT * FROM UserScores; -------------------------
| Name | Score | Time | -------------------------
| 12:01 |
| 12:03 |
| 12:03 |
この例から、このデータセットの時変関係がどのようなものでなければならないか、感覚をつかみ始めることができる