ファントムリード
Phantom Read
ふぁんとむりーど
同一トランザクション内で同じ検索条件でデータを2回読み取った際に、他のトランザクションの挿入・削除により行数が変化する現象。REPEATABLE READ分離レベル以下で発生しうる。SERIALIZABLE分離レベルで防止できる。
Related
他の資格での定義
1つのトランザクションの中で同じ条件の検索を2回行ったとき、その間に他のトランザクションが条件に合う行を挿入してコミットしたために、1回目には無かった行が現れる現象。既に読んだ行にロックを掛けても防げず、SQL標準では隔離性水準をSERIALIZABLEにする必要がある。
1つのトランザクションの中で同じ条件の検索を2回行ったとき、その間に他のトランザクションが条件に合う行を追加(または削除)してコミットしたために、結果の行の集合が変わる現象。既存の行へのロックでは防げず、SQL標準では隔離性水準をSERIALIZABLEにする必要がある。
同一トランザクション内で同じ検索条件でデータを2回読み取った際に、他のトランザクションの挿入・削除により行数が変化する現象。REPEATABLE READ分離レベル以下で発生しうる。SERIALIZABLE分離レベルで防止できる。
Past Exams
過去問での出題
過去問で 2 回出題(データベーススペシャリスト試験 2)
出典: 独立行政法人情報処理推進機構(IPA)の過去問題。問題文は IPA のサイトの PDF で確認できます。「選択肢」は、問題文ではなく選択肢に出たものです。用語名で照合しているため、関係の薄い問題が含まれることがあります。
Related
関連キーワードの用語
あるトランザクションがコミットしていないデータを、別のトランザクションが読み取ってしまう現象。READ UNCOMMITTED分離レベルで発生しうる。読み取ったデータがロールバックされると不整合が生じる。
同一トランザクション内で同じデータを2回読み取った際に、他のトランザクションの更新により異なる値が返される現象。READ COMMITTED分離レベル以下で発生しうる。
関係モデルに基づくデータベース。データを2次元の表(テーブル)で管理し、SQLを用いて操作する。データの整合性制約やトランザクション管理に優れ、業務システムで最も広く利用されている。
DBMSがトランザクションの変更履歴をログファイルに記録・管理する機能。WAL原則に基づき、データの更新前にログを先行して書き込む。障害回復とロールバックの基盤であり、ログのアーカイブやローテーションも管理する。
データベースのアクセス権限やトランザクションを制御するためのSQL文の総称。GRANT(権限付与)、REVOKE(権限取消)、COMMIT(確定)、ROLLBACK(取消)などが含まれる。
データベースに対する一連の操作を論理的に1つの処理単位としてまとめたもの。ACID特性を満たすことで、データの一貫性と信頼性を保証する。COMMITで確定、ROLLBACKで取消を行う。
