ACID 特性の原子性
トランザクションの ACID 特性のうち,原子性(Atomicity)の説明はどれか。
- アトランザクションの実行の前後で,データベースの整合性制約が満たされている。
- イコミットされたトランザクションの結果は,その後に障害が発生しても失われない。
- ウトランザクションの処理は,すべて実行されるか,まったく実行されないかのいずれかである。
- エ並行して実行される複数のトランザクションが互いに影響を与えず,順番に実行した場合と同じ結果になる。
正解と解説を見る
正解 ウ
この問題の基礎知識
- ACID 特性は,トランザクションが満たすべき原子性(Atomicity),一貫性(Consistency),独立性(Isolation)及び耐久性(Durability)の四つの性質である。
- 障害からの回復では,コミット前のトランザクションの更新を更新前ログによるロールバックで取り消し,コミット済みの更新を更新後ログによるロールフォワードで反映する。媒体障害ではバックアップを戻してからロールフォワードを行う。
- 独立性は,ロックなどの排他制御によって,並行実行の結果が逐次実行した場合と同じになるようにすることで確保する。
アトランザクションの実行の前後で,データベースの整合性制約が満たされている。
実行の前後でデータベースが整合性制約を満たし,矛盾のない状態に保たれることは一貫性(Consistency)の説明である。原子性は処理の全部か無かを保証する性質である。
イコミットされたトランザクションの結果は,その後に障害が発生しても失われない。
コミット済みの更新結果が障害後も保持されることは耐久性(Durability)の説明である。ログを用いたロールフォワードなどで実現される。
ウトランザクションの処理は,すべて実行されるか,まったく実行されないかのいずれかである。正解
原子性は,トランザクション内の処理が全部反映されるか,一つも反映されないかのどちらかになる性質である。途中で失敗した場合はロールバックによって実行前の状態に戻す。
エ並行して実行される複数のトランザクションが互いに影響を与えず,順番に実行した場合と同じ結果になる。
並行実行されるトランザクションが互いに干渉しないことは独立性(Isolation)の説明である。ロックなどの排他制御で実現される。
検証用の出典出典照合済み
IPA 応用情報技術者試験(レベル 3)シラバス / Jim Gray, Andreas Reuter: Transaction Processing: Concepts and Techniques / OMG Transaction Service Specification Version 1.4照合の根拠(5 件)
- ウ(正解): 原子性(atomic)は,障害で中断した場合にトランザクションのすべての効果が取り消される性質である
A transaction is atomic; if interrupted by failure, all effects are undone (rolled back).
OMG Transaction Service Specification Version 1.4 · 1.2.1 Overview of Transactions(新しいタブで開きます) - ウ(正解): 原子性により,すべての変更をまとめてコミットするか,まとめてロールバックするかのいずれかになる(全部か無か)
These interfaces enable the objects to either commit all changes together or to rollback all changes together, even in the presence of (noncatastrophic) failure.
OMG Transaction Service Specification Version 1.4 · 1.2.1 Overview of Transactions(新しいタブで開きます) - ア(誤り): トランザクションの効果が不変条件(整合性制約)を保つことは一貫性(consistent)の説明である
A transaction produces consistent results; the effects of a transaction preserve invariant properties.
OMG Transaction Service Specification Version 1.4 · 1.2.1 Overview of Transactions(新しいタブで開きます) - イ(誤り): 完了したトランザクションの効果が失われないことは耐久性(durable)の説明である
A transaction is durable; the effects of a completed transaction are persistent; they are never lost (except in a catastrophic failure).
OMG Transaction Service Specification Version 1.4 · 1.2.1 Overview of Transactions(新しいタブで開きます) - エ(誤り): 並行して実行しても逐次に実行したように見えることは独立性(isolated)の説明である
A transaction is isolated; its intermediate states are not visible to other transactions. Transactions appear to execute serially, even if they are performed concurrently.
OMG Transaction Service Specification Version 1.4 · 1.2.1 Overview of Transactions(新しいタブで開きます)
応用情報技術者試験シラバスは「ACID 特性」の項目名のみで定義がなく,出典の Gray & Reuter は書籍で読めないため,ACID 特性の四つの定義を明記した OMG Transaction Service 仕様(1.2.1)を一次資料として用いた。