1500字范文,内容丰富有趣,写作好帮手!
1500字范文 > Hive数据仓库分层架构

Hive数据仓库分层架构

时间:2018-09-07 13:33:25

相关推荐

Hive数据仓库分层架构

目录

一、为什么要进行数据分层?数据分层的好处?1、原因2、好处二、hive数仓分为哪几层?1、ODS层:数据运营层(贴源层)2、DW层: 数据仓库层(1)DWD层:数据明细层(2)DWM层:数据中间层(3)DWS层:数据汇总层(服务)3、ADS层:应用层

一、为什么要进行数据分层?数据分层的好处?

1、原因

对数据进行分层的一个主要原因就是希望在管理数据的时候,能对数据有一个更加清晰的掌控。

2、好处

清晰数据结构:每一个数据分层都有它的作用域,这样我们在使用表的时候能更方便地定位和理解。

数据血缘追踪:简单来讲可以这样理解,我们最终给业务呈现的是一张能直接使用的张业务表,但是它的来源有很多,如果有一张来源表出问题了,我们希望能够快速准确地定位到问题,并清楚它的危害范围。

减少重复开发:规范数据分层,开发一些通用的中间层数据,能够减少极大的重复计算。

把复杂问题简单化:将一个复杂的任务分解成多个步骤来完成,每一层只处理单一的步骤,比较简单和容易理解。而且便于维护数据的准确性,当数据出现问题之后,可以不用修复所有的数据,只需要从有问题的步骤开始修复。

屏蔽原始数据的异常:屏蔽业务的影响,不必改一次业务就需要重新接入数据。

二、hive数仓分为哪几层?

来源于各种途径的日志表(以json格式存在的数据),通过工具解析传入ODS层

1、ODS层:数据运营层(贴源层)

这一层是最贴近源数据的一层,数据源中的数据经过抽取、洗净、传输,装入本层,一般来讲数据不需要进行过多的数据清洗工作,原封不动的接入原始数据即可,至于数据的去噪、去重、异常值处理等过程可以放在后面DW层来做

作用

这一层的作用相当于是一个接口层,用来引入数据。

例如:

把1号一天的数据存储起来,等待2号集中处理这些数据,这我们叫做T+1模式,这有一个调度平台,可以定时,在凌晨0点的时候将数据存入ODS层,如果出错就会发出预警,将错误信息发送到手机,然后你去处理

我们需要做的是?

建好表。

例如:

我们建表的时候创建一个varchar(20)类型的表格,这时候来了一个varchar(30)类型的数据,这个时候就会报错,程序就会无法继续运行。所以一应要建好表

2、DW层: 数据仓库层

(1)DWD层:数据明细层

对ODS层做预处理,根据需求对数据进行处理,例如给定一些数据ID、name、age、region、user_type,这其中有中文,就可以将这些中文使用case when *** then ** end方式增加一个标签代表这个数据

(2)DWM层:数据中间层

该层会在DWD层的数据基础上,对数据做轻度的聚合操作,生成一系列的中间表,提升公共指标的复用性,减少重复加工。直观来讲,就是对通用的核心维度进行聚合操作,算出相应的统计指标。

(3)DWS层:数据汇总层(服务)

将上一层处理过的数据进行汇总,一遍进行后续查询

3、ADS层:应用层

在DW层处理完成的数据通过工具进行可视化加工,当数据处理完成存储在Hive中,处理完成的数据可以通过ETL工具推送到关系型数据库中(例如Mysql),一般情况下,数据都有一个储存周期,400天左右,我们使用的可视化-工具平台(基于关系型数据库Mysql储存时间400天左右),可以进行同比(年)、环比(月),这些数据形成一个数据集(结果),最后一步就是根据业务需求来配置报表

感谢阅读,我是啊帅和和,以为大数据专业大四学生,祝你快乐。

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。