事实在字典里指事情的真实情形,在维度建模中,通常表示某个业务的度量,如商品的数量、金额等。本文作者针对维度建模事实表进行了分析,一起来看一下吧。
给大家简单介绍了数仓建模的常见模型:ER模型和维度建模的一些基本知识,本周我们针对维度建模事实表进行更详细的讲解。
一、什么是事实
事实在字典里指事情的真实情形,在维度建模中,通常表示某个业务的度量。如订单中商品的数量、金额等。
1. 事实类型
此处的事实类型是指度量值的类型,而非事实表的类型。事实(度量值)共分为三类,分别是可加事实,半可加事实和不可加事实。
1)可加事实
可加事实是指可以按照与事实表相关的所有维度进行累加,事务型事实表中的事实,例如上篇文章讲述的订单事实表。
2)半可加事实
半可加事实是指只能按照与事实表相关的一部分维度进行累加,例如周期型快照事实表中的事实。以上述各仓库中各商品的库存每天快照事实表为例,这张表中的库存事实可以按照仓库或者商品维度进行累加,但是不能按照时间维度进行累加,因为将每天的库存累加起来是没有任何意义的。
3)不可加事实
不可加事实是指完全不具备可加性,例如比率型事实。不可加事实通常需要转化为可加事实,例如比率可转化为分子和分母。
二、什么是事实表
事实表是指存储有事实记录的表,如用户登录记录表、下单记录、优惠券领取记录表等,事实表作为数据仓库维度建模的核心,其紧紧围绕着业务过程来设计。一般包含与该业务过程有关的维度引用(维