修了試験 2022-06-12実施分 基本情報技術者試験 問28
分散データベースシステムにおいて,一連のトランザクション処理を行う複数サイトに更新処理が確定可能かどうかを問い合わせ,全てのサイトが確定可能である場合,更新処理を確定する方式はどれか。
正答1
解説
正解は1です。 分散データベースでは、1つのトランザクションが複数のサイトのデータを更新することがあります。 すべてのサイトで更新を確定するか、すべてのサイトで取り消すかのどちらかにしないと、データの整合性が崩れます。 そのための方式が2相コミット(2フェーズコミット)です。 【選択肢別解説】 1:○ 2相コミットは、第1相で調整役が各サイトに確定可能かどうかを問い合わせます。 全サイトから確定可能の応答があれば、第2相で一斉に確定を指示します。 問題文の説明と一致します。 2:× 排他制御は、複数のトランザクションが同じデータを同時に更新しないように、ロックなどで制御する仕組みです。 複数サイトへの確定の問合せを行う方式ではありません。 3:× ロールバックは、トランザクションの途中で障害が起きたときに、更新前の状態へ戻す処理です。 2相コミットで確定できなかった場合に行われる処理の一つであり、方式の名称ではありません。 4:× ロールフォワードは、障害発生後にバックアップとログを使って、更新後の状態まで処理をやり直す回復処理です。 複数サイトの更新確定とは関係ありません。 【ポイント】 2相コミットは「問合せ(準備)」と「確定(コミット)」の2段階で、分散環境のトランザクションの原子性を保ちます。 ロールバックは更新前に戻す処理、ロールフォワードは更新後まで進める処理です。まとめて解く
修了試験 2022-06-12実施分を通しで解く(80問)→