数据仓库架构分层

1 数据仓库架构

数据仓库标准上可以分为四层:ODS(临时存储层)、PDW(数据仓库层)、DM(数 据集市层)、APP(应用层)。

1)ODS 层: 为临时存储层,是接口数据的临时存储区域,为后一步的数据处理做准备。一般来说 ODS 层的数据和源系统的数据是同构的,主要目的是简化后续数据加工处理的工作。从数据粒度上来说 ODS 层的数据粒度是最细的。ODS 层的表通常包括两类,一个用于存储当前 需要加载的数据,一个用于存储处理完后的历史数据。历史数据一般保存 3-6 个月后需要清 除,以节省空间。但不同的项目要区别对待,如果源系统的数据量不大,可以保留更长的时间,甚至全量保存;

2)PDW 层: 为数据仓库层,PDW 层的数据应该是一致的、准确的、干净的数据,即对源系统数据 进行了清洗(去除了杂质)后的数据。这一层的数据一般是遵循数据库第三范式的,其数据 粒度通常和 ODS 的粒度相同。在 PDW 层会保存 BI 系统中所有的历史数据,例如保存 10 年的数据。

3)DM 层: 为数据集市层,这层数据是面向主题来组织数据的,通常是星形或雪花结构的数据。从 数据粒度来说,这层的数据是轻度汇总级的数据,已经不存在明细数据了。从数据的时间跨 度来说,通常是 PDW 层的一部分,主要的目的是为了满足用户分析的需求,而从分析的角度来说,用户通常只需要分析近几年(如近三年的数据)的即可。从数据的广度来说,仍然 覆盖了所有业务数据。

4)APP 层: 为应用层,这层数据是完全为了满足具体的分析需求而构建的数据,也是星形或雪花结 构的数据。从数据粒度来说是高度汇总的数据。从数据的广度来说,则并不一定会覆盖所有 业务数据,而是 DM 层数据的一个真子集,从某种意义上来说是 DM 层数据的一个重复。 从极端情况来说,可以为每一张报表在 APP 层构建一个模型来支持,达到以空间换时间的 目的数据仓库的标准分层只是一个建议性质的标准,实际实施时需要根据实际情况确定数据 仓库的分层,不同类型的数据也可能采取不同的分层方法。

2 为什么要对数据仓库分层?

1)用空间换时间,通过大量的预处理来提升应用系统的用户体验(效率),因此数据 仓库会存在大量冗余的数据。

2)如果不分层的话,如果源业务系统的业务规则发生变化将会影响整个数据清洗过程, 工作量巨大。

3)通过数据分层管理可以简化数据清洗的过程,因为把原来一步的工作分到了多个步 骤去完成,相当于把一个复杂的工作拆成了多个简单的工作,把一个大的黑盒变成了一个白 盒,每一层的处理逻辑都相对简单和容易理解,这样我们比较容易保证每一个步骤的正确性, 当数据发生错误的时候,往往我们只需要局部调整某个步骤即可。

  • 1
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值