Skip to main content

一、从数据库到数据仓库

1.1数据仓库(Data Warehouse)产生的原因

数据处理大致可以分为两类:
  • 操作型处理【也称联机事务处理(Online Transaction Process,OLTP),是数据库系统的主要应用。例如索引、日志、备份等技术】
  • 分析型处理【对数据进行统计分析,得出有用的信息作为决策的依据和基础。就是有目的的进行查询等操作】
数据库系统的局限性:
  1. 数据分散【只处理本部门业务的数据,不是集成的】
  2. “蜘蛛网”问题【对数据进行抽取式的集成,是数据访问相当复杂】
  3. 数据不一致【蜘蛛网问题导致了多个应用间的数据不一致。可以理解为每个抽取步骤的时间、内容不同】
  4. 数据动态集成问题【每次分析都需要集成,效率低】
  5. 历史数据问题
  6. 数据综合问题 (5、6两点不重要,且这部分比较繁琐)
数据仓库的本质: 单就其是数据的存储容器这一点而言,数据仓库与数据库并没有本质的区别。而且在更多的时候,是将数据仓库作为一个数据库应用系统来看待的。数据仓库是为了构建新的分析型处理环境而出现的一种数据存储和组织技术。👇 chrome_YpczEZjyRA

1.2数据仓库的基本概念

定义:数据仓库是面向主题的集成的不可更新的随时间不断变化的数据集合。【必考】 主题与面向主题
  • 主题是抽象概念,是在较高层次上将企业信息系统中的数据综合、归类并进行分析利用的抽象。
  • 面向主题是相对于传统数据库的面向应用而言的。【面向主题就是围绕来进行的,例如建立“商品销售”主题,要抽取相关数据】
【例如,商品的推荐系统就是基于数据仓库设计的,商品的信息就是数据仓库所面向的主题。】 剩下的三个特征中,集成的是字面意思,从不同数据源来抽取、清洗 不可更新的:相对说法,是指不对原始的数据进行操作【操作仅限于初始导入和记录查询,不进行删除和修改】 随时间不断变化的:数据会不断从来源处更新,重新综合。 PS: 数据库 + 有目的的SELECT = 数据仓库

1.3数据仓库的体系结构

数据仓库的结构包含了4部分,分别是数据源数据存储及管理服务器前端工具 chrome_2PzvDt7FUX
ETL和ELT:从上图可以看出两者的区别和适用情况。【一个是先T(转换),一个是后T】
元数据:是数据仓库中所有描述性信息,分为商业元数据和技术元数据。 数据仓库和数据集市的比较:【数据集市数据粒度大】
对比项数据仓库数据集市
范围企业级部门级
主题企业主题部门或特殊的分析主题
数据粒度最小的粒度较大的粒度
数据结构规范化结构星型模式、雪花型模式、或两者结合
历史数据大量的历史数据适度的历史数据
优化处理海量数据、数据检索便于访问和分析、快速分析

二、操作数据存储

2.1ODS

操作性数据(Operational Data Store),简称ODS:面向主题的(Subject Oriented)、集成的(Integrated)、细节的(Detailed)、可更新的 (Volatile)、当前的(Current valued)或接近当前的数据集合, 用于支持全局业务处理和日常管理控制操作。【是一种数据环境,适应某种层次的应用需求;仍属于操作型环境 (Operational Environment)】

2.2DBODSDW体系

chrome_VbGNl0slqU 【ODS是动态数据,实时更新的,但ODS中只存放当前和接近当前的细节数据,数据量较少】可以理解为DB经过实时转换后生成ODS,ODS再写入DW,充当“承上启下”的角色。
ODS可以分为:同步ODS、即时ODS、延时ODS。【字面意思】

三、数据仓库中的数据

3.1数据仓库中的数据组织

数据仓库中存储着两类数据,业务数据和元数据。
数据粒度:粒度是指数据仓库的数据单位中保存数据的细化或综合程度的级别。【在数据仓库中的数据粒度与查询的详细程度之间要做 出权衡。 】 数据分割:数据分割是指将数据分割到各自的物理单元以便能够独立处理,提高数据处理效率。【垂直分割和水平分割】 数据分割后的数据单元称为分片,分片数据没有交叉。【数据分割有点确实很多,但是可能导致数据分配的不平衡】 数据分割时需要注意:分割均匀、用户的查询需求、数据的汇总方式。
数据粒度和数据分割设计得好,几乎所有的数据仓库设计和实现的问题都将迎刃而解。

3.2数据仓库中数据的追加

