维度建模技术全面解析
1. 维度表基础技术
1.1 维度表结构
维度表具有单个主键列,该主键会作为外键嵌入到相关事实表中,以确保维度行的描述上下文与事实表行精确匹配。维度表通常是宽而扁平的非规范化表,包含许多低基数文本属性。操作代码和指标可作为属性处理,但最有效的维度属性应填充详细描述。维度表属性是查询和商业智能(BI)应用中约束和分组规范的主要目标,报表上的描述性标签通常是维度属性的域值。
1.2 维度代理键
维度表设计时使用一列作为唯一主键,但不能使用运营系统的自然键。因为随着时间跟踪变化时,一个自然键可能对应多个维度行,且维度的自然键可能由多个源系统创建,这些自然键可能不兼容或管理不善。数据仓库/商业智能(DW/BI)系统应控制所有维度的主键,为每个维度创建匿名整数主键,即维度代理键。这些代理键是从 1 开始按顺序分配的简单整数。不过,日期维度是个例外,它可以使用更有意义的主键,如表示 YYYYMMDD 的整数。
1.3 自然键、持久键和超自然键
运营源系统创建的自然键受 DW/BI 系统无法控制的业务规则影响。例如,员工离职后重新入职,员工编号(自然键)可能会改变。当数据仓库需要为该员工使用单个键时,就需要创建一个持久且在此情况下不会改变的新持久键,有时也称为持久超自然键。最佳的持久键格式应独立于原始业务流程,通常是从 1 开始按顺序分配的简单整数。随着员工信息随时间变化,可能会关联多个代理键,但持久键始终不变。
1.4 向下钻取
向下钻取是业务用户分析数据的最基本方式。它是指在现有查询中添加行标题,新的行标题是 SQL 查询中 GROUP BY 表达式追加
超级会员免费看
订阅专栏 解锁全文
15万+

被折叠的 条评论
为什么被折叠?



