核心指导思想:
以业务需求和用户分析为中心,通过维度建模快速构建可理解、可扩展的数据仓库,让业务人员能够方便地分析数据。
面向业务,而不是面向技术:Kimball 认为数据仓库首先要解决的是业务决策问题,而不是单纯设计一个漂亮的数据结构。
维度建模(Dimensional Modeling)是核心:Kimball 最核心的思想是使用维度模型,通常表现为星型模型(Star Schema)。
模型由两类表组成:
事实表(Fact Table):存放业务事件和度量指标
维度表(Dimension Table):描述分析角度自底向上的建设(Bottom-up)
Kimball 不主张先花几年时间建设一个“大而全”的企业数据仓库。
他的思想是:先解决一个业务领域,再逐步扩展。先定义业务过程和粒度(Grain)
Kimball 非常强调:建事实表之前,必须先确定“一条事实记录代表什么”。企业级一致性通过“公共维度”实现
Kimball 提出了 Conformed Dimensions(一致性维度)。追求易用性和查询性能
Kimball 认为数据仓库不是给数据库管理员看的,而是给:分析师、BI人员
、管理者使用的。所以模型应该:表结构简单、字段含义明确、查询方便、支持快速分析
| 指导思想 | 含义 |
|---|---|
| 业务驱动 | 从业务问题出发 |
| 维度建模 | 用事实表+维度表组织数据 |
| 自底向上 | 小步迭代建设数据仓库 |
| 明确粒度 | 一开始定义事实记录级别 |
| 一致性维度 | 跨业务共享分析口径 |
| 用户友好 | 让业务人员容易查询分析 |
简单理解:
Kimball认为:数据仓库不是为了存数据,而是为了帮助企业更快、更准确地做决策;最好的数据模型应该贴近业务人员的思考方式。
如果和 Inmon(企业数据仓库3NF模型) 对比,最大的区别是:
Kimball:先做业务分析场景,再整合;Inmon:先建企业级统一数据层,再提供分析。