説明
この構成パラメータは、V3.2.3 BP10バージョンから導入されました。
機能の概要
optimizer_index_cost_adjは、オプティマイザーがインデックススキャンのコストを計算する際に統計情報コストの割合を制御します。
権限要件
パラメータの確認
sysテナントとMySQLユーザーテナントはSHOW PARAMETERSステートメント、またはGV$OB_PARAMETERSビューを使用してこのパラメータを確認できます。パラメータの変更
sysテナントとMySQLユーザーテナントはこの構成パラメータを変更できます。
プロパティの説明
プロパティ |
説明 |
|---|---|
| パラメータタイプ | Int |
| デフォルト値 | 0 |
| 値の範囲 | [0,100]
説明使用時の値は10に設定することを推奨します。他の値に調整する必要がある場合は、テクニカルサポートにお問い合わせください。 |
| 変更は可能か | はい。ALTER SYSTEM SETステートメントを使用して変更できます。 |
| OBServerノードの再起動が必要か | 不要です。設定は即時に反映されます。 |
使用方法
業務インデックスにデータの偏りが存在するシナリオでこの構成パラメータの使用を推奨します:
- 値が0の場合、オプティマイザーはストレージ層の推定行情報のみを使用してインデックススキャンのコストを計算します。
- 値が10の場合、オプティマイザーは統計情報コストの10%とストレージ層情報コストの90%を加算した値をインデックススキャンのコストとして使用します。
- 値が100の場合、オプティマイザーは統計情報のみを使用してインデックススキャンのコストを計算します。
設定例
システムテナント
すべてのテナントのインデックス選択最適化機能を無効にする:
obclient> ALTER SYSTEM SET optimizer_index_cost_adj=0 tenant=all_user;インデックス選択最適化を有効にする:
obclient> ALTER SYSTEM SET optimizer_index_cost_adj=10 tenant=all_user;
MySQLテナント
現在のテナントのインデックス選択最適化機能を無効にする:
obclient> ALTER SYSTEM SET optimizer_index_cost_adj=0;インデックス選択最適化を有効にする:
obclient> ALTER SYSTEM SET optimizer_index_cost_adj=10;
Oracleテナント
インデックス選択最適化を無効にする:
obclient> ALTER SYSTEM SET "optimizer_index_cost_adj"=0;インデックス選択最適化を有効にする:
obclient> ALTER SYSTEM SET "optimizer_index_cost_adj"=10;