平成24年度 春期 午前 問33
データベース
DBMSの排他制御に関する記述
DBMS の排他制御に関する記述のうち,適切なものはどれか。
- アアクセス頻度の高いデータの処理速度を上げるためには,排他制御が必要である。
- イ処理速度を上げるため,排他制御を行うデータの範囲は極力大きくすべきである。
- ウデータアクセス時のデッドロックを防止するために,排他制御が必要である。
- エ複数の人が同時に更新する可能性のあるデータには,排他制御が必要である。
答えと解説を見る
✓ これが正解エ複数の人が同時に更新する可能性のあるデータには,排他制御が必要である。
解説
同時の更新でどちらかが消えるのを防ぎます。
同じデータを二人が同時に読み、それぞれが自分の読んだ値をもとに書き戻すと、後から書いたほうで前の更新が上書きされ、片方の作業がなかったことになります。排他制御は、この食い違いを防ぐために、誰かが扱っている間は他の人をいったん待たせる仕組みです。ですから必要になるのは、複数の人が同時に書き換えうるデータということになります。待たせる以上、処理が速くなることはありませんし、待たせる範囲を広げれば巻き込まれる人が増えて、かえって全体は遅くなります。判定の軸は、何のために掛けるのかという目的の置き方と、掛けることで速くなるのか遅くなるのかという向きの二点です。
ほかの選択肢はなぜ違うのか
- アアクセス頻度の高いデータの処理速度を上げ…:よく読み書きされるデータを速く処理するために掛けると述べています。掛けている間は他を待たせることになるので、速さを得るための手立てではなく、むしろ待ち時間を生む側です。
- イ処理速度を上げるため,排他制御を行うデー…:速さを求めて掛ける範囲を大きくせよと述べています。範囲を広げるほど巻き込まれて待つ相手が増えるので、向きが逆で、速さを求めるなら必要な分だけに絞り込むのが筋です。
- ウデータアクセス時のデッドロックを防止する…:互いに相手の解放を待ち合って先へ進めなくなる状態を、これで防げるとしています。その状態はまさに待たせ方の組み合わせから生まれるものなので、掛けること自体が予防にはなりません。
この問題の用語
- 排他制御同じデータを同時に更新しても、矛盾が起きないようにする仕組みです。先の処理が終わるまで、後の処理を待たせて防ぎます。
- DBMSデータベースを管理するソフト。複数の処理が同じデータを同時に更新しても矛盾しないよう、排他制御などを行います。
出典:平成24年度 春期 基本情報技術者試験 午前 問33
同じ用語が出る問題
- 令和6年度 科目A 問7:原子性に関する問題(DBMS)
- 平成30年度 春期 午前 問27(DBMS)
- 平成29年度 春期 午前 問28(排他制御)
- 平成28年度 春期 午前 問30:トランザクションに関する問題(排他制御)
- 平成25年度 春期 午前 問30:排他制御のロック獲得の可能性(排他制御)
この解説に誤りを見つけたら教えてください。直して、直した記録を残します。誤りを報告する(メールが開きます)