当数据仓库的数据初装完成以后,再向数据仓库输入(导入)数据的过程称为数据追加
如何能够确切地感知究竟哪些数据是上一次追加过程以后新生成的,这项工作称为变化数据的捕捉
数据追加过程中实现变化数据的捕捉的方法
  1. 时标【加上更新数据时的时间】
  2. DELTA文件【A + DELTA A = A‘ DELTA是用来记录所改变的数据内容】
  3. 前后快照文件【字面意思。 快照数据存储的某一时刻的状态记录
  4. 日志文件

3.3数据仓库中的元数据

元数据:是关于数据的数据。【元数据描述了数据的结构、来源、抽取和转换规则、存储,描述操纵数据的进程和应用程序的结构、功能等。】
元数据的作用:提供数据资源的全面指南。【在数据仓库中,元数据定义了数据仓库中的许多对象——表、列、查询、商业规则或是数据仓库内部的数据转移。】
元数据是数据仓库的重要构件,是数据仓库的指示图(roadmap)。
ODS元数据和DW元数据均属于数据仓库元数据,是数据仓库系统的核心元数据。 wpspdf_xLLu4UM8MS PS:本章节中含有元数据分类部分的知识没有进行说明,认为繁琐且用处不大,不是重点部分。

四、OLAP的概述及模型

4.1OLAP技术概述

联机分析处理(OLAP)是一种软件技术,可用于从不同的角度分析业务数据。【组织收集和存储来自多个数据源的数据,例如网站、应用程序、智能电表和内部系统。OLAP 将这些数据合并分为几类,为战略规划提供切实可行的见解。】
OLAP特点:快速、可分析、多维、及时。
OLAP与OLTP的区别
联机分析处理 (OLAP) 系统的主要用途是分析聚合数据,而联机事务处理 (OLTP) 系统的主要用途是处理数据库事务。 【您使用 OLAP 系统来生成报告、执行复杂的数据分析和确定趋势。相比之下,您使用 OLTP 系统来处理订单、更新库存和管理客户账户。👇】
特征OLAP(Online Analytical Processing)OLTP(Online Transaction Processing)
目标决策和分析日常交易处理
数据操作方式复杂查询和分析快速事务性数据处理
数据模型多维数据模型规范化的数据模型
性能要求高查询性能,相对低实时性高事务处理速度,相对高实时性
数据量大量历史数据大量短期交易数据

4.2多维数据模型

多维数据模型的基本概念
  • 多维数据模型又称多维概念视图,是一个多维空间,通常用Cube来表示
  • 多维数据模型用多维数组来表示,可以更加直观地表现现实中的复杂关系
  • 多维数据模型基本组成:维、维成员、维层、度量(变量、指标)
【维成员:维的一个取值。】
星型模型、雪花型结构【这两个不做太多解释,可以看这篇文章
常用的多维分析操作
  1. 聚集:多维分析的基础。【对数据进行综合,SUM,RANK,AVG,COUNT等】
  2. 切片、切块、旋转、下钻、上卷【都是对Cube操作】
  3. 维操作、属性操作
多维查询语言MDX(Mutiply Dimension Expression):
SELECT
 {[Region].[City].&[上海],[Region].[City].&[北京]}
ON Colums,
	[Time].[Month].[1] ON Rows
From [Mkas]

五、数据立方的存储、预计算和缩减

这章好像是概念章节,没有特意强调,接下来的实操也没有涉及到相关的知识,而且PDF中欠缺本部分内容。暂定不考。 不放心的可以去看课件

六、数据仓库的设计

数据仓库建设的目标
  • 数据仓库必须使组织机构的信息变得容易存取
  • 数据仓库必须一致地展示组织机构的信息
  • 数据仓库必须具有广泛的适应性和便于修该
数据仓库设计方法概述
  1. DW设计与DB设计方法比较
    1. DB
      • SDLC(System Development Life Cycle) 应用需求驱动
    2. DW
      • CLDS 数据驱动+需求驱动
wpspdf_6NRGwQAGCk
  1. 明确需求
  2. 设计的原则【坚持“以数据驱动为中心,数据驱动和需求驱动相结合”的原则】
  3. 实际工程中的设计方法【确定范围与项目定义、应用系统及其数据的调研与分析、建设方法】
  4. 数据驱动系统设计方法的基本思路
  5. DW设计的三级数据模型【概念模型(ER图)=>逻辑模型=>物理模型】
wpspdf_5u8NSPRgp0
剩下的基本就是实操方向的知识了,涉及的有窗口函数RFMSSISSSASMDX。这几个部分由于涉及到实操方面且是重点,就去看课件吧。最后提供一个SQL代码,用来检测语法知识。(上课时操作写的代码)
Last modified on April 17, 2026