
OPTIMIZER PUSH PRED COST BASED - 日本エクセム株式会社 Oracleパラメータ
SQLチューニングのためには、そのSQLがどのように動いていて、データベースにどのように影響しているのか、を把握する必要があります。『MaxGauge』があれば簡単に状況が把握でき、適切なSQLチューニングができるようになります。
『MaxGauge』の資料はこちらから。
基本情報
Parameter情報
説明
Push PredicateをCost basedで行うかどうかを指定します。Cost Based Push Predicateは10gで導入された概念で、既定値は常にTrueです。Oracle9iまではOracleは、可能な常にPush Predicateを試みます。しかし、10gからコスト(Cost)を考慮して、Push Predicateの発生が負荷を減らすのに役立つ場合にのみPush Predicateを実行する。
注意
実行計画以上のCost Based Push Predicate
9iのバージョンで正常にPush Predicateが行われるクエリが10gでPush Predicateが発生しないことがある。統計情報が正確であれば、Oracleのほとんどの場合、最適の判断をするが、時折、特定のクエリの場合には、Push Predicateが行われないことにより、非効率的な実行計画に変わることがある。このような場合には、_OPTIMIZER_PUSH_PRED_COST_BASEDパラメータの値をFALSEに変更したり、OPT_PARAMヒントを利用して、そのパラメータをStatementレベルで変更する必要がある。
関連情報
SQLチューニングのためには、そのSQLがどのように動いていて、データベースにどのように影響しているのか、を把握する必要があります。『MaxGauge』があれば簡単に状況が把握でき、適切なSQLチューニングができるようになります。
『MaxGauge』の資料はこちらから。