赞
踩
理解数仓分层中的分层设计
实施
什么是分层?
决定数据在数据仓库中处理的流程
数据从进入到被应用,总共经过哪些步骤
在Hive中每一层就是一个数据库,每一层的表放在对应的数据库中
为什么要做分层?
数仓不做分层
数仓做了分层
清晰数据结构
:每一个数据分层都有它的作用域,这样我们在使用表的时候能更方便地定位和理解
数据血缘追踪
:我们最终给业务呈现的是一张能够直接使用放入业务表,但是它的来源有很多,如果有一张来源表出问题了,我们希望能够快速准确地定位到问题,并清楚它的危害范围
减少重复开发
:规范数据分层,开发一些通用的中间层数据,能够减少极大的重复计算
把复杂问题简单化
:一个复杂的任务分解成多个步骤来完成,每一层只处理单一的步骤,比较简单和容易理解
屏蔽原始数据的异常对业务的影响
:不必改一次业务就需要重新接入数据
一般怎么分层?
常见的分层结构是什么?
原始数据层
名称:ODS,原始数据层或者操作数据层
功能:用于存储最原始的数据,最接近原始数据的层次
数据仓库层
名称:DW,专门用于实现原始数据的处理和加工转换的
功能:实现原始数据的转换处理
数据应用层
名称:DA/APP/ADS/RPT,存储最终要被使用的数据的
功能:存储结果
DW:数据仓库层,实现对原始数据的处理转换
APP:数据应用层,对外提供所有数据应用的
数据:与原始数据保持一致
功能:临时存储采集到的原始数据
DWD:明细数据层
功能:对ODS层数据进行数据清洗,保证数据质量
数据:来自于ODS层
DWM/DWB:轻度聚合层【中间数据层/基础数据层】
功能:对DWD层实现轻度聚合,通过关联构建宽表退化维度,或者轻度聚合构建基础指标来实现
数据:来自于DWD
DWS:服务数据层
功能:对上一层的数据按照主题需求构建主题结果进行最终聚合,主题域宽表
数据:上一层,包含这个主题域所有维度和指标
APP/DA/ADS:数据应用层
功能:按照数仓主题对外提供数据的需求
数据:对DWS层的数据进行拆解,构建每个主题的结果表
DM:数据集市层
功能:按照每个部门的需求来构建每个部门的数据或者按照细粒度做轻度聚合
数据:来自于DW
DIM:维度数据层
功能:存储所有维度数据表
数据:一般都来自于DWD
TMP:临时数据层
功能:存放一些临时数据表
数据:来自于DW中任何一层需要用到的临时数据
每个公司的分层都不一样,但是常见的脑子里要有这种分层的概念
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。