数据仓库建模(三):事实表的设计
事实表结构
事实表中每一行对应一个度量事件,反之亦然,比如订单表,每一行对应一个用户下单的事件,此时如果下单送积分的话,那么积分应该对应一个新的积分表,因为积分和下单是不同的事件,不要把这两个事件混在同一个表中。
每个事件都对应一个度量,一般情况下是数字度量,比如用户下单事件对应的数字度量应该是订单金额。
事实表一般包含外键,用于关联与之相关的维度,也包含可选的退化维度键和日期/时间戳。

可加、半可加、不可加事实
事实表中的数字度量可以划分为三类,分别对应着可加、半可加、不可加事实。
① 可加事实
例如商品销售记录表,对应着商品销售事实,由于该事实的度量为销售金额是可加的(即可以累加),所以该事实为可加事实
② 半可加事实
半可加事实一般记录的是静态的度量数据(例如库存、价差额、账户余额),半可加度量可以对某些维度汇总,但不能对所有的维度汇总,例如时间维度,我们会发现在时间维度下的加法操作没有意义。例如:上一个月的总库存、上周的账户总余额,这些指标没有意义。

③ 不可加事实
在不可加事实中,它的度量是不可加的,例如:比率。对不可加事实,最好的方法是,

最低0.47元/天 解锁文章
8770





