Just doing some initial tests setting up a LAP, it doesn't seem as though the actual LAP appears in the query plan. Is this expected behavior as the anchor table is used, or is the setup below incorrect?
CREATE PROJECTION online_sales.online_sales_fact_lap_anchor ( transaction_type, warehouse_key, gross_profit_dollar_amount ) AS SELECT transaction_type, warehouse_key, gross_profit_dollar_amount FROM online_sales.online_sales_fact SEGMENTED BY HASH(online_sales_fact.transaction_type, online_sales_fact.warehouse_key) ALL NODES KSAFE 1; SELECT MARK_DESIGN_KSAFE(1); SELECT REFRESH('online_sales.online_sales_fact'); CREATE PROJECTION online_sales.online_sales_fact_lap AS SELECT transaction_type, warehouse_key, SUM(gross_profit_dollar_amount) AS sum_gross_profit_dollar_amount FROM online_sales.online_sales_fact GROUP BY transaction_type, warehouse_key; SELECT REFRESH('online_sales.online_sales_fact'); SELECT ANALYZE_STATISTICS('online_sales.online_sales_fact'); The query being used:
SELECT transaction_type, warehouse_key, SUM(gross_profit_dollar_amount) AS sum_gross_profit_dollar_amount FROM online_sales.online_sales_fact GROUP BY transaction_type, warehouse_key;
Requesting a query plan produces:
Access Path: +-GROUPBY PIPELINED [Cost: 11K, Rows: 100] (PATH ID: 1) | Aggregates: sum(online_sales_fact.gross_profit_dollar_amount) | Group By: online_sales_fact.transaction_type, online_sales_fact.warehouse_key | Execute on: All Nodes | +---> STORAGE ACCESS for online_sales_fact [Cost: 9K, Rows: 5M] (PATH ID: 2) | | Projection: online_sales.online_sales_fact_lap_anchor_b0 | | Materialize: online_sales_fact.transaction_type, online_sales_fact.warehouse_key, online_sales_fact.gross_profit_dollar_amount | | Execute on: All Nodes