3.事实表和维度表区分
事实表
- 定义:用来存储度量数据的表,如订单数量、销售额、运输成本等。
- 具有一个日期时间维度,以便将度量数据与时间相关联。
- 事实表的每一行表示一个事实事件,如某一天的销售额、某个客户的订单数量。
- 通常具有多个外键,用于关联维度表
维度表
- 定义:用来存储维度数据的表,即描述性数据。如:客户、产品、地理位置等。
- 维度表的每一行通常表示一个唯一的维度值,例如客户、产品或地理位置。
- 维度表通常具有一个主键,可以与事实表中的外键进行关联。
两者关系
- 事实表和维度表是紧密耦合的,事实表通过维度表进行关联,这种关联方式称为星型模型,是数仓中最常用的模型之一。
- 优点:通过使用星型模型,可以使数据仓库的查询效率更高,提高数据仓库的查询和分析能力。
维度退化
- CDM层又细分为DWD层和DWS层,分别是明细数据层和汇总数据层,采用维度模型方法作为理论基础,更多地采用一些维度退化手法。
- 明细数据表:将维度退化至事实表中,减少事实表和维度表的关联,提高明细数据表的易用性。
- 汇总数据层:加强指标的维度退化,采取更多的宽表化手段构建公共指标数据层,提升公共指标的复用性,减少重复加工。
- 维度退化作用:用来进行事实表的过滤查询、实现聚合操作等。
缓慢变化维度
- 背景:维度的属性不是静态的,会随着时间的发生缓慢的变化。
- 保留历史数据会起到至关重要的作用。
- 三种处理缓慢变化维的方式
-
- 重写维度值,不保留历史数据,始终取最新数据。
本文来自博客园,作者:jsqup,转载请注明原文链接:https://www.cnblogs.com/jsqup/p/17833074.html