次の方法で共有


evaluate プラグイン演算子

適用対象: ✅Microsoft FabricAzure データ エクスプローラー

サービス側クエリ拡張機能 (プラグイン) を呼び出します。

evaluate演算子は表形式の演算子であり、plugins と呼ばれるクエリ言語拡張機能を呼び出すことができます。 他の言語コンストラクトとは異なり、プラグインは有効または無効にすることができます。 プラグインは、言語のリレーショナル特性によって "バインド" されません。 つまり、定義済みの静的に決定された出力スキーマがない可能性があります。

Note

  • 構文的には、evaluate は、表形式関数を呼び出す呼び出し演算子と同様に動作します。
  • evaluate 演算子を使用して提供されるプラグインは、クエリの実行または引数評価の通常の規則によってバインドされることはありません。
  • 特定のプラグインには、特定の制限がある場合があります。 たとえば、出力スキーマがデータに依存するプラグインなどです。 たとえば、 bag_unpack プラグイン および pivot プラグイン は、クロスクラスター クエリを実行するときに使用できません。

構文

[T |] evaluate [ evaluateParameters ] PluginName ([ PluginArgs ])

構文規則について詳しく知る。

パラメーター

件名 タイプ Required 説明
T string プラグインへの表形式の入力。 一部のプラグインは入力を受け取らないので、表形式のデータ ソースとして機能します。
evaluateParameters string 評価操作と実行プランの動作を制御する Name = Value の形式で 0 個以上のスペース区切り評価パラメーター。 各プラグインでは、各パラメーターの処理方法が異なる場合があります。 特定の動作については、各プラグインのドキュメントを参照してください。
PluginName string ✔️ 呼び出されるプラグインの必須名。
PluginArgs string プラグインに提供する 0 個以上のコンマ区切り引数。

パラメーターの評価

サポートされているパラメーターは次のとおりです。

Name Values 説明
hint.distribution singleper_nodeper_shard 分散のヒント
hint.pass_filters true, false 演算子 evaluate に、プラグインの前に一致するフィルターをパススルーすることを許可します。 フィルターは、演算子 evaluate の前に既存の列を参照する場合、「一致」と見なされます。 既定値: false
hint.pass_filters_column column_name プラグイン演算子が、プラグインの前の column_name を参照するフィルターをパススルーすることを許可します。 パラメーターは、異なる列名で複数回使用できます。

プラグイン

次のプラグインがサポートされています。

分散のヒント

配布のヒントは、プラグインの実行を複数のクラスター ノードに配布する方法を指定します。 各プラグインは、配布に対して異なるサポートを実装することができます。 プラグインのドキュメントでは、プラグインでサポートされている配布オプションが明記されています。

指定できる値

  • single: プラグインの 1 つのインスタンスがクエリ データ全体で実行されます。
  • per_node: プラグイン呼び出しの前のクエリがノード間で配布されている場合、プラグインのインスタンスは、含まれるデータに対して各ノードで実行されます。
  • per_shard: プラグインを呼び出す前のデータがシャードに配布されている場合、プラグインのインスタンスはデータの各シャード上で実行されます。