My first Publication Agile-Data-Warehouse-Design-eBook | Page 51

30 Chapter 2 Nightly inventory for a product at a retail location Monthly balance and interest charges/payments for a bank account Minute-by-minute viewing figures by audience for a TV channel Recurring events summarize discrete events but can also represent the atomic detail for “automatic” measurements Recurring events are typically used to sample and summarize discrete events, especially when cumulative measures, such as stock levels or account balances, are required that would be expensive to derive from the discrete events. For example, calculating an account balance at any point in time would require all the transac- tions against the account from all prior periods to be aggregated. Recurring events can also represent atomic-level measurement events that “automatically” occur on a periodic basis; for example, the hourly recording of rainfall at weather stations. Events and Fact Tables Events are business models for physical fact tables Table 2-1 Story types and their matching star schemas Discrete events are user models for transaction fact tables Recurring events represent periodic snapshots Evolving events represent accumulating snapshots The three BEAM ✲ event story types are business models (conceptual models) for the three physical fact table types found in the star schemas of dimensional data warehouses. Table 2-1 shows how story types and fact table types are related. BEAM✲ S TORY T YPE S TAR S CHEMA T YPE /P HYSICAL D IMENSIONAL M ODEL Discrete Transaction fact table Recurring Periodic snapshot Evolving Accumulating snapshot Discrete events are implemented as transaction fact tables. All the detail that there is to know about discrete events is known before they are loaded into a data ware- house. This means that each discrete event story (fact record) is inserted once and never updated, greatly simplifying the ETL process. Recurring events are implemented as periodic snapshot fact tables. Many of their interesting measures are semi-additive balances that must be carefully reported over multiple time periods. Evolving events are implemented as accumulating snapshot fact tables. They are loaded into a data warehouse shortly after the first event in a predictable sequence, and are updated each time a milestone event occurs until the overall event story is completed. Chapter 5 describes the basic steps involved in translating events into star sche- mas. Chapter 8 provides more detailed coverage on designing transaction fact tables, periodic snapshots and accumulating snapshots.