シャドウページ法
Shadow Paging
しゃどうぺーじほう
データベースの障害回復の方式の一つ。トランザクションが更新するページを元の場所で書き換えずに別の領域へ書き込み、更新前のページを指すページ表(シャドウページ表)を残しておく。コミット時にページ表を更新後のものへ一度に切り替え、障害時は更新前のページ表に戻すだけで済むので、ログによる取消し(UNDO)が要らない。一方で、データの格納位置が散らばりやすく、不要になったページの回収も必要になる。
Related
他の資格での定義
Related
関連キーワードの用語
データの複数のバージョンを保持し、各トランザクションが適切なバージョンを参照する同時実行制御方式。読取りがロックを必要としないため、読取りと書込みが互いにブロックしない。PostgreSQLやOracleが採用。
あるトランザクションがコミットしていないデータを、別のトランザクションが読み取ってしまう現象。READ UNCOMMITTED分離レベルで発生しうる。読み取ったデータがロールバックされると不整合が生じる。
同一トランザクション内で同じデータを2回読み取った際に、他のトランザクションの更新により異なる値が返される現象。READ COMMITTED分離レベル以下で発生しうる。
同一トランザクション内で同じ検索条件でデータを2回読み取った際に、他のトランザクションの挿入・削除により行数が変化する現象。REPEATABLE READ分離レベル以下で発生しうる。SERIALIZABLE分離レベルで防止できる。
複数のプロセスやトランザクションが共有資源に同時アクセスする際に、データの整合性を保つための制御機構。セマフォ、ミューテックスなどのOS同期機構や、ロック方式(共有ロック・専有ロック)、MVCC等のデータベース制御手法がある。デッドロックの防止も重要な課題。
同時実行されるトランザクション間の干渉の度合いを制御する設定。READ UNCOMMITTED、READ COMMITTED、REPEATABLE READ、SERIALIZABLEの4段階がある。レベルが高いほど整合性は保たれるが同時実行性は低下する。
