目录
一、数据类型与内容
事实表
- 数据类型:存储数值型度量数据(如销售额、数量、成本),这些数据可被聚合(如求和、平均值)。
- 内容特点:包含业务事件的量化指标,例如每笔交易的金额、库存变动量等。
- 冗余性:通常无冗余描述信息,仅保留与维度表关联的外键和度量值。
维度表
- 数据类型:存储描述性信息(如产品名称、客户地址、时间层次),提供事实数据的上下文。
- 内容特点:包含分类属性(如产品类别、地区层级)和层次结构(如时间维度分为年、季度、月)。
二、结构与设计原则
维度 | 事实表 | 维度表 |
---|---|---|
核心位置 | 数据仓库的中心表,关联多个维度表 | 围绕事实表,通过外键提供上下文 |
主键与外键 | 包含多个外键(指向维度表主键) | 包含主键(唯一标识维度实例) |
层次结构 | 无层次结构,仅存储扁平化度量值 | 支持多级层次(如国家→省份→城市) |
三、功能与用途
事实表
- 核心功能:支持聚合计算(如统计年度总销售额)和复杂分析(如趋势预测)。
- 典型场景:交易记录分析、库存变动追踪等需要量化评估的业务场景。
维度表
- 核心功能:提供过滤、分组和上下文解释(如按产品类别筛选销售数据)。
- 典型场景:多维度钻取分析(如按时间维度查看季度销售波动)。
四、数据量与更新频率
维度 | 事实表 | 维度表 |
---|---|---|
数据量 | 数据量大(如百万级交易记录) | 数据量相对较小(如千级产品分类) |
更新频率 | 高频更新(如实时记录交易) | 低频更新(如产品信息变更较少) |
五、应用场景对比
事实表适用场景
- 需要快速聚合数值指标(如计算月度销售额)。
- 业务事件记录的存储与分析(如订单流水、物流跟踪)。
维度表适用场景
- 提供业务数据的分类标签(如客户分群、产品分类)。
- 支持多维分析(如按地区和时间交叉分析销售趋势)。
六、技术本质总结
- 事实表是业务事件的量化记录中心,通过外键关联维度表形成星型或雪花模型,支撑高效聚合与决策分析。
- 维度表是数据解释的语义层,通过描述性属性和层次结构赋予事实数据业务意义。
- 协同关系:二者通过外键关联共同构建数据仓库的多维分析能力,例如通过时间维度表解释销售事实表中的时间戳字段。
恭喜你读完了这篇干货!现在你已经是掌握 [技术点] 的初级魔法师了🎩。如果下次面试官问你这个问题,请优雅地甩出这篇博客链接,并附上一句:'这是本魔法师的咒语手册,请查收~' 🧙♂️✨