平成21年度春期 応用情報技術者試験 午前 問33

分野:データベース(関係モデル・正規化・SQL・トランザクション/排他制御・障害回復・NoSQL・データベース設計)|実際に出題されたIPA過去問題

分散データベースにおいて図のようなコマンドシーケンスがあった。調停者がシーケンス a で発行したコマンドはどれか。ここで,コマンドシーケンスの記述に UML のシーケンス図の記法を用いる。

問題の図表(IPA公式問題冊子より引用)
図表:IPA公式問題冊子より
  1.  COMMIT の実行要求
  2.  ROLLBACK の実行要求
  3.  判定レコードの書出し要求
  4.  ログ書出しの実行要求
解答・解説を見る

正解:イ

AI解説

分散データベースの更新では2相コミットプロトコル(2フェーズコミット)が用いられる。調停者(コーディネータ)は各参加者に準備(prepare)を問い合わせ、1つでも実行不可(NO)の応答があれば、全参加者にROLLBACK(取消し)の実行を指示する。 ア: COMMITの実行要求は、全参加者から準備完了(YES)の応答が得られた場合に調停者が発行するコマンドであり、本問のシーケンスaには該当しない。 イ: 正解。参加者から準備不可などの応答があった場合、調停者はトランザクションを確定できないため、全参加者にROLLBACKの実行を要求する。 ウ: 判定レコードの書出しは、調停者が最終的な決定(コミットかロールバックか)をログに記録する内部処理であり、参加者へ発行するコマンドそのものではない。 エ: ログ書出しの実行要求は各サイトが自身の処理の一環として行うものであり、調停者が発行する確定/取消しの指示コマンドとは性質が異なる。 💡 2相コミットは「投票(prepare)→決定(commit/rollback)」の2段階から成る。参加者の中に1つでも失敗があれば全体をロールバックする、という原則を押さえる。

出典:平成21年度 春期 応用情報技術者試験 午前 問33 / 独立行政法人情報処理推進機構(IPA)
※Web掲載用に表記を一部変更しています。図表はIPA公式問題冊子から引用しています。著作権はIPAに帰属します。
📱 演習アプリで解く(無料・登録不要・2,640問収録)

「データベース」分野の攻略ポイント

関係モデル・正規化・SQL・トランザクション管理・障害回復・データベース設計が中心です。計算問題は少なく、定義と手順を正確に覚えていれば確実に得点できる、いわば「取りこぼしてはいけない」分野です。特に正規形とACID特性は毎年のように形を変えて出ます。

データベースの攻略ポイントをすべて見る(要点5項目・ひっかけ3項目)→

同じ分野(データベース(関係モデル・正規化・SQL・トランザクション/排他制御・障害回復・NoSQL・データベース設計))の過去問