- カテゴリ:
システム関数 (システム情報)
SYSTEM$ESTIMATE_SEARCH_OPTIMIZATION_COSTS¶
指定されたテーブルに 検索最適化 を追加し、検索最適化用の特定の列を構成するための推定コストを返します。
重要
The values returned by the SYSTEM$ESTIMATE_SEARCH_OPTIMIZATION_COSTS function are best-effort estimates based on sampling a partial dataset in the table. The estimated costs can vary significantly (up to 50% or, in rare cases, by several times) from the actual realized costs.
構文¶
SYSTEM$ESTIMATE_SEARCH_OPTIMIZATION_COSTS('<table_name>' [ , <search_method_with_target> ])
引数¶
table_name
検索最適化コストを見積もるテーブル。
テーブル名が完全修飾されていない場合(
db_name.schema_name.table_name
またはschema_name.table_name
の形式)、関数はセッションの現在のスキーマにあるテーブルを探します。名前全体を一重引用符で囲む必要があります。
search_method_with_target
列構成 の 検索方法とターゲット を指定します。
出力¶
この関数は、以下に説明するプロパティを持つ JSON オブジェクトを返します。
プロパティ |
説明 |
---|---|
|
テーブルの名前。 |
|
テーブルに検索最適化プロパティが設定されている場合は |
|
テーブルに検索最適化を追加するための予測コストを説明する、オブジェクトの配列。 |
costPositions
配列の各オブジェクトは、異なるタイプのコスト見積もりを表します。
...
"costPositions" : [
{
"name" : "BuildCosts",
...
}, {
"name" : "StorageCosts",
...
}, {
"name" : "Benefit",
...
}, {
"name" : "MaintenanceCosts",
...
}
]
...
name
プロパティは、オブジェクトが表すコストのタイプを識別します。 name
は次のいずれかです。
|
説明 |
---|---|
|
このオブジェクトは、テーブルの検索アクセスパスを構築するための予測コストを記述します。検索最適化がすでにテーブルに追加されている場合、このオブジェクトにはコスト情報が含まれません。 |
|
このオブジェクトは、テーブルの検索アクセスパスに必要な予測ストレージ容量(単位: TB)を記述します。 . 検索最適化がすでにテーブルに追加されている場合、このオブジェクトは検索アクセスパスで使用されている現在の容量を示します。 |
|
現時点では、このオブジェクトにはコスト情報が含まれていません。 |
|
このオブジェクトは、テーブルの検索アクセスパスを維持するための予測コストを記述します。このテーブルが最近作成された場合、このオブジェクトにはコスト情報が含まれていません。 |
costPositions
配列の各オブジェクトは、次のプロパティを持つことができます。
プロパティ |
説明 |
---|---|
|
このオブジェクトが表すコスト情報のタイプを識別する 名前。 |
|
次のプロパティの観点から予測コストを説明するオブジェクト。 |
value |
予測コストの金額。 |
unit |
コストの測定単位(例:コンピューティングコストの「クレジット」、ストレージコストの「TB」)。 |
perTimeUnit |
メンテナンスコストの場合、見積もりコストがカバーする時間の単位(たとえば、月あたりのコストの |
|
複数の方法が利用可能な場合、コストの見積もりに使用される方法。 |
|
推定コストに関する追加情報。 |
使用上の注意¶
構築コストの場合、この関数は、指定されたテーブルにあるデータのサンプルに対する検索アクセスパスの構築に基づいた概算を返します。
メンテナンスコストの場合、この関数は、テーブルに加えられた最近の変更(時間の経過に伴うバイトの変更)に基づいて見積もります。
関数を呼び出すには、使用中のウェアハウスが必要です。現在使用中のウェアハウスがない場合、関数は次のエラーを報告します。
No active warehouse selected in the current session. Select an active warehouse with the 'use warehouse' command.
この機能を実行するには、XSウェアハウスを使用できます。 ウェアハウスのサイズ は、この機能の速度とパフォーマンスに影響を与えません。
関数はウェアハウスを使用するため、関数のウェアハウスの使用に対して請求があります。
この機能は、完了するまでに20秒から10分の範囲で時間のかかる場合があります。
上記のように、より大きなウェアハウスサイズを使用しても、この関数の実行が速くなることはありません。
例¶
次の例は、テーブルに検索最適化を追加する場合の推定コストを示しています。
select SYSTEM$ESTIMATE_SEARCH_OPTIMIZATION_COSTS('TABLE_WITHOUT_SEARCH_OPT'); +---------------------------------------------------------------------------+ | SYSTEM$ESTIMATE_SEARCH_OPTIMIZATION_COSTS('TABLE_WITHOUT_SEARCH_OPT') | |---------------------------------------------------------------------------| | { | | "tableName" : "TABLE_WITHOUT_SEARCH_OPT", | | "searchOptimizationEnabled" : false, | | "costPositions" : [ { | | "name" : "BuildCosts", | | "costs" : { | | "value" : 11.279, | | "unit" : "Credits" | | }, | | "computationMethod" : "Estimated", | | "comment" : "estimated via sampling" | | }, { | | "name" : "StorageCosts", | | "costs" : { | | "value" : 0.070493, | | "unit" : "TB" | | }, | | "computationMethod" : "Estimated", | | "comment" : "estimated via sampling" | | }, { | | "name" : "MaintenanceCosts", | | "costs" : { | | "value" : 30.296, | | "unit" : "Credits", | | "perTimeUnit" : "MONTH" | | }, | | "computationMethod" : "Estimated", | | "comment" : "Estimated from historic change rate over last ~11 days." | | } ] | | } | +---------------------------------------------------------------------------+
次の例は、すでに検索最適化が行われているテーブルに対するこの関数の出力を示しています。
select SYSTEM$ESTIMATE_SEARCH_OPTIMIZATION_COSTS('TABLE_WITH_SEARCH_OPT'); +---------------------------------------------------------------------------+ | SYSTEM$ESTIMATE_SEARCH_OPTIMIZATION_COSTS('TABLE_WITH_SEARCH_OPT') | |---------------------------------------------------------------------------| | { | | "tableName" : "TABLE_WITH_SEARCH_OPT", | | "searchOptimizationEnabled" : true, | | "costPositions" : [ { | | "name" : "BuildCosts", | | "computationMethod" : "NotAvailable", | | "comment" : "Search optimization is already enabled." | | }, { | | "name" : "StorageCosts", | | "costs" : { | | "value" : 0.052048, | | "unit" : "TB" | | }, | | "computationMethod" : "Measured" | | }, { | | "name" : "Benefit", | | "computationMethod" : "NotAvailable", | | "comment" : "Currently not supported." | | }, { | | "name" : "MaintenanceCosts", | | "costs" : { | | "value" : 30.248, | | "unit" : "Credits", | | "perTimeUnit" : "MONTH" | | }, | | "computationMethod" : "EstimatedUpperBound", | | "comment" : "Estimated from historic change rate over last ~11 days." | | } ] | | } | +---------------------------------------------------------------------------+