用量
view: my_view { derived_table: { datagroup_trigger: my_datagroup ... } }
|
階層
datagroup_trigger |
預設值
無
接受
模型檔案中定義的資料群組名稱 |
定義
datagroup_trigger 可讓您指定要使用的資料群組,做為衍生資料表的快取政策。資料群組本身是使用 datagroup 參數在模型檔案中定義。
在衍生資料表中加入 datagroup_trigger 參數,即可將衍生資料表設為永久衍生資料表 (PDT)。資料表會寫入資料庫的臨時結構定義,並按照 datagroup 參數的指定重新產生。
如果使用 datagroup_trigger 執行 PDT,就不需要使用 sql_trigger_value 或 persist_for 參數。如果這麼做,Looker IDE 會顯示警告,且只會使用 datagroup_trigger。
範例
建立名為 customer_orders 的永久原生衍生資料表,並在名為 order_datagroup 的資料群組觸發時重建:
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
}
}
根據 SQL 查詢建立永久衍生資料表 customer_orders,並在名為 etl_datagroup 的資料群組觸發時重建:
view: customer_orders {
derived_table: {
sql:
SELECT
customer_id,
COUNT(*) AS lifetime_orders
FROM
order
GROUP BY 1 ;;
datagroup_trigger: etl_datagroup
}
}
常見挑戰
如果 PDT 依附於其他 PDT,請務必指定相容的資料群組快取政策。