平成25年度 秋期 午前Ⅱ 問22
データベース
原子性に関する問題
DBMSに実装すべき原子性(atomicity)を説明したものはどれか。
- ア同一データベースに対する同一処理は,何度実行しても結果は同じである。
- イトランザクションが完了すると,その後にハードウェア障害が発生しても,更新されたデータベースの内容は保証される。
- ウトランザクション内の処理は,全てが実行されるか,全てが取り消されるかのいずれかしかない。
- エ一つのトランザクションの処理結果は,他のトランザクション処理の影響を受けることはない。
答えと解説を見る
✓ これが正解ウトランザクション内の処理は,全てが実行されるか,全てが取り消されるかのいずれかしかない。
解説
トランザクション内の処理は、全て実行か全て取消しのどちらかです。
原子性(atomicity)は、トランザクションのACID特性の一つで、トランザクションに含まれる処理が全て反映されるか、一つも反映されないかのどちらかになることを保証する性質です。例えば口座振替で、出金だけが反映されて入金が反映されないという中途半端な状態を残さないために、途中で失敗したら全体を取り消します。見分ける軸は、トランザクションの中の処理を分割できない一つの単位として扱っているかどうかです。ACIDの四つを、全部かゼロか、矛盾しない、互いに干渉しない、確定したら消えない、と一言ずつで対応させると区別できます。
ほかの選択肢はなぜ違うのか
- ア同一データベースに対する同一処理は,何度…:同じ処理を何度繰り返しても結果が変わらないという性質は、再実行しても安全かどうかの話です。トランザクション内の処理を全て反映するか全て取り消すかを定める原子性とは、扱っている点が違います。
- イトランザクションが完了すると,その後にハ…:コミットしたトランザクションの結果が、その後に障害が起きても失われないことを保証するのは耐久性です。確定した結果を守る性質であり、処理の途中での全か無かを定める原子性とは異なります。
- エ一つのトランザクションの処理結果は,他の…:他のトランザクションの処理から影響を受けないことは独立性の説明です。同時に動く複数のトランザクションが互いに干渉しないための性質で、一つのトランザクションを分割できない単位とする原子性とは別です。
この問題の用語
- トランザクションデータベースへの一連の処理をひとまとめにした単位のこと。途中で失敗すると開始前の状態へ戻され、中途半端な更新が残りません。
- DBMSデータベースを管理するソフト。複数の処理が同じデータを同時に更新しても矛盾しないよう、排他制御などを行います。
- データベースたくさんのデータを決まった形で貯め、探したり書き換えたりできるようにした仕組み。多くの人が同時に使うことを前提にしています。
出典:平成25年度 秋期 システムアーキテクト試験 午前Ⅱ 問22
同じ用語が出る問題
- 令和7年度 春期 午前Ⅱ 問24:隔離性水準に関する問題(トランザクション)
- 令和6年度 春期 午前Ⅱ 問24:デッドロックに関する問題(DBMS)
- 令和6年度 春期 午前Ⅱ 問14:WTO政府調達協定に関する記述(データベース)
- 令和6年度 春期 午前Ⅱ 問2:インプロセスデータベースの説明(DBMS)
- 令和5年度 春期 午前Ⅱ 問24:コミット処理を完了するタイミング(トランザクション)
この解説に誤りを見つけたら教えてください。直して、直した記録を残します。誤りを報告する(メールが開きます)