Mastering Data Warehouse Aggregates: Solutions for Star Schema Performance
by Christopher Adamson
5.5. Summary
The data warehouse load is a complex process that must meet several requirements. By dealing with these challenges at load time, the dimensional schema is able to deliver power and performance to applications.
A base schema load consists of dependent processes that load dimension tables and fact tables. Dimension table loads must assemble dimensional data; manage warehouse keys; and process new records, type 1 changes, and type 2 changes. Fact table loads must assemble and aggregate facts, and replace natural keys with the appropriate warehouse keys.
Fitting aggregate processing into this process requires understanding their dependency relationship to the base schema, which will serve as their source. The presence of aggregates requires that the load process manage the availability of aggregates, taking them off-line during processes that update base tables. The aggregate processing may take two forms—a complete rebuild or an incremental refresh.
Using RDBMS features to implement aggregates eliminates much of the work described in the next chapter but still requires some special attention. Parameters must be managed so that the RDBMS knows when aggregates are to be used in rewritten queries, and an approach to their refresh must be selected.
Real-time data warehouse loads complicate aggregate processing because transactions may constantly update the base tables. The effect of this phenomenon on the synchronization of aggregates can be eliminated by breaking the warehouse ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access