在前几章中,我们使用标准事件数据确立了星型模型的构成要素。然而,分析需求往往不仅仅是单笔交易的记录。我们通常需要分析系统在特定时间点的状态,或追踪工作流程在不同阶段推进时的持续时间。本章阐述了用于应对这些不同粒度数据的具体模式。我们首先区分三种主要事实表类型。事务型事实表记录最精细的离散事件。周期快照事实表的功能有所不同,它们在设定的时间间隔内聚合数据以捕获状态,例如库存水平或账户余额。接下来,我们将审视累积快照事实表。它们专为具有明确生命周期的流程(如订单履行)而设计,其中单行记录会随着业务流程接近完成而被更新。此外,我们还会讨论无事实事实表。这些结构对于覆盖率分析是必需的,可以回答维度交叉点是主要数据点而非数值的问题。理解这些模式有助于您有效处理半可加度量。例如,尽管您可以对销售额进行跨时间求和 ($Total = \sum sales$),但您不能简单地对一个月的账户余额进行求和。您必须应用一些逻辑,例如求平均值或选取最后的值。在本节结束时,您将能够选择正确的表架构,以匹配您正在建模的业务流程粒度。