datagroup_trigger

使用状況

ビュー: my_view {
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の場合は、矛盾するデータグループキャッシングポリシーを指定しないよう注意してください。