前回In-Memory PQはdirect path readではなくてsequential readとscattered readでbuffer_cacheに読み込むと書いた。
今回のシナリオは、
![]() |
| 同時4セッションで」のhammerora TPC-Hを動かした状況で |
ASH Viewerでみると、scatterd readとsequential readの待ちが多く発生している。
read by other sessionのコンテンションが際立っている(前回の新久保君のコメント通り)。
もう少しデータを増やしてみると:
memory_targetで指定した領域が足りなくなり、3セッションがdirect path readでbuffer_cacheを使わないParallel Queryを行うように変わった。
こんな状況になってたら(#572406;">cache buffers chainsラッチミス より):
■データ量に「見合わない」実メモリしか積んでいないと「あきらめる」
■In-Memory Parallel Queryを使わない。pararell_degree_policy=MANUALに戻す。
■或いは、Partition化してbuffer_cacheに収まるサイズに縮小する
前回は、強引に「cache buffers chainsラッチミスが慢性的に発生しているときは」と書いてしまったけど、In-Memory Parallel Queryが使えない状況をLatch Timeoutのような「いち」現象から言い当てるのは難しいです。
なぜならば、AUTO指定でParallel Queryが動いたとたん、待機要素のパーセンテージはdirect path readに独占されるからです。(テストで使用しているSSD x 4のRAID0は、何度も書いていますが、520MB/sでデータ転送をしているのにも拘らずです。)
Recent comments
5 days 23 hours ago
1 week 16 hours ago
1 week 20 hours ago
1 week 21 hours ago
6 weeks 1 day ago
6 weeks 2 days ago
7 weeks 2 days ago
11 weeks 2 days ago
17 weeks 14 hours ago
19 weeks 5 days ago