目录
第二章:维度设计
2.1 维表层建设原则
2.1.1 维度的基本概念
维度是维度建模的基础和灵魂。在维度建模中,将度量称为“事实”,将环境描述为“维度”。维度是用于分析事实所需要的多样环境。例如,在分析交易过程中,可以通过买家,卖家,商品和时间等维度描述交易发生的环境。
维度所包含的表示维度的列,称为维度属性。维度属性是查询约束条件,分组和报表标签生成的基本来源,是数据易用性的关键。维度使用主键标识其唯一性,主键也是确保与之相连的任何事实表之间存在引用完整性的基础。主键有两种:代理键和自然键,他们都是用于标识某维度的具体值。但代理键是不具有业务含义的键,一般用于处理缓慢变化维;自然键是具有业务含义的键。例如,商品id,对于前台应用系统来说,商品id是代理键;而对于数据仓库系统来说,商品id则属于自然键。
2.1.2 维度的设计方法
对于维表层建设,我们有一些注意事项。
-
维度表是用来描述事实,因此维度表的主键是与其关联的事实表的外键。
-
维度表通常比较宽,是扁平的3NF,信息冗余并且包含大量的低粒度的文本属性
-
避免维度表中属性有null值