
COMMIT WRITE - 日本エクセム株式会社 Oracleパラメータ
SQLチューニングのためには、そのSQLがどのように動いていて、データベースにどのように影響しているのか、を把握する必要があります。『MaxGauge』があれば簡単に状況が把握でき、適切なSQLチューニングができるようになります。
『MaxGauge』の資料はこちらから。
基本情報
Parameter情報
説明
TransactionのCommitの実行時にRedo Writeを実行する方法を決定します。ユーザーがCommitを実行すると、OracleはRedo Bufferの変更履歴をRedo Logに即座に(IMMEDIATE)記録し、実際のRedo Logに記録されるまで待ちます(WAIT)。この実行方法は、ユーザーによるデータの変更履歴がRedo Logに記録されて事後Recoveryに使用することがあることを100%保証するためです。 COMMIT_WRITEパラメータを使用すると、これらのRedo Log記録方式を変更することができます。可能な組み合わせは、以下の通りです。
注意
COMMIT_WRITEとOLTP/ DSS
OLTP環境では、COMMIT_WRITEパラメータを変更してはいけません。BATCHやNOWAITモードのCommitでRedo Logにデータが正確に保存される保証がないため、異常終了時のデータの整合性を保証することはできないのです。
DSS環境では、データの細かい整合性が不要な場合が多いため、パフォーマンスを向上させるために、このパラメータを積極的に活用することができます。
PL/SQLのAsynchronous Commit
PL/SQLブロック内のCommit要求はまるでBATCH、NOWAITモードのCOMMIT_WRITEパラメータを使用するのと同じ効果があります。これAsynchronous Commitと呼びます。したがってバッチジョブを処理する場合には、PL/SQLを使用することが性能面で有利です。
関連情報
SQLチューニングのためには、そのSQLがどのように動いていて、データベースにどのように影響しているのか、を把握する必要があります。『MaxGauge』があれば簡単に状況が把握でき、適切なSQLチューニングができるようになります。
『MaxGauge』の資料はこちらから。