在数据仓库建模(通常基于 Kimball 维度建模理论)中,事实表(Fact Table)用于存储业务过程中的度量(Measures)和指向各个维度的外键。 根据数据记录的方式、更新频率以及业务需求的不同,事实表主要分为以下三种核心类型。此外,还有一种特殊的“无事实事实表”。 以下是详细的分类解析: --- 1. 事务事实表 (Transaction Fact Table) 这是最常见、最基础的事实表类型。 定义:用于记录业务过程中的每一个原子事件(Atomic Event)。 记录时机:当业务动作发生时记录一行数据(例如:用户点击了一次、下了一个订单、进行了一次支付)。 数据特征: 粒度(Granularity):通常是最低级别的原子粒度(如:订单中的每一个商品条目)。 更新方式:只增不改(Append Only)。一旦写入,通常不会修改。 稀疏性:如果某天没有业务发生,就没有记录。 日期维度:通常只有一个日期维度外键,即事务发生的日期。 适用场景:需要分析具体的业务细节,进行任意维度的聚合。 例子: 电商交易流水表(每一行是一个订单明细)。 银行转账记录表。 网站日志访问表。...