首页 > 编程知识 正文

数据仓库分层模型有哪些,数据库分层数据模型

时间:2023-05-05 14:37:40 阅读:179608 作者:4338

1 .为什么要分层?

1 .空间切换时间

2 .便于计算

3 .逻辑清晰

2 .分层

也称为业务数据库(mysql、mongdb、oracle数据源)===src层

ODS (可操作数据层) )。

数据仓库层(DW )

DWD层(数据详细层)

负责数据的最细致的数据

经过ODS层清洗(放空),去除重量,去除干燥,去除一定阈值以上或小于一定阈值的明细数据。

DWM层(数据中间层)

基于DWD层,进行轻度合计,结合常用维(时间、场所、组织级别、用户、商品等)

DWS层(数据聚合层)宽表

面向主题聚合,维度相对较少

高度聚合的指标

以电商为例,提出人这个主题。 人(用户)当前人的登录次数、浏览次数、购买次数、访问频率等。

数据APP应用程序服务层(DAS )

提供业务主题、业务APP数据准备。

BDM层(源数据层) :缓冲区数据、源数据的直接映射

FDM层(对BDM源数据层数据进行清洗和预处理)、基础数据层、数据拉链处理、分区处理GDM层)、对FDM层的数据统计上进行一些指标数据)的通用的汇总

ADM层(指标数据对GDM层指标数据的业务汇总分析)高度汇总

2.Hive (十) Hive性能调整总结

Hive (十) Hive性能优化总结- Frankdeng -博客圈

Hive调谐(语法和参数水平优化) _吃果冻不吐果冻皮-CSDN博客

3 .实现数据仓库分层

实现基于大数据的数据仓库分层- CXY大数据实践园地

大数据数据仓库分层体系结构详情_慕课手记

4 .数仓建模

数据仓库数据模型lxw大数据田

2.1为什么要分层

为什么要分层?

明确数据结构:每个数据层都有一个作用域,使您在使用表时更容易定位和理解。 数据血缘追踪:简单来说,可以这样理解。 我们最终赋予业务诚信的是可以直接使用的业务表,但其来源有很多。 如果某个出处表有问题,我们希望迅速准确地找出问题,查明其危害范围。 减少重复开发:通过规范数据分层和开发公共中间层数据,可以减少大量的重复计算。 简化复杂的问题。 将一个复杂的任务分解成多个步骤来完成,每层只处理单个步骤是相对简单和容易理解的。 它还便于保持数据的准确性,在数据出现问题后,只需通过问题步骤进行修复,而无需修复所有数据。 屏蔽原始数据的异常。 需要中断业务影响,在不改变业务的情况下重新访问数据。

ODS层

操作数据库(ODS )操作数据库

在数据源中最接近数据的层次中,数据源中的数据被提取、清洗和传输,并在所谓的传说ETL之后加载到该层次中; 一般来说,ODS层的数据和源系统的数据是同构的,主要目的是简化后续数据加工处理的工作。 在数据粒度方面ODS层的数据粒度最细。

通常,ODS层中的表有两种类型:当前需要加载的数据和处理后的历史数据。

历史数据一般保存3-6个月后,为了节约空间需要清除。 但是不同的项目必须区别对待,如果源系统数据量不大,可以保存更长的时间,也可以全部保存;

在将数据加载到此层次结构之前,必须执行以下操作:

去噪(例如去除明显偏离正常水平的银行卡信息)去污(例如,银行账户信息、公安局人口信息中包含人的姓名,但只需留一份)去污(例如,某人的银行卡被盗,10分钟这就是污染数据) )业务提取单位统一划分字段)例如为了支撑前端系统的工作,但在数据挖掘中是不需要的

数据仓库层(DW )是数据仓库的主体

通常根据主题建立星形和雪花结构等各种数据模型;

关于维度建模的方法、星型、雪花模型等,请参照《维度建模法》

PDW层存储BI系统中的所有历史数据,例如10年的数据。

DM层

数据集市层(DM ) date market,也称为DWS、数据仓库服务或主题层,用于存储轻度聚合的数据。

通常,根据业务需求,分为流量、订单、用户等,为了提供后续的业务查询、OLAP分析、数据发布等,生成现场多的广表。

从数据粒度来说,这一层的数据是轻度聚合级别的数据,明细数据已经不存在。 从数据的时间跨度来看,通常是DW层的一部分,主要目的是满足用户分析的需要,从分析的角度来看,用户通常可以分析近年来的数据,例如近三年的数据。 从数据广度来说,仍然涵盖了所有业务数据。

APP层

我会数数

据产品层(APP),这一层是提供为数据产品使用的结果数据。

从数据粒度来说是高度汇总的数据。从数据的广度来说,则并不一定会覆盖所有业务数据。从极端情况来说,可以为每一张报表在APP层构建一个模型来支持,达到以空间换时间的目的。

应用层是根据业务需要,由前面三层数据统计而出的结果,可以直接提供查询展现,或导入至Mysql中使用。

需要一个管理元数据信息的系统 能够提供方便的元数据的操作和查询操作

主要是提供给数据产品和数据分析使用的数据,一般会存放在es、mysql等系统中供线上系统使用,也可能会存在Hive或者Druid中供数据分析和数据挖掘使用

我们经常说的报表数据,或者说那种大宽表,一般就放在这里

数据仓库的标准分层只是一个建议性质的标准,实际实施时需要根据实际情况确定数据仓库的分层,不同类型的数据也可能采取不同的分层方法。

三层模型

Buffer数据缓存层

用于存放接口方提供的原始数据的数据库层,此层的表结构与源数据保持基本一致,数据存放时间根据数据量大小和项目情况而定,如果数据量较大,可以只存近期数据,将历史数据进行备份。此层的目的在于数据的中转和备份。

其它两次与四层模型类似,只是把更多逻辑放在了DW层里

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。