数仓建模—建模方法论之维度建模
20年前兴起的数据仓库简单的可分为两大流派,Inmon方法和Kimball方法,分别由 Ralph Kimbal和Bill Inmon所提出。在十多年前,这两个流派的数据仓库曾经是最为热门的技术话题。这两种方法都将数据仓库看作是企业的中心数据存储。主要应用场景就是各类业务报表的需求。两者都建议使用ETL来加载数据到数据仓库。区别的关键在于如何在数据仓库中建模、加载和存储数据的方式。而由此出发的不同架构影响到了数据仓库的建设成本和到适应用户不断变化的ETL逻辑的能力。
维度建模是一种将大量数据结构化的逻辑设计手段,包含维度和指标,它不像范式模型目的是消除冗余数据,维度建模是面向分析,多为分析和决策提供服务,最终目的是提高查询性能,所以会增加数据冗余,并且违反三范式。它重点是快速完成分析,同时提供大规模复杂查询的响应性能(预聚合),更直接地面向业务。例如熟知的星形模型,以及特殊场景的雪花模型。
概念和背景
维度模型是数据仓库领域大师Ralph Kimball 所倡导,他的《数据仓库工具箱》,是数据仓库工程领域最流行的数仓建模方