平成29年秋期試験問題 問76

データベースの処理に関する次の記述中のa,bに入れる字句の適切な組合せはどれか。

データベースに対する処理の一貫性を保証するために,関連する一連の処理を一つの単位にまとめて処理することをaといい,aが正常に終了しなかった場合に備えてbにデータの更新履歴を取っている。

76.png
正解 問題へ
分野:テクノロジ系
中分類:データベース
小分類:トランザクション処理
解説
データベースに対する更新処理では、複数の処理を合わせて1つの業務処理を為すものがあります。例えば銀行の振込処理において、AさんからBさんへ10,000円を振り込むケースを考えてみると、データベースに対して次の2つの更新処理が行われます。
  1. Aさんの口座残高から10,000円を引く
  2. Bさんの口座残高に10,000円を加える
このときどちらか一方が失敗したり、①と②の間に障害が発生したりすると、不正な業務処理が生じます。

データベースの処理では、この問題に対処するため、1つ以上の関連する処理をまとめたトランザクションを単位として処理を行っています。先の例でいえば、①と②を1つのトランザクションとして定義し、2つの処理が正常終了した場合にだけトランザクションを確定します。これにより処理の一貫性が保たれます。
またトランザクション処理の途中で失敗した場合は、データベースをトランザクション開始前の状態に戻します。この処理をロールバックといいます。DBMSではトランザクションの開始時点の状態をログファイルに書き出しており、DBMSはログファイルの更新前情報をもとにロールバック処理を実行します。

したがって、a=トランザクション処理、b=ログファイル の組合せが適切です。

Pagetop