カテゴリ:

システム関数

SYSTEM$ESTIMATE_QUERY_ACCELERATION

以前に実行されたクエリの場合、この関数は、クエリが Query Acceleration Service のメリットを受ける資格があるかどうかを指定する JSON オブジェクトを返します。クエリがクエリアクセラレーションの対象である場合、出力には、さまざまなクエリアクセラレーションのスケールファクターの推定クエリ実行時間が含まれます。

こちらもご参照ください。

QUERY_ACCELERATION_ELIGIBLE ビュー

構文

SYSTEM$ESTIMATE_QUERY_ACCELERATION( '<query_id>' )
Copy

パラメーター

query_id

クエリID。クエリIDは、過去14日以内に実行されたクエリに対するものである必要があります。それ以外の場合、 statusinvalid です。

出力

この関数は、以下に説明するプロパティを持つ JSON オブジェクトを返します。

プロパティ

説明

estimatedQueryTimes

さまざまなクエリアクセラレーションのスケールファクターの推定クエリ実行時間を秒単位で含むオブジェクト。クエリの status が、クエリアクセラレーションに対して eligible ではない 場合、このオブジェクトは空です。

ineligibleReason

Snowflakeがクエリに QAS を使用しなかった理由の説明。たとえば、クエリがテーブルスキャンを実行しない場合や、QAS を価値あるものにする十分な量のデータをスキャンしない場合、理由は NO_LARGE_ENOUGH_SCAN としてリストされます。

originalQueryTime

元のクエリの実行時間(秒単位)。

queryUUID

クエリID。

status

クエリがQuery Acceleration Serviceのメリットを受ける資格があるかどうかを示す、次の値のいずれか。

eligible

クエリは、クエリアクセラレーションのメリットを受けることができます。

ineligible

クエリは、クエリアクセラレーションのメリットを受けることができません。

accelerated

クエリはすでに高速化されています。

invalid

指定された ID のクエリが見つかりませんでした。

upperLimitScaleFactor

estimatedQueryTimes オブジェクトにある最大クエリアクセラレーションのスケールファクターの数。クエリの status がクエリアクセラレーションに対して eligible ではない 場合、このフィールドは 0 に設定されます。

estimatedQueryTimes オブジェクトでは、名前と値の各ペアが、クエリアクセラレーションの スケールファクター とそのスケールファクターでの推定クエリ実行時間を指定します。

次の例は、スケールファクター 124、および 8 の推定クエリ実行時間をリストしています。

...
"estimatedQueryTimes" : {
  "1" : 171,
  "2": 152,
  "4": 133,
  "8": 120
}
...
Copy

使用上の注意

  • 推定クエリ時間は分析のみを目的としており、保証されていません。

  • 推定クエリ時間は、スケールファクターに基づき、Query Acceleration Serviceによって割り当てられたすべてのコンピューティングリソースによってクエリが処理されるという仮定に基づいて計算されます。

  • 推定クエリ時間は、同時実行性を考慮していません。

クエリの例については、 SYSTEM$ESTIMATE_QUERY_ACCELERATION関数を使用したクエリの識別 をご参照ください。