パフォーマンス統計の読み方
recursive calls 再帰SQL文の実行回数。
再帰SQL文とは?:ユーザが出したSQLを、Oracleが解析する時に発行するSQL文。
db block gets 現行モードでアクセスしたバッファーキャッシュのブロック数。
現行モードでは、ブロックは更新の為にアクセスされる。
メモリへの論理的なアクセスです。
consistent gets 一貫モードでアクセスしたバッファーキャッシュのブロック数。
一貫モードでは、ブロックの内容は他のセッションの影響を受けない。
メモリへの論理的なアクセスです。
physical reads ディスク上にアクセスしたブロック数。
ディスクへの物理的なアクセスです。
redo size 育成したREDOログのバイト数。
bytes sent via SQL*Net to client クライアントへ送信したバイト数。
bytes received via SQL*Net from clinet クライアントから受信したバイト数。
SQL*Net roundtrips to/from clinet クライアントへ送受信したメッセージ数。
sorts(memory) メモリ内でソートした回数。
sorts(disk) ディスク上の一時表領域内でソートした回数。
rows processed 処理された行数。
チューニングの必要は?
1行を処理する為にアクセスしたブロック数
(db block gets + consistent gets) / rows processed
この値が大きい場合は、効率的な実行計画が作成されていない。
インデックスの見直し、ヒントの使用などチューニングしよう。
バッファキャッシュのヒット率
1 - physical reads / (db block gets + consistent gets)
この値が90%を下回る場合は、設定ファイルのDB_BLOCK_BUFFERSの値を増やす。
ソート(sorts(disk))
sorts(disk)が1以上の場合は、メモリ上でのソート領域が足りない為、ディスク上で行われています。
設定ファイルのSORT_AREA_SIZEを大きくする。
但し、サーバプロセス毎に確保されるので注意する事。
専用サーバでは、接続中のクライアント数だけサーバプロセスが起動します。
recursive calls 再帰SQL文の実行回数。
再帰SQL文とは?:ユーザが出したSQLを、Oracleが解析する時に発行するSQL文。
db block gets 現行モードでアクセスしたバッファーキャッシュのブロック数。
現行モードでは、ブロックは更新の為にアクセスされる。
メモリへの論理的なアクセスです。
consistent gets 一貫モードでアクセスしたバッファーキャッシュのブロック数。
一貫モードでは、ブロックの内容は他のセッションの影響を受けない。
メモリへの論理的なアクセスです。
physical reads ディスク上にアクセスしたブロック数。
ディスクへの物理的なアクセスです。
redo size 育成したREDOログのバイト数。
bytes sent via SQL*Net to client クライアントへ送信したバイト数。
bytes received via SQL*Net from clinet クライアントから受信したバイト数。
SQL*Net roundtrips to/from clinet クライアントへ送受信したメッセージ数。
sorts(memory) メモリ内でソートした回数。
sorts(disk) ディスク上の一時表領域内でソートした回数。
rows processed 処理された行数。
チューニングの必要は?
1行を処理する為にアクセスしたブロック数
(db block gets + consistent gets) / rows processed
この値が大きい場合は、効率的な実行計画が作成されていない。
インデックスの見直し、ヒントの使用などチューニングしよう。
バッファキャッシュのヒット率
1 - physical reads / (db block gets + consistent gets)
この値が90%を下回る場合は、設定ファイルのDB_BLOCK_BUFFERSの値を増やす。
ソート(sorts(disk))
sorts(disk)が1以上の場合は、メモリ上でのソート領域が足りない為、ディスク上で行われています。
設定ファイルのSORT_AREA_SIZEを大きくする。
但し、サーバプロセス毎に確保されるので注意する事。
専用サーバでは、接続中のクライアント数だけサーバプロセスが起動します。