説明
この変数はV4.4.2 BP2バージョンから導入されました。
機能の概要
ob_udf_cost_factorはUDF句のコスト係数を設定します。
権限要件
クエリ変数
グローバルレベル
sysテナントとすべてのユーザーテナントはSHOW VARIABLESステートメント、またはSYS.TENANT_VIRTUAL_GLOBAL_VARIABLEビュー(Oracleモード)およびinformation_schema.GLOBAL_VARIABLESビュー(MySQLモード)を使用してグローバルシステム変数の値を確認できます。セッションレベル
sysテナントとすべてのユーザーテナントはSHOW VARIABLESステートメント、またはSYS.TENANT_VIRTUAL_SESSION_VARIABLEビュー(Oracleモード)およびinformation_schema.SESSION_VARIABLESビュー(MySQLモード)を使用してセッションシステム変数の値を確認できます。
変数の変更
グローバル有効
sysテナントはグローバルシステム変数の値を直接変更できます。MySQLユーザーテナントは
SUPERまたはALTER SYSTEM権限が必要です。Oracleユーザーテナントは
ALTER SYSTEM権限が必要です。
セッション有効
sysテナントとすべてのユーザーテナントは、自身のテナントに属するセッションシステム変数の値を直接変更できます。
プロパティの説明
プロパティ |
説明 |
|---|---|
| パラメータタイプ | Int |
| デフォルト値 | 100 |
| 値の範囲 | [1, 10000000] |
| 適用範囲 |
|
| 変更は可能か | はい。SETステートメントを使用して変更できます。 |
使用方法
この変数はUDF述語のコスト係数を調整するために使用され、オプティマイザーが述語の実行順序を決定する際の判断に影響します。コスト係数は、UDF述語が各行を処理する際の実際の実行コストを表し、UDF述語の実際の状況に応じて設定できます。通常はデフォルト値の100を使用すれば十分です。
設定例
UDF述語のコスト係数を100000に設定します。
グローバル適用
obclient> SET GLOBAL ob_udf_cost_factor = 100000;セッション適用
obclient> SET ob_udf_cost_factor = 100000;