令和元年度 秋期 午前 問30
データベース
2相コミットに関する問題
分散トランザクション管理において,複数サイトのデータベースを更新する場合に用いられる 2 相コミットプロトコルに関する記述のうち,適切なものはどれか。
- ア主サイトが一部の従サイトからのコミット準備完了メッセージを受け取っていない場合,コミット準備が完了した従サイトに対してだけコミット要求を発行する。
- イ主サイトが一部の従サイトからのコミット準備完了メッセージを受け取っていない場合,全ての従サイトに対して再度コミット準備要求を発行する。
- ウ主サイトが全ての従サイトからコミット準備完了メッセージを受け取った場合,全ての従サイトに対してコミット要求を発行する。
- エ主サイトが全ての従サイトに対してコミット準備要求を発行した場合,従サイトは,コミット準備が完了したときだけ応答メッセージを返す。
答えと解説を見る
✓ これが正解ウ主サイトが全ての従サイトからコミット準備完了メッセージを受け取った場合,全ての従サイトに対してコミット要求を発行する。
解説
全員の準備がそろって初めて、確定の号令をかけられます。
離れた場所にある複数の記録を、まとめて確定させたい場面があります。どれか一つでも失敗すると、全体が中途半端になってしまいます。そこで、確定の手続きを二つの段に分けます。第一の段では、取りまとめ役が各所へ準備できるかを尋ねます。尋ねられた側は、確定できる状態にしてから返事をします。第二の段は、返事がすべてそろってから始まります。全員から準備完了が返ってきたときだけ、確定の号令が飛びます。一つでも返事が欠けていれば、号令は出せません。その場合は、全体を取り消す側へ倒します。そろった相手にだけ確定を伝えるのは、最もしてはならない手です。確定した場所と取り消した場所が混ざってしまうからです。2 相コミットの値打ちは、この混在を防ぐところにあります。全部そろうか、全部やめるかしか残しません。
ほかの選択肢はなぜ違うのか
- ア主サイトが一部の従サイトからのコミット準…:返事の欠けている相手がいても、そろった相手にだけ確定を伝えると述べています。これでは確定した場所と取り消した場所が混ざります。まとめて扱うという目的が、まさに崩れる形です。この手続きが最も避けたい結果を招きます。
- イ主サイトが一部の従サイトからのコミット準…:返事が欠けているときに、全員へもう一度準備を求めると述べています。すでに準備を終えた相手にも、同じ求めが届いてしまいます。手続きは前へ進まず、堂々巡りに陥りかねません。欠けたときは取り消す側へ倒すのが筋です。待ち続ける形になります。
- エ主サイトが全ての従サイトに対してコミット…:準備が整ったときだけ返事をすると述べています。整わなかった相手からは、何も返ってきません。すると取りまとめ役は、遅いのか駄目なのか判断できません。整わなかったことも返事として伝える必要があります。沈黙は答えになりません。
この問題の用語
- トランザクションデータベースへの一連の処理をひとまとめにした単位のこと。途中で失敗すると開始前の状態へ戻され、中途半端な更新が残りません。
- データベースたくさんのデータを決まった形で貯め、探したり書き換えたりできるようにした仕組み。多くの人が同時に使うことを前提にしています。
- プロトコル通信するときの、決まりごとや手順のまとまりのことをいいます。送る側と受ける側が同じものに従うことで、やり取りが成り立ちます。
出典:令和元年度 秋期 応用情報技術者試験 午前 問30
同じ用語が出る問題
- 令和7年度 秋期 午前 問29:多版同時実行制御に関する問題(トランザクション)
- 令和6年度 秋期 午前 問31:チェックポイントに関する記述(トランザクション)
- 令和6年度 秋期 午前 問27:ロールバックに関する問題(トランザクション)
- 令和6年度 秋期 午前 問12(トランザクション)
- 令和6年度 春期 午前 問55:SaaSに関する問題(トランザクション)
この解説に誤りを見つけたら教えてください。直して、直した記録を残します。誤りを報告する(メールが開きます)