log file syncとは

log file syncはサーバープロセスがlgwrがREDOログへ書き込むのを待機する間に発生するイベントです。 この待機イベントはフォアグラウンドプロセス(専用サーバプロセスや共有サーバプロセス等ユーザのSQLを実行するプロセス)固有の待機イベントであり、 REDOログに対して書き込みを行うlgwrがREDOログに対して書き込みを待機する時間はlog file parallel writeとして計上されます。 log file parallel writeに対してlog file syncが非常に長い場合複数セッションから更新、commitを並行して実施しているなどのケースが想定されます。


対策

REDOログへの書き込み時間が問題で発生するイベントであるため以下のような対策を検討します。
・REDOログファイルを配置するDISKがREDO専用ではない場合専用のDISKにする
・REDOログファイルをより高速なDISKに配置する
・commit頻度が高い場合はcommitの間隔を長くし、REDOログへの一回当たりの書き込みサイズを大きくする

TIPS

・lgwrがcommitの書き込みを実施している最中に複数のcommit要求が発行された場合、次回の書き込み時に溜まった複数のcommt要求を一度に書き出すことがあります。 したがって、log file syncの待機回数よりもlog file parallel write <の待機回数が大幅に少ない状況になる場合もあります。
・lgwrがredoログを書き込む処理はDBインスタンスレベルで直列の動作になります。あまりにもcommit要求頻度やredo生成量が多いとこの部分が性能ボトルネックになります。
★ORACLE案件承ります