ページモデル(The Page Model)
トランザクション研究における伝統的な表記法(notation).
トランザクションを数理論理学的に研究たらしめている重要な概念.
Data operationsとTermination Operationsの二つの種類のoperationがあり,データベースにおける全ての処理はこのoperationsに翻訳されるという前提で議論をする.
つまり,クエリがコンパイルされた後だけを議論する.
SELECT はどうだ,とか Find はどうだ,という,DB特有のインタフェースを一切考慮しない.
前提として,$ T_0, T_1, T_2...とトランザクションを表記する.
各トランザクションのIDは一意である.
Data operations
read: $ r_1(x_0) と表記する.
これは$ T_1が$ T_0のwrite operationの結果であるタプル$ x_0を読んだことを意味する
1VCCにおいては$ r_1(x)とタプルのバージョンを指定しない省略記法が用いられる これは直近のxに対するwrite operationを添字とすることを意味する.
たとえば,$ w_1(x)w_2(x)r_3(x)なら,$ r_3(x_2)と同じ.
Read Operationの定義については少し議論がある.
write: $ w_1(x_1)と表記する.
Termination Operations
commit: $ c_1と表記する.
abort: $ a_1と表記する.
Transaction, history and schedule
各トランザクションは,一つ以上のData operationsを持ち,一つだけTermination Operationを持つ.
このトランザクションの集合が,HistoryないしScheduleと呼ばれるもの.
ただし,トランザクションは集合だが,Data operationsは順序集合である必要がある.
データベースにどの順序で命令が発行されたか,という順序がThe Page Model Notationを行う上で必要,ということ.
History: トランザクション($ 1<= n)の実行履歴.全てのトランザクションがtermination operationを持つ.
Schedule: 同じく,トランザクションの実行履歴だが,termination operationを持つとは限らない.
つまり,実行中のトランザクションを含む.