其他分享
首页 > 其他分享> > 数据仓库基础知识学习笔记

数据仓库基础知识学习笔记

作者:互联网

学习笔记
学习渠道:https://www.bilibili.com/video/BV1qv411y7Wv?p=1

1.1 数据仓库诞生原因

历史数据使用频率低,堆积在业务库中,导致性能下降

随着业务的进行,会源源不断的产生数据,这些业务数据都会存储在业务数据库中,如 MySQL、Oracle 当中,支持业务系统的运行。

但当线上的业务系统运行超过一定时间,其积压的历史数据就会越来越多,对业务数据库就会产生一定的负载,导致业务系统运行速度降低。

而这些历史数据中,有相当一部分是冷数据,即业务系统一般对最近产生的数据(当天、一周内、一个月内)调用比较频繁,对较早之前的数据调用频率很低。

所以为了避免随着时间的推移,历史数据积压对业务数据库产生的影响,从而影响业务的正常运行,企业需要定期将积压的历史数据从业务数据库中转移出去,存储到一个专门存放历史数据的仓库中。这就是数据仓库。

在这里插入图片描述

企业将历史数据存储到数据仓库中后,这些数据不仅可以改善业务数据库的性能;还可以用来进行数据分析,从而辅助管理层进行决策。以历史数据积存为导向,这种发展是顺其自然的。

但有的企业开始并没有历史数据积存,然而仅仅是对数据分析特别看重。这些企业可能会存在多个部门需要进行数据分析的任务。这些企业建立数据仓库的原由,是以数据分析为导向的。

小结

企业无论是以历史数据积存,还是数据分析为导向建立的数据仓库。数据积存、数据分析,这两个都是数据仓库的基本功能与建设目的。

1.2 基本概述

数据仓库(Data Warehouse,DW)

数据仓库是一个面向主题的、集成的、非易失的且随时间变化的数据集合

主要用于历史数据的积存,并使用分析方法(OLAP、数据分析)进行分析整理,进而辅助决策,为管理者、企业系统提供数据支持,构建商业智能

数据仓库特点

数据仓库VS数据库

在这里插入图片描述

数仓主要是面向分析的

1.3 数据仓库的技术实现

传统数据仓库

由关系型数据库组成MPP(大规模并行处理)集群

大数据数据仓库

利用大数据天然的扩展性,完成海量数据的存放
将SQL转换为大数据计算引擎任务,完成数据分析

在这里插入图片描述

1.3.1 MPP架构 & 分布式架构(Hadoop架构)

1.4 常见数据仓库产品

传统数据仓库

大数据数据仓库

2 第二部分

2.1 数据仓库的架构

在这里插入图片描述

ETL(抽取、转换、加载)完成数据的接入

ODS保存原始数据,完成数据的积存功能

DWS DWD 为数据分析提供服务

ADS 保存结果数据

在这里插入图片描述

2.2 ETL

将数据从来源端经过抽取(extract)、交互转换(transform)、加载(load)至目的端的过程

在这里插入图片描述

ETL是构建数据仓库的重要一环,用户从数据源抽取出所需的数据,经过数据清洗,最终按照预先定义好的数据仓库模型,将数据加载到数据仓库中去

ETL规则的设计和实施约占整个数据仓库搭建工作量的60%~80%

ETL负责将分布的、异构数据源中的数据抽取到临时中间层后进行清洗,转换、集成,最后加载到数据仓库或数据集市中,成为联机分析处理、数据挖掘的基础。
在这里插入图片描述
数据抽取(Extraction)
抽取的数据源可以分为结构化数据、非结构化数据、半结构化数据
结构化数据一般采用JDBC、数据库日志方式,非半结构化数据会监听文件变动

数据转换(Transformation)
数据转换要经历数据清洗转换两个阶段
数据清洗主要是对出现的重复、二义性、不完整、违反业务或逻辑规则等问题的数据进行统一的处理

数据转换主要是对数据进行标准化处理,进行字段、数据类型、数据定义的转换

数据加载(Loading)
将最后处理完的数据导入到对应的目标源里

2.2.1 常见的ETL工具

2.3 ODS 数据操作层

数据存积

数据与原业务数据保持一致,可以增加字段用来进行数据管理

存储的历史数据是只读的,提供业务系统查询使用

业务系统对历史数据完成修改后,将update_type字段更新为UPDATE,追加回ODS中

在这里插入图片描述
在离线数仓中,业务数据定期通过ETL流程导入到ODS中,导入方式有全量、增量两种

2.4 DWD 数据明细层

数据分析

数据明细层对ODS层的数据进行清洗、标准化、维度退化(时间、分类、地域)

数据仍然满足3NF模型,为分析运算做准备

在这里插入图片描述

2.5 DWS 数据汇总层

数据汇总层的数据对数据明细层的数据,按照分析主题进行计算汇总,存放便于分析的宽表

存储模型并非3NF,而是注重数据聚合,复杂查询、处理性能更优的数仓模型,如维度模型

在这里插入图片描述

2.6 ADS 数据应用层

数据应用层也被称为数据集市

存储数据分析结果,为不同业务场景提供接口,减轻数据仓库的负担

数据仓库擅长数据分析,直接开放业务查询接口,会加重其负担

在这里插入图片描述

第三部分

3.1 OLTP(在线事务处理)

OLTP(在线事务处理)系统中,主要操作是随机读写

为了保证数据一致性、减少冗余,常使用关系模型

在关系模型中,使用三范式规则来减少冗余

3.2 OLAP(在线联机分析)

OLAP系统,主要操作是复杂分析查询:关注数据整合,以及分析、处理性能

OLAP根据数据存储的方式不同,又分为ROLAP,MOLAP,HOLAP ,其目的都是加快数据分析功能

3.2.1 OLAP多维分析

OLAP主要操作是复杂查询,可以多表关联,使用COUNT,SUM,AVG等聚合函数

OLAP对复杂查询操作做了直观的定义,包括钻取、切片、切块、旋转

标签:数据分析,数据仓库,笔记,基础知识,OLAP,历史数据,数据,ETL
来源: https://blog.csdn.net/qq_42374697/article/details/116394469