Wait Eventsの見方とは
STATSPACKの中のWait Eventsとは何か、どのように分析すればパフォーマンス改善に有効かを解説します
Wait Eventsとは
Wait EventsとはForeground及びBackgroundの待機イベントに関する情報です。Oracleデータベースでは様々な待機イベントがあります。プリセスに関するイベントやメモリ(バッファキャッシュ)に関するイベント、I/Oに関するイベント等、数多く存在します
その中でもパフォーマンス・チューニングに必要な代表的な待機イベントは以下の通りです
latch freeとは
プロセスは、現在ビジー状態の(別のプロセスによって保持されている)ラッチを待機しています
このWait Eventsが多数出たらパフォーマンス上要注意です
latch: cache buffers chainsとは
バッファ・キャッシュを使うためハッシュ・チェーンのラッチ獲得を待機しています
上記同様、このWait Eventsが多数出たらパフォーマンス上要注意です
buffer busy waitsとは
バッファが使用可能になるまでの待機イベントです
バッファを確保できない原因としては以下のような事象が考えられます
1.別のセッションがバッファを確保している
2.別のセッションがディスクからバッファを読取り中である
3.別のセッションが別のインスタンスのキャッシュからバッファを読取り中である
4.別のインスタンスの別のセッションが、バッファを確保できるように、このキャッシュからバッファを自身のキャッシュに取得中である
control file sequential readとは
制御ファイルからの読取り中に発生するイベントです
例えば次のような場合です
1.制御ファイルのバックアップ中
2.(インスタンス間での)制御ファイルの情報の共有中
3.制御ファイルからの他のブロックの読取り中
4.ヘッダー・ブロックの読取り中
db file sequential readとは
データベースからの順次読取りが実行されている間の待機イベントです。この待機イベントが頻繁に出ているようであれば対象オブジェクトの使われ方に問題がないか確認します
db file scattered readとは
db file sequential readと似ていますが、セッションは複数のデータ・ブロックを読み込んでいる時の待機イベントです
log file syncとは
LGWR(ログライター)が正常にREDOエントリを書きだすまでの待機イベントです。大量に更新をする場合は出現する可能性があります。更新が適切か確認します
log file parallel writeとは
セッションが物理ブロックをすべての制御ファイルに書き込んでいるときに発生するイベントです
pmon timerとは
PMON(プロセスモニター)の主要な待機イベントです
PMONがアイドル状態の場合、このイベントを待機します
smon timerとは
SMON(システムモニター)の主要なアイドル・イベントです
SMONは、タイムアウトするか、別のプロセスによって転送されるまでの大部分の時間、このイベントを待機します
STATSPACKの参考例
実際のSTATSPACKを出力した場合の参考例です
One thought on “Wait Eventsの見方”-
ピンバック: STATSPACK – データベース研究室
Comments are closed.