多事务事实表
多事务事实表,将不同的事实放到同一个事实表中,即同一个事实表包含不同的业务过程。
多事务事实表在设计时有两种方法进行事实的处理:1.不同业务过程的事实使用不同的事实字段进行存放,2.不同业务过程的事实使用同一事实字段进行存放,但增加一个业务过程标签。
1.淘宝交易事务事实表
两种事实表对比
1.业务过程
对于单事务事实表,一个业务过程建立一个事实表,只反映一个业务过程的事实,对于多事务事实表,在同一个事实表中反映多个业务过程。
多个业务过程是否放到同一个事实表中,首先需要分析不同业务过程之间的相似性和业务源系统。
2.粒度和维度
当不同业务过程的粒度相同,同时拥有相似的维度时,此时就可以考虑采用多事务事实表。
如果粒度不同,则必定是不同的事实表。
3.事实
如果单一业务过程的事实较多,同时不同业务过程的事实又不相同,则可以考虑使用单事务事实表,处理更加清晰,若使用多事务事实表,则会导致事实表零值或空值字段较多。
4.下游业务使用
单事务事实表对于下游用户而言更容易理解,关注哪个业务过程就使用响应的事务事实表;而多事务事实表包含多个业务过程,用户使用时往往较为困惑。
5.计算存储成本
父子事实的处理方式
事实的设计准则
1.事实完整性
2.事实一致性
网友评论