ITパスポート試験 テクノロジ系 練習問題 第27問: あるトランザクションは、在庫表の在庫数を1減らし、出荷表に出荷記録を1行追加する。在庫数を減らした後、出荷記録を追加する前に障害が発生し、このトランザクションは
この科目 –/135 解いた
中級推定正答率 約 50%
あるトランザクションは、在庫表の在庫数を1減らし、出荷表に出荷記録を1行追加する。在庫数を減らした後、出荷記録を追加する前に障害が発生し、このトランザクションはコミットされなかった。DBMSがACID特性の原子性を保証しているとき、障害から回復した後の状態として、正しいものはどれか。
解答と解説を先に見る
正解: 3. 在庫数は元に戻り、出荷記録は追加されていない
ACID特性の原子性(Atomicity)は、トランザクションの処理が全部反映されるか、まったく反映されないかのどちらかになる性質である。コミットされずに終わったトランザクションの更新は確定させず、障害から回復するときに取り消す。このため、途中まで行った在庫数の更新は元に戻り(ロールバック)、まだ実行されていない出荷記録の追加も行われていない状態になる(3が正しい)。在庫数だけが減ったままの1と、在庫数を戻して出荷記録だけを印付きで残す4は、処理の一部だけが反映された状態で、原子性に反する。 2は、コミットされていないトランザクションを回復のときに完了扱いにして更新を確定させるもので誤り。出荷記録の追加は障害の時点でまだ実行されておらず、ログに記録された更新をやり直すロールフォワードも、コミット済みの更新が対象である。
関連キーワード: トランザクション・ACID特性・原子性・コミット・ロールバック
模試 (100問)
この問題が解けたら、本試験はどうですか?本番形式で、ほかの科目もまとめて確かめる
本番形式の模擬試験で実力チェックPremium (月480円)Premium (ご利用中)本番と同じ制限時間
広告
解いた後に読みたい解説記事
通信講座も検討するなら
PRオンスク.JP入門
公式 →※ 編集方針に基づく厳選。A8.net 等のアフィリエイトリンクを含みます。