请阐述数据仓库建模的主要流程与设计方法,并列举几种典型的数据模型及其适用场景。
考察说明
考察数据仓库设计的方法论与常见模型分类,以及根据业务场景选择模型的能力。
回答思路
- 【回答框架 1】数据仓库建模核心是面向主题、集成、非易失、随时间变化。设计流程通常包括业务分析、主题域划分、概念模型、逻辑模型和物理模型。概念模型确定实体与关系,逻辑模型定义事实表和维度表,物理模型考虑表结构、索引和分区。
- 【回答框架 2】常见模型包括星型模型、雪花模型、星座模型、范式建模、Data Vault和Anchor模型。星型模型以事实表为中心,连接若干维度表,查询性能好,适合OLAP;雪花模型将维度表规范化,减少冗余但查询复杂;星座模型多个事实表共享维度,适合复杂分析。
- 【回答框架 3】范式建模遵循第三范式,减少数据冗余,适合OLTP,但查询需要多次连接;Data Vault以Hub、Link和Satellite分离业务键、关系与属性,便于审计和增量;Anchor是Data Vault的扩展,适合高变更环境。
- 【关键点 1】建模前需进行业务需求分析,明确分析主题,按事实和维度构建模型。
- 【关键点 2】星型模型性能最优,是多数数据仓库的事实表加维度表设计。
- 【关键点 3】雪花模型减少冗余,但增加查询复杂度,适用于维度属性变化频繁的场景。
- 【关键点 4】Data Vault适合需要审计和增量加载的复杂企业环境。
- 【易错点 1】不能只讲概念,应结合实际案例说明模型选择的取舍。
- 【易错点 2】避免混淆OLTP与OLAP建模目标,范式化不一定适合数据仓库。