パフォーマンスに関する問題が発生した場合、実行計画の問題や実行時の容量問題を除外できれば、その可能性が高いのは内部待機問題です。内部待機問題とは、ワーカースレッドが特定のリソースを待機している状態を指します。例えば、以下のようなリソースが該当します:
ロック
ラッチ
I/O
メモリ
V$OB_SQL_AUDITビューを使用して、内部待機問題かどうかを判断します。このビューには、明らかにEXECUTE_TIMEの消費時間が増加しているSQL文が存在し、そのEXECUTE_TIMEの大部分がTOTAL_WAIT_TIME_MICROの増加によるものです。TOTAL_WAIT_TIME_MICROはAPPLICATION_WAIT_TIME、CONCURRENCY_WAIT_TIME、USER_IO_WAIT_TIME、SCHEDULE_TIMEなどの部分から構成されており、さらに詳細なクエリを実行することで、ワーカースレッドが待機しているリソースのタイプを特定できます。
説明
V$OB_SQL_AUDITの詳細については、V$OB_SQL_AUDIT(Oracleモード)およびV$OB_SQL_AUDIT(MySQLモード)を参照してください。