応用情報技術者 2014年 春期 午前2 問30
問題文
トランザクションの原子性(atomicity)の説明として、適切なものはどれか。
選択肢
ア:データの物理的格納場所やアプリケーションプログラムの実行場所を意識することなくトランザクション処理が行える。
イ:トランザクションが終了したときの状態は、処理済みか未処理のどちらかしかない。(正解)
ウ:トランザクション処理においてデータベースの一貫性が保てる。
エ:複数のトランザクションを同時に処理した場合でも、個々の処理結果は正しい。
トランザクションの原子性(atomicity)の説明【午前2 解説】
要点まとめ
- 結論:トランザクションの原子性とは「処理が全て完了するか、全く行われないかのどちらかである」ことを指します。
- 根拠:原子性はトランザクションのACID特性の一つで、途中で失敗した場合は全ての処理を取り消し、一貫した状態を保ちます。
- 差がつくポイント:原子性は「中途半端な状態を許さない」ことに注目し、他のACID特性と混同しないことが重要です。
正解の理由
イ: トランザクションが終了したときの状態は、処理済みか未処理のどちらかしかない。
これは原子性の定義そのものであり、トランザクションは「全て成功」か「全て失敗(ロールバック)」のどちらかで終わるため、途中の中途半端な状態は存在しません。
これは原子性の定義そのものであり、トランザクションは「全て成功」か「全て失敗(ロールバック)」のどちらかで終わるため、途中の中途半端な状態は存在しません。
よくある誤解
原子性を「処理の場所や実行環境に依存しないこと」と誤解しがちですが、それは分散処理の透明性に関する話です。
また、一貫性や独立性と混同してしまうことも多いので注意が必要です。
また、一貫性や独立性と混同してしまうことも多いので注意が必要です。
解法ステップ
- トランザクションのACID特性を確認する。
- 原子性(atomicity)の意味を「全て成功か全て失敗か」と理解する。
- 選択肢の内容がこの定義に合致しているかを判断する。
- 原子性以外の特性(整合性、一貫性、独立性)に関する選択肢を除外する。
- 最も原子性の説明に合致する選択肢を選ぶ。
選択肢別の誤答解説
- ア: 処理の場所や実行環境の透明性は分散トランザクションの特徴であり、原子性の説明ではありません。
- イ: 正解。原子性の定義に合致しています。
- ウ: データベースの一貫性は「整合性(consistency)」の説明であり、原子性とは異なります。
- エ: 複数トランザクションの同時処理の正しさは「独立性(isolation)」の説明であり、原子性とは別の特性です。
補足コラム
トランザクションのACID特性は以下の4つです。
- Atomicity(原子性):全て成功か全て失敗か。
- Consistency(一貫性):トランザクション開始前後でデータの整合性が保たれる。
- Isolation(独立性):同時実行時に互いの影響を受けない。
- Durability(永続性):成功したトランザクションの結果は永続的に保存される。
これらを正確に理解することが合格の鍵です。
FAQ
Q: 原子性と一貫性はどう違いますか?
A: 原子性は「処理の全体成功か全体失敗か」を指し、一貫性は「データの整合性が保たれること」を意味します。
A: 原子性は「処理の全体成功か全体失敗か」を指し、一貫性は「データの整合性が保たれること」を意味します。
Q: トランザクションが途中で失敗したらどうなる?
A: 原子性により、途中までの処理は全て取り消され、元の状態に戻されます。
A: 原子性により、途中までの処理は全て取り消され、元の状態に戻されます。
関連キーワード: トランザクション、原子性、ACID特性、データベース、ロールバック、一貫性、独立性

\ せっかくなら /
応用情報技術者を
クイズ形式で学習しませんか?
クイズ画面へ遷移する→
すぐに利用可能!

