数据仓库模型的层级结构以及范式建模和维度建模

本文介绍数据仓库的分层结构(ods、dw、dm)及其作用,并对比维度建模与范式建模的特点,指出当前数据仓库设计中各层采用的不同建模方式。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一般常规的数据仓库层级结构可分为:ods、dw(默认为汇总数据层,也可在细分为dwd(明细)与dw(汇总)两层)、dm共三层:

ods层:称为接口层或近源数据层,表结构与源系统表结构高度相似,通常在ods层主要会做字段的筛选,枚举值转换,编码统一,异常&缺失数据处理等操作。

dw层:称为中间层,按主题建模(域->主题)的明细数据层,数据粒度与ods层一致。

dm层:称为数据集市层,集市层是按照业务主题、分主题构建出来的、面向特定部门或人员的数据集合。


维度建模源于Kimball提出的总线式的自下而上(DM-DW)的数据仓库架构。

特点:

1.模型结构简单,星型模型为主;

2.开发周期短,能够快速迭代;

3.维护成本较高;


范式建模源于Inmon提出的集线器的自上而下(EDW-DM)的数据仓库架构。

特点:

1.同一份数据只存放在一个地方,因此只能从一个地方获取,没有数据冗余,保证了数据一致性;

2.解耦(系统级与业务级),方便维护;

3.开发周期较长,开发成本较高;


当下的数据仓库模型架构设计中,dw层通常会采用范式建模,并且可以根据实际情况允许存在一些冗余。dm层通常会采用维度建模,因为采用维度建模构建出来的数据模型更加符合普通人的认知、易于被普通人所理解,从而有利于数据的推广使用。




### 数据仓库建模级、分类及其应用场景 #### 级划分 数据仓库中的次结构并非固定不变,然而其核心原则在于通过一致性的处理降低规范化程度来优化性能。具体来说: - **ODS (Operational Data Store)**:作为操作数据存储,这一主要用于接收来自不同源系统的原始数据,并进行初步清洗与转换工作[^2]。 - **DWD (Data Warehouse Detail Layer)**:此面负责执行数据标准化作业,确保向更高次传递的是经过净化并遵循统一标准的信息集合。该阶段会尽可能去除冗余字段以提高效率。 - **DWS (Data Service Layer / Summary Layer)**:基于DWD所提供的基础资料构建汇总视图或预计算结果集,旨在支持快速响应分析请求的同时减轻底负担;同时也需注意合理规划本内容以防下游组件过分依赖细节记录。 - **DIM (Dimension Tables)** **FACT (Fact Tables)**:这两者构成了维度建模的核心部分,在这里定义了用于描述业务活动的具体属性以及量化这些事件的事实数值。为了提升查询速度,有时会选择将某些低基数维表退化至事实表内部[^3]。 #### 建模方法论及适用场景 ##### 范式建模(ER模型) 适用于那些追求高度逻辑清晰性实体间关系表达准确性的情境下,特别是在需要严格控制数据完整性的环境中较为常见,比如金融机构所采用的方式就是如此[^1]。 ##### 维度建模 当目标侧重于简化复杂多变的企业运营状况表述时,则倾向于选用这种方法。它能够有效地促进跨部门间的协作交流,并且便于实施BI工具对接。其中又细分为两种主要架构模式——星型模型与雪花模型。 ##### Data Vault 模型 对于历史沿革追踪要求较高或是面临频繁变更挑战的应用场合而言,这种灵活而强大的框架可以很好地满足需求。它允许增量更新而不破坏现有结构稳定性,非常适合长期演化的项目环境。 ##### Anchor 模型 针对极端复杂的领域对象建模难题提供了创新解决方案,尤其适合处理具有极高动态特性的数据集,如基因组学研究等领域内的海量异构信息整合任务。 ```sql -- 示例 SQL 查询展示如何从 DWD 获取特定日期范围内的销售总额 SELECT SUM(sales_amount) AS total_sales FROM dwd.sales_fact sf JOIN dim.date_dimension dd ON sf.date_key = dd.date_key WHERE dd.calendar_date BETWEEN '2023-01-01' AND '2023-12-31'; ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值