問題
2相ロッキングプロトコルの目的はどれか。
選択肢
- 1ア トランザクションの処理速度向上
- 2イ データベースの直列化可能性を保証し整合性を確保する
- 3ウ メモリ使用量を削減する
- 4エ インデックスを自動生成する
正解
2. イ データベースの直列化可能性を保証し整合性を確保する
詳しい解説を見る解説を閉じる
解説
2相ロッキングプロトコルは、トランザクションの実行を、ロックを獲得するだけの成長相と、ロックを解放するだけの縮退相の2段階に分け、一度ロックを解放した後は新たなロックを獲得しないという規則である。すべてのトランザクションがこれに従うと、同時実行の結果が何らかの直列実行と等価になること(直列化可能性)が保証され、データの整合性が確保される。よってイが正解である。アについて、ロックは他のトランザクションの待ちを発生させるため処理速度の向上が目的ではなく、むしろデッドロックが発生し得る点に注意が必要である。ウのメモリ使用量の削減やエのインデックスの自動生成は、ロック制御とは無関係の事項である。基本情報技術者試験では、直列化可能性という目的、共有ロックと専有ロックの両立可否、デッドロックの発生条件が頻出ポイントである。
一問一答
科目A 180問+科目B 60問