使用状況
derived_table: {
datagroup_trigger: my_datagroup
...
}
}
階層
datagroup_trigger |
デフォルト値
なし許可
モデルファイルで定義されたデータグループの名前 |
定義
datagroup_trigger
を使用すると、派生テーブルのキャッシュ ポリシーとして使用するデータグループを指定できます。データグループ自体は、datagroup
パラメータを使用してモデルファイルで定義されます。
派生テーブルに datagroup_trigger
パラメータを追加すると、派生テーブルは永続的な派生テーブル(PDT)になります。テーブルはデータベース上のスクラッチ スキーマに書き込まれ、datagroup
パラメータの指定に従って再生成されます。
PDT に datagroup_trigger
を使用する場合は、sql_trigger_value
パラメータや persist_for
パラメータを使用する必要はありません。その場合、Looker IDE に警告が表示され、datagroup_trigger
のみが使用されます。
例
order_datagroup
という名前のデータグループによってトリガーされると、customer_orders
という永続的なネイティブ派生テーブルを作成します。
view: customer_orders {
derived_table: {
explore_source: order {
column: customer_id { field: order.customer_id }
column: lifetime_orders { field: order.lifetime_orders }
}
datagroup_trigger: order_datagroup
}
}
etl_datagroup
というデータグループでトリガーされると再ビルドされる SQL クエリに基づいて、customer_orders
永続的な派生テーブルを作成します。
view: customer_orders {
derived_table: {
sql:
SELECT
customer_id,
COUNT(*) AS lifetime_orders
FROM
order
GROUP BY 1 ;;
datagroup_trigger: etl_datagroup
}
}
一般的な課題
他のPDTとの依存関係があるPDTの場合は、矛盾するデータグループキャッシングポリシーを指定しないよう注意してください。