Oracle8 Tuning
〜LRUラッチのヒット率〜
0.更新履歴
- 2001.01.22 新規作成
1.LRUラッチのヒット率
Oracleでは,データベースバッファキャッシュへの高速アクセスとして「ラッチ」という手法を利用している.
データベースバッファキャッシュにアクセスする前に,プロセスはラッチを取得する必要がある. ラッチが取得できない場合は,一定時間ウェイトしてリトライを行い,取得できるまでそれを繰り返す.
ラッチ獲得を何度も繰り返している場合はパフォーマンスがダウンするので,ラッチに関するヒット率でそれを確認する.
LATCH_NAME GETS MISSES HIT_RATIO SLEEPS SLEEPS/MISS ------------------ ----------- ----------- ----------- ----------- ----------- Active checkpoint 7986 2 1 0 0 Checkpoint queue l 766805 553 .999 95 .172 Token Manager 12220 0 1 0 0 begin backup scn a 1215 0 1 0 0 cache buffer handl 2 0 1 0 0 cache buffers chai 5311738 19 1 8 .421 cache buffers lru 581813 470 .999 32 .068 channel handle poo 3 0 1 0 0 channel operations 6 0 1 0 0 dml lock allocatio 7275 0 1 0 0 enqueue hash chain 71713 0 1 0 0 enqueues 133080 2 1 0 0 event group latch 3 0 1 0 0 job_queue_processe 837 0 1 0 0 ktm global data 24 0 1 0 0 library cache 195676 0 1 0 0 library cache load 634 0 1 0 0 list of block allo 4479 0 1 0 0 loader state objec 1782 0 1 0 0 longop free list 57 0 1 0 0 messages 55948 2 1 0 0 multiblock read ob 64636 0 1 0 0 ncodef allocation 837 0 1 0 0 process allocation 3 0 1 0 0 process group crea 1675 0 1 0 0 redo allocation 761136 131 1 0 0 redo writing 36501 4 1 0 0 row cache objects 66417 2 1 0 0 sequence cache 8 0 1 0 0 session allocation 1140 0 1 0 0 session idle bit 67491 0 1 0 0 session switching 836 0 1 0 0 session timer 2276 0 1 0 0 shared pool 24193 0 1 0 0 sort extent pool 110 0 1 0 0 transaction alloca 4868 0 1 0 0 transaction branch 836 0 1 0 0 undo global data 126627 1 1 0 0 user lock 8 0 1 0 0 virtual circuit qu 267 0 1 0 0 |
このHIT_RATIOがヒット率となる. この場合,ほとんど100%に近いヒット率となっている.
LATCH_NAME NOWAIT_GETS NOWAIT_MISSES NOWAIT_HIT_RATIO ------------------ ---------------- ---------------- ---------------- cache buffers chai 659701 241 1 cache buffers lru 370546 84 1 channel handle poo 5 0 1 channel operations 5 0 1 dispatcher configu 89 0 1 process allocation 3 0 1 process group crea 4 0 1 redo copy 743527 246 1 |
このNOWAIT_HIT_RATIOも100%なので問題ない.
ヒット率が悪い場合,DB_BLOCK_LRU_LATCHESパラメータをCPUと同じ数まで増やすことで,パフォーマンスが改善される可能性がある.
現在の設定は,show parametersで取得したパラメータを参照すると,2が設定されていることがわかる.(ちなみにこれをテストしているマシンは4CPUのマシン)