事实表有三种类型:事务事实表、周期快照事实表和累积快照事实表。
事务事实表用来描述业务过程,跟踪空间或时间上某点的度量事件,保存的是最原子的数据,也称为“原子事实表”。周期快照事实表以具有规律性的、可预见的时间间隔记录事实,时间间隔如每天、每月、每年等。累积快照事实表用来表述过程开始和结束之间的关键步骤事件,覆盖过程的整个生命周期,通常具有多个日期字段来记录关键时间点,当过程随着生命周期不断变化时,记录也会随着过程的变化而被修改。
事实表设计原则
原则1:尽可能包含所有与业务过程相关的事实
原则2:只选择与业务过程相关的事实
在选择事实时,应该注意只选择与业务过程有关的事实。比如在订单的下单这个业务过程的事实表设计中,不应该存在支付金额这个表示支付业务过程的事实。
原则3:对于不具备可加性条件的事实,需要分解为可加的组件。
对于不具备可加性条件的事实,需要分解为可加的组件。比如订单的优惠率,应该分解为订单原价金额与订单优惠金额两个事实存储在事实表中。
原则4:在选择维度和事实之前必须先声明粒度
原则5:在同一个事实表中不能有多种不同粒度的事实
事实表中所有事实需要与表定义的粒度保持一致,在同一个事实表中不能有多种不同粒度的事实。
原则6:事实的单位要保持一致
原则7:对事实的null值要处理
建议用0值填充
原则8:使用退化维度提高事实表的易用性
事实表设计方法
网友评论