IPA過去問ドリル

令和5年度 秋期 データベーススペシャリスト試験 午前Ⅱ 問12

テクノロジ/データベース

2 相ロック方式を用いたトランザクションの同時実行制御に関する記述のうち,適切なものはどれか。

出典:令和5年度 秋期 データベーススペシャリスト試験 午前Ⅱ 問12

正解:エ

解説

2 相ロック方式は,トランザクションの実行を,ロックを獲得していく成長相(第 1 相)と,ロックを解除していく縮退相(第 2 相)に分ける方式です。いったんロックを解除した後は新たなロックを獲得できないため,必要な全てのロックを獲得し終えてからでなければロックの解除を始められません。この規則によって直列化可能性が保証されますが,デッドロックの発生自体は防げません。

選択肢ごとの解説

  • 誤り。2 相ロック方式は直列化可能性を保証しますが,複数トランザクションが互いのロック解放を待ち合うデッドロックは発生し得ます。
  • 誤り。2 相ロック方式はコミット順序をトランザクション開始時刻順に制御するものではありません。
  • 誤り。ロックを全て解除した後にコミットするのではなく,一般にはコミット時点までロックを保持します(厳格 2 相ロック)。
  • 正しい。必要な全てのロックを獲得し終えた後(成長相の終了後)にだけ,ロックの解除を始められます。
データベーススペシャリストの過去問を演習モードで解く