ホーム > データベーススペシャリスト試験 > 2022年
データベーススペシャリスト試験 2022年 午前2 問15
トランザクションのACID特性のうち, 原子性(atomicity)の記述として, 適切なものはどれか。
ア:データベースの内容が矛盾のない状態であること
イ:トランザクションが正常終了すると, 障害が発生しても更新結果はデータベースから消失しないこと
ウ:トランザクションの処理が全て実行されるか、全く実行されないかのいずれかで終了すること(正解)
エ:複数のトランザクションを同時に実行した場合と, 順番に実行した場合の処理結果が一致すること
解説
トランザクションのACID特性「原子性(atomicity)」の記述【午前2 解説】
要点まとめ
- 結論:原子性とはトランザクションの処理が全て実行されるか、全く実行されないかのどちらかで完結することです。
- 根拠:これはトランザクションの途中で障害が発生しても、部分的な処理結果がデータベースに反映されないことを保証するためです。
- 差がつくポイント:ACID特性の4つの要素(原子性、一貫性、独立性、耐久性)を正確に区別し、用語の意味を混同しないことが重要です。
正解の理由
ウ: トランザクションの処理が全て実行されるか、全く実行されないかのいずれかで終了することは、原子性の定義そのものです。
原子性は「全か無か」の性質を持ち、トランザクションの途中で障害が起きた場合は、処理を全て取り消してデータベースの整合性を保ちます。これにより、部分的な更新が残ることを防ぎます。
原子性は「全か無か」の性質を持ち、トランザクションの途中で障害が起きた場合は、処理を全て取り消してデータベースの整合性を保ちます。これにより、部分的な更新が残ることを防ぎます。
よくある誤解
原子性は「データの矛盾がないこと」や「障害後も更新結果が消えないこと」と混同されやすいですが、これらはそれぞれ一貫性や耐久性の説明です。
解法ステップ
- ACID特性の4つの要素を確認する(Atomicity, Consistency, Isolation, Durability)。
- 原子性(Atomicity)は「全て実行 or 全く実行しない」ことを意味する。
- 選択肢の説明文とACIDの定義を照らし合わせる。
- 原子性の説明に合致する選択肢を選ぶ。
選択肢別の誤答解説
- ア: 「データベースの内容が矛盾のない状態であること」は一貫性(Consistency)の説明です。
- イ: 「トランザクションが正常終了すると障害が発生しても更新結果は消失しないこと」は耐久性(Durability)に該当します。
- ウ: 正解。原子性の定義そのものです。
- エ: 「複数のトランザクションを同時に実行した場合と順番に実行した場合の処理結果が一致すること」は独立性(Isolation)の説明です。
補足コラム
ACID特性はデータベーストランザクションの信頼性を支える基本概念です。
- 原子性は処理の一貫性を保つための「全か無か」の保証。
- 一貫性はデータの整合性を維持。
- 独立性は同時実行時の干渉防止。
- 耐久性は障害後のデータ保持を指します。
これらを理解することで、データベース設計やトラブルシューティングに役立ちます。
FAQ
Q: 原子性と一貫性はどう違いますか?
A: 原子性はトランザクションの処理単位の完結性を指し、一貫性は処理後のデータの整合性を指します。
A: 原子性はトランザクションの処理単位の完結性を指し、一貫性は処理後のデータの整合性を指します。
Q: トランザクションが途中で失敗した場合、原子性はどう働きますか?
A: 途中までの処理は全て取り消され、データベースは処理開始前の状態に戻ります。
A: 途中までの処理は全て取り消され、データベースは処理開始前の状態に戻ります。
関連キーワード: トランザクション, ACID特性, 原子性, データベース, 一貫性, 独立性, 耐久性