A developer needs to implement three persistent derived tables (PDTs) as described below.
The PDTs need to be refreshed after the daily ETL pipeline adds incremental loads to the underlying tables.
Each PDT is built off of one underlying table in the database (one PDT per table).
The underlying tables for each PDT are updated one after the other, and a new row is added to an ETL log table each time a table is updated.
Due to the unpredictable nature of the ETL pipeline, each PDT does not refresh at the same time from day to day.
Each PDT takes over an hour to build, and to save on compute costs each PDT should only be refreshed once per day.
How can the developer set up the PDTs according to these requirements?
- Create one datagroup tied to all three PDTs that runs when the total row count across all three tables changes.
- Create one datagroup tied to all three PDTs that parameterizes the view name for each PDT in the SQL trigger condition.
- Create three separate datagroups tied to three PDTs that run when each corresponding table’s row count changes.
- Create three separate datagroups tied to three PDTs that run when a new row is added to the ETL log table.