メトリクス ビューでパラメーターを使用する
パラメーターを使用すると、メトリクスビューをクエリーする際に値を渡すことができます。パラメーターを使用して、割引率や日付ウィンドウなど、さまざまな入力間で単一のメトリクスビュー定義を再利用します。フィルター、フィールドとメジャーの式、ソース、結合など、定数SQL式が有効な場所ならどこでもパラメーターを参照できます。ビューをクエリーする際に、値を引数として渡します。
パラメーターは重複を減らします。バリアントごとに個別のメトリクスビューを維持する代わりに、一度ロジックを定義し、各呼び出し元が独自の値を指定できるようにします。パラメーターにはdefault値を含めることができるため、引数を渡さない呼び出し元はdefaultにフォールバックします。
パラメーターを定義するメトリクスビューでは、現在マテリアライゼーションはサポートされていません。
要件
パラメーターを定義するメトリクスビューをクエリーするには、最小バージョン要件を満たすコンピュートリソースが必要です。最小コンピュートバージョン要件については、メトリクスビュー機能の可用性を参照してください。
パラメーターを定義
パラメーターは、Catalog Explorerローコードエディタで、またはYAMLで直接定義できます。パラメーターを作成したら、定数SQL式が有効な場所ならどこでも、フィルター、フィールドとメジャーの式、ソース、結合などで名前で参照します。
ローコードエディターでパラメーターを追加するには:
- エディターのヘッダーで、「 パラメーターを追加 」をクリックします。
- パラメーター名を入力します(例:
start_dateまたはoffset_int)。 - default値とデータ型を入力します。
- 保存 をクリックします。
パラメーターは、作成後にエディターの見出しに表示されます。
YAMLでパラメーターを定義するには、メトリクス ビュー定義にトップレベルのparametersブロックを追加します。完全なフィールドリファレンスとYAMLの例については、パラメーターを参照してください。
パラメーターを使用してメトリクスビューをクエリー
パラメーターを定義するメトリクスビューをクエリーするには、メトリクスビューをテーブル値関数として呼び出し、パラメーターを引数として渡します。引数を名前または位置で渡すことも、省略して default 値を使用することもできます。
名前で引数を渡す
名前で引数を渡すには、=>演算子を使用します。次の例では、discountの0.15値を渡します。
SELECT product, MEASURE(discountedSales)
FROM catalog.schema.metric_view(discount => 0.15)
GROUP BY product;
位置で引数を渡す
位置で引数を渡すには、パラメーターが定義されている順序で値をリストします。次の例では、0.15と同じdiscount値が渡されます。
SELECT product, MEASURE(discountedSales)
FROM catalog.schema.metric_view(0.15)
GROUP BY product;
デフォルトのパラメーター値を使用する
メトリクスビューを呼び出すときにdefaultのパラメーター値を使用するには、引数を省略します。次のクエリーは同等であり、すべてのdefault値を使用します。
SELECT product, MEASURE(discountedSales) FROM catalog.schema.metric_view() GROUP BY product;
SELECT product, MEASURE(discountedSales) FROM catalog.schema.metric_view GROUP BY product;
メトリクスビューが定義するパラメーターの表示
メトリクスビューが定義するパラメーターを確認するには、parametersブロックを含むYAML定義を表示します。メトリクスビューの定義とメタデータを表示を参照してください。