データベース|令和3年度 ITパスポート試験 問62
金融システムの口座振替では,振替元の口座からの出金処理と振替先の口座への入金処理について,両方の処理が実行されるか,両方とも実行されないかのどちらかであることを保証することによってデータベースの整合性を保っている。データベースに対するこのような一連の処理をトランザクションとして扱い,矛盾なく処理が完了したときに,データベースの更新内容を確定することを何というか。
- ✓ これが正解コミット
- スキーマ
- ロールフォワード
- ロック
解説
コミットは、トランザクションの更新を確定させる操作です。
データベースでは、切り離せない一連の処理をひとまとめにして扱い、これをトランザクションと呼びます。口座の振替であれば、出金と入金の二つはどちらも行われるか、どちらも行われないかでなければ、つじつまが合わなくなってしまいます。処理が最後まで矛盾なく終わったときに、それまでの更新内容を確定させて、他からも見える状態にすることをコミットといいます。逆に途中で不具合が起きた場合には、始める前の状態へ戻すロールバックを行います。つまりコミットとロールバックは、一まとまりの処理の終わり方が二通りあることを表しています。まとめて扱うことで、どちらか片方だけが残るという中途半端な状態を防いでいます。この性質は原子性と呼ばれます。よって当てはまるのはコミットということになります。
ほかの選択肢はなぜ違うのか
- スキーマは、データベースにどんな表があり、どんな項目を持つのかという構造を定めたものです。あらかじめ決めておく設計の話なので、処理が終わったときに更新を確定させるという操作の名前ではありません。設計の話です。
- ロールフォワードは、障害が起きた後に、保存してあった控えと記録を使って、障害の直前の状態まで復元する操作です。壊れた後に取り戻す場面の話であり、通常の処理を終えて更新を確定させる操作とは、使う場面が違います。復元の操作です。
- ロックは、同じデータを複数の処理が同時に書き換えて混乱しないよう、一時的に他からの操作を待たせる仕組みです。処理の間の場所取りにあたるもので、終わったときに更新を確定させる操作そのものではありません。待たせる仕組みです。
この問題に関係する言葉
- コミット
- トランザクションデータベースへの一連の処理をひとまとめにした単位のこと。途中で失敗すると開始前の状態へ戻され、中途半端な更新が残りません。
- ロールバック
- ロールフォワード
出典:令和3年度 ITパスポート試験 問62
同じ単元をまとめて解くならデータベースへ。
この解説に誤りを見つけたら教えてください。直して、直した記録を残します。誤りを報告する(メールが開きます)