R3PM1問2設問1(2)
こころっちさん
(No.1)
令和3年度秋期データベーススペシャリスト資格試験の午後1問2の設問1(2)について質問です。
問題の意図としては、バッファヒット率を100%にする改善案を考えた場合に、索引探索でランダムアクセスのときは時間短縮が見込まれ、表探索で順次アクセスの場合は処理時間に影響しないため時間短縮が見込まれないということだと思います。以下質問です。
1.アクセス経路が順次アクセスの場合は、バッファにデータを保存しても時間短縮が見込まれないのでしょうか?
2.また今回の問題の場合は、順次アクセスの場合はSQL処理時間はCPU処理時間と非同期データ入出力時間の最大値をとるため、SQL処理時間は変わらないからという回答も正しいように思えるのですがいかがでしょうか?
3.順次アクセスの場合でも、バッファヒット率を100%にしたとき、ディスクとのI/Oがなくなりメモリへのアクセスになるため時間短縮が見込まれると思うのですがいかがでしょうか?
問題の意図としては、バッファヒット率を100%にする改善案を考えた場合に、索引探索でランダムアクセスのときは時間短縮が見込まれ、表探索で順次アクセスの場合は処理時間に影響しないため時間短縮が見込まれないということだと思います。以下質問です。
1.アクセス経路が順次アクセスの場合は、バッファにデータを保存しても時間短縮が見込まれないのでしょうか?
2.また今回の問題の場合は、順次アクセスの場合はSQL処理時間はCPU処理時間と非同期データ入出力時間の最大値をとるため、SQL処理時間は変わらないからという回答も正しいように思えるのですがいかがでしょうか?
3.順次アクセスの場合でも、バッファヒット率を100%にしたとき、ディスクとのI/Oがなくなりメモリへのアクセスになるため時間短縮が見込まれると思うのですがいかがでしょうか?
2022.10.07 10:01
yunaさん
(No.2)
順次アクセスの場合でも、テーブルのバッファヒット率100%にすると、非同期データ入出力処理時間は短縮されると考えられます。
しかし、順次アクセスの場合はSQL処理時間はCPU処理時間と非同期データ入出力時間の最大値をとるため、
SQL処理時間としては変わらないというわけです。
2ですが合っています。25字以内なのでよりシンプルにかかなくてはいけないですが。
しかし、順次アクセスの場合はSQL処理時間はCPU処理時間と非同期データ入出力時間の最大値をとるため、
SQL処理時間としては変わらないというわけです。
2ですが合っています。25字以内なのでよりシンプルにかかなくてはいけないですが。
2022.10.07 22:22
にゃんちゃんさん
★DB シルバーマイスター
(No.3)
>1.アクセス経路が順次アクセスの場合は、バッファにデータを保存しても時間短縮が見込まれないのでしょうか?
まったくの無駄ではないですが、テーブルサイズ9,600GBに対して、多少バッファを増やしたところで焼け石に水という感じはあります。
バッファでどうにかするよりも、そもそものデータベース設計(インデックスや物理分割)やクエリの書き方など見直した方がよさそうです。
>2.また今回の問題の場合は、順次アクセスの場合はSQL処理時間はCPU処理時間と非同期データ入出力時間の最大値をとるため、SQL処理時間は変わらないからという回答も正しいように思えるのですがいかがでしょうか?
物理I/O時間が圧倒的に長くなるので、おそらく
SQL処理時間≒非同期データ入出力時間
になるんだとは思います。
ただ、本問で聞かれているのは「バッファを増やす前後でSQL処理時間(非同期データ入出力時間)がほとんど変わらないのは何で?」ということなので、その答えにはなってないと思います。
>3.順次アクセスの場合でも、バッファヒット率を100%にしたとき、ディスクとのI/Oがなくなりメモリへのアクセスになるため時間短縮が見込まれると思うのですがいかがでしょうか?
テーブルのバッファヒット率100%にすれば、圧倒的時間短縮になりそうです。
が、何せテーブルサイズ9,600GBなのでそれを丸ごとぶちこむメモリを用意しようというのはかなり無理がありそうです。
2022.10.07 22:37
返信投稿用フォーム
スパム防止のためにスレッド作成日から30日経過したスレッドへの投稿はできません。