数据仓库的分层

本文详细介绍了数据仓库的分层设计,包括ODS、DWD、DWS、DWT和ADS层的作用和特点。强调了数据粒度、维度表和事实表的设计,以及维度建模的重要性。同时,讨论了数据集市与数据仓库的区别,以及命名规范、范式和函数依赖等相关概念。
摘要由CSDN通过智能技术生成

数仓为什么要分层?

1.把复杂问题简单化  把复杂的任务分解成多层来完成,每一层只处理简单的任务,方便定位。

2.减少重复开发   规范数据分层,通过中间层数据,能够减少极大的重复计算,增加一次结果的重复性

3.隔离原始数据  不论是数据的异常还是数据的敏感性,使真实数据与统计数据解耦开。

 

数据仓库分层:

ODS层:原始数据层,存放原始数据,直接加载原始日志,数据保持原貌不做处理。

DWD层:对ODS层数据进行清洗(去空值,脏数据,超过极限范围的数据),维度退化(小表和成大表),脱敏(手机号中加入****)等  

DWS层:以DWD为基础,按天进行轻度汇总。需要按照主题建模,主题就是分析问题的一个角度,圈定了一个分析的范围,计算出这个主题的各种指标,而我们的指标只要是汇总,在dws里面我们只汇总了过去一天的数据,得到以天为粒度的指标。

DWT层:以DWS为基础,按主题进行汇总。实际工作中,需要算某个app,过去1天,过去一周,过去一个月,过去一个季度,过去一年上线以来的新增用户。

ADS层:给领导,给产品经理上交的统计结果。直接通过DWS和DWT很快获得

 

数据仓库粒度理解:

确定表的最大值和最小值,表的细化程度越高,粒度越小;细化程度越低,粒度越大

 

数据集市和数据仓库的概念:

数据集市是一种微型的数据仓库,它通常有更少的数据,更少的主题领域,以及更少的历史数据,因此是部门级的,一般来说只能为某个局部范围内的管理人员服务。

数据仓库:是企业级的,能为整个企业各个部门的运行提供决策支持手段。

 

命名规范:

表命名:层名_表名,

临时表:***_tmp(为得到一些结果,临时数据随时删除,一般建的内部表)

用户行为表:以log为后缀,如果不加就是db

脚本命名:驼峰命名(AaBb),蛇形命名(aa_bb)

 

范式:

理解为设计一张数据表的表结构,符合的标准级别,规范和要求

范式的优点:关系型数据库设计时,遵守一定的规范要求,目的在于降低数据的冗余。数据一致性,方便增删数据

缺点;缺点就是要多次join,只需要对两条数据进行join,不用对两个整表,数据量比较小,影响不大。

分类:第一范式,第二范式,第三范式,第四第五范式

 

函数依赖:

完全函数依赖:分数完全依赖于学号,课程

部分函数依赖:姓名部分依赖学号,课程

传递函数依赖:学号退出系名,系名推出系主任,反过来退不出来;

 

三范式区分:

第一范式:属性不可分割,原子性

第二范式:不存在“部分函数依赖”

第三范式:不能存在传递函数依赖

 

关系建模和维度建模:

数据处理大致分为:联机事务处理(OLTP),联机分析处理((OLAP)

OLTP是传统的关系型数据库的主要应用,主要是基本的、日常的事务处理,例如银行交易。

OLAP是数据仓库系统的主要应用,支持复杂的分析操作,侧重决策支持,并且提供直观易懂的查询结果

区别:

对比属性

OLTP

OLAP

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值