データベーススペシャリスト平成23年特別 午前Ⅱ 問23

問23

磁気ディスクのレコードを,直接アクセスで検索するプログラムがある。このアクセス時間の大部分は,位置決め時間と回転待ち時間と転送時間から成る。ブロック長と検索時間の関係に関する説明のうち,適切なものはどれか。ここで,位置決め時間と回転待ち時間はブロック長に依存せず,同一ブロック内の複数レコードを同時に直接アクセスで検索することはないものとする。
  • ブロック長を大きくしても,1レコード当たりの転送時間は一定であるので,検索時間は変わらない。
  • ブロック長を大きくすると,1ブロック当たりのレコード数が増えるので,検索時間は短くなる。
  • ブロック長を大きくすると,ブロックの転送時間が長くなり,その分だけ検索時間は長くなる。
  • ブロック長を調整するよりも,ディスクキャッシュを導入する方が,検索時間短縮に効果的である。

分類

テクノロジ系 » コンピュータ構成要素 » 入出力装置

正解

解説

磁気ディスク装置の1つのブロックには複数のレコードが格納されています。磁気ディスクはブロック単位で読書きを行うため、たとえ必要なデータが1レコードだけだとしても1ブロックの転送処理が伴います。このためブロック長を大きくするとディスクアクセス1回当たりの転送時間は長くなります。

「検索時間=位置決め時間+回転待ち時間+転送時間」で、このうち位置決め時間と回転待ち時間はブロック長に依存しません。したがってブロック長が大きくなり転送時間が増加した場合には、単純に検索1回当たりの時間も増加することになります。
したがって正しい記述は「ウ」です。
  • 1レコード当たりの転送時間は一定ですが、ブロック単位でのアクセスのため1ブロックの転送に要する時間が増加します。
  • 検索対象の複数のレコードが1つのブロック内に格納されていた場合には検索時間の短縮に繋がりますが、この設問では同一ブロック内の複数ブロックを同時に検索することはないとされているため誤りです。
  • 正しい。
  • ディスクキャッシュは同じレコードを繰り返し検索する場合には効果を発揮しますが、ランダムな検索では効果を期待できません。
© 2016-2024 データベーススペシャリストドットコム All Rights Reserved.

Pagetop