维度表的定义
在维度建模中,通常将指标的度量称之为“事实”,将产生度量的环境称之为“维度”。将描述同一个业务实体的的多个维度列组合在一起,就是常说的“维度表”。
维度表的构成
维度表通常表示的是参与到业务过程中的一个业务实体(如,商品、卖家、买家、优惠券、时间等等),其每一行数据表示的是一个业务实体的实例(如,商品维度表中的一行表示的就是一个商品)。
维度表的结构
维度表一般由【代理键、自然键、维度属性】三部分构成。如果有保留维度变化历史或大型维度表的拆分需求,可能还会加入其它部分以做技术实现上的补充。
- 代理键:不具有任何业务含义,仅做维度表数据唯一性区分的属性,通常以主键形式出现。
- 自然键:具有业务含义,是业务实体一个实例的唯一性区分(如,商品ID),在维度表中不一定做表的主键。
- 维度属性:描述同一业务实体各种特征的维度列(如,商品维度表中的商品名称、商品价格等)。
维度表中的代理键,会根据分析的需求决定是否存在,如果没有需要保留追溯业务实体历史变化的需求,一般情况会用自然键直接做为维度表的主键,这样通常简单、高校、且易于理解。代理键的存在主要是应对处理变化维度的需求。
维度表代理键
不具有任何业务含义,仅做维度表数据唯一性区分的属性,通常以主键形式出现。
维度表自然键
具有业务含义,是业务实体一个实例的唯一性区分&