1.2数据仓库的体系结构

1.2数据仓库的体系结构

P1大家好,本次课我们学习数据仓库的体系结构知识及应用

P2我们将从两个方面进行学习,即数据仓库的体系结构、数据仓库与数据库的关系

P3我们用什么要使用数据仓库呢?数据仓库系统通常指一个数据库环境,而不是指一件产品,它是整个数据仓库环境的核心,是数据存放的地方和提供对数据检索的支持。相对于操作型数据库来说其突出的特点是对海量数据的支持和快速的检索技术。如图所示,企业通过应用数据仓库,能够了解到哪些客户给我们带来最多或最少的利润,谁是我们的客户,他们会买什么产品、哪些客户最可能流失、最有效的分销渠道是什么等等,可见通过使用数据仓库能给企事业单位带来重大的商业价值或为今后发展提供决策支持。

P4 数据仓库的系统结构

我们要知晓数据仓库的系统结构,从图中我们可以直观地看到数据仓库系统是由数据源、数据存储与管理、OLAP服务器、ETL、前端分析工具等构成。其中,数据仓库系统通常指一个数据库环境,而不是指一件产品。数据仓库是整个数据仓库环境的核心,是数据存放的地方和提供对数据检索的支持。相对于操作型数据库来说其突出的特点是对海量数据的支持和快速的检索技术。数据源可以来自于业务数据、文档资料和所有外部数据。从数据源中抽取数据后,通过ETL进行转换后存储在数据块中并进行统一管理。系统通过OLAP服务提供分析功能,并通过外部的数据报表展示可视化结果。

P5这里要随便说一说元数据是什么?它是关于数据的数据,在数据仓库中元数据位于数据仓库的上层,是描述数据仓库内数据的结构、位置和建立方法的数据。通过元数据进行数据仓库的管理和通过元数据来使用数据仓库。

P6什么是ETL

从数据源中将数据抽取出来需要使用到抽取方法及工具,ETL通常简称为数据抽取,分别是Extract、Transform、Load三个单词的首字母缩写,也就是抽取、转换和装载。即把数据从各种各样的存储环境中提取出来,进行必要的转化、整理,再存放到数据仓库内。其功能包括:删除对决策应用没有意义的数据,转换到统一的数据名称和定义,计算统计和衍生数据,填补缺失数据,统一不同的数据定义方式。ETL是商务智能/数据仓库的核心和灵魂,按照统一的规则集成并提高数据的价值,是负责完成数据从数据源向目标数据仓库转化的过程,是实施数据仓库的重要步骤。

P71)抽取(Extract)

从数据来源提取指定数据,数据是需要指定的,不是所有的数据都要抽取过来, 某些源数据对于分析而言没有价值,或者其可能产生的价值,远低于储存这些数据所需要的数据仓库的实现和性能上的成本,就不会抽取了。

2)转换(Transform)

将数据转换为指定格式并进行数据清洗保证数据质量。

数据转换,如包括编码转换,字段转换,度量单位的转换,数据粒度的转换。业务系统数据存储非常明细的数据,而数据仓库中数据是用分析的,不需要非常明细,会将业务系统数据按照数据仓库粒度进行聚合。

数据清洗,如会对不完整数据,错误数据和重复数据等脏数据进行清洗。

P83)加载(Load)

将转换过后的数据加载到目标数据仓库,加载可分为两种:

全量加载:一次对全部数据进行加载。

增量加载:一般首次需要全量加载,但是在第二次周期或者第三次周期的时候仍然全量加载的话,耗费了极大的物理和时间资源。有可能部分数据源并未发生变化,而有的数据源可能只是增加了少量的数据。 对数据源中的数据只考虑新修改的记录和新插入的记录就是增量加载。

ETL很可能是数据仓库开发中最耗时最耗资源的一个环节,因为该环节要整理各大业务系统中杂乱无章的数据,并协调元数据上的差别,工作量很大,但也是构建数据仓库的重要环节,对数据仓库的后续环节影响比较大。

P9数据集市又是个重要的概念,称为Data Marts,在构建数据仓库的时候经常用到的一个词汇。数据集市面向企业中的某个部门(或某个主题)是从数据仓库中划分出来的,这种划分可以是逻辑上的,也可以是物理上的。数据仓库中存放了企业的整体信息,而数据集市只存放了某个主题需要的信息,其目的是减少数据处理量,使信息的利用更加快捷和灵活。说白了,数据集市就是单位内某个部门需要的小型“数据仓库”。

数据集市与数据仓库之间的区别可以从下三个方面进行理解。

1数据仓库向各个数据集市提供数据。前者是企业级的,规模大,后者是部门级,相对规模较小。

2若干个部门的数据集市组成一个数据仓库。数据集市开发周期短、速度快,数据仓库开发的周期长、速度慢。

3从其数据特征进行分析,数据仓库中的数据结构采用规范化模式(第三范式),数据集市中的数据结构采用星形模式。通常数据仓库中的数据粒度比数据集市的粒度要细。

P10数据集市有两种,如图所示,一种是独立数据集市:它有自己的源数据库和ETL架构;另一种是非独立数据集市:它没有自己的源数据,其数据来自数据仓库。简单理解独立数据集市是一个结构完全和普通数据仓库一样,有ETL,然后自己存储和计算;而非独立数据集市是直接用已经建立好的数据仓库,再次进行数据组合集成

P11最后我们给出一个数据仓库的应用示例,如图所示,企业利用已有的人力资源系统、营销系统、财务系统等已有系统的业务数据库,通过ETL数据抽取过程,将数据存储于业务共享数据区,构建了一个企业级数据仓库,根据主题需要从数据仓库中抽取分析数据形成数据集市(多维数据),进而为企业经营者提供决策信息。

P12数据仓库为什么是分离的

数据仓库的查询通常是复杂的,涉及大量数据在汇总级的计算,可能需要特殊的数据组织、存取方法和基于多维视图的实现方法。对数据记录进行只读访问,以进行汇总和聚集。

如果OLTP和OLAP都在操作型数据库上运行,会大大降低数据库系统的吞吐量。

可见数据仓库与操作型数据库分离是由于这两种系统中数据的结构、内容和用法都不相同。 

P13数据仓库与操作型数据库有哪些区别

如图所示,我们知道操作型数据库是面向具体应用的,每次存取的数据容量相对较小,数据是详细的,数据库中保存的是当前的数据并且是不断更新的,对数据库的存取是频繁的,主要是业务人员在操作、是支持事务处理的。数据仓库是面向主题的、每次调用的数据容量是区大,提炼的是综合数据、数据仓库中保存的过去一段时间内的历史数据、通常数据是不需要更新或定期更新的、主要是企业高层决策人员使用,是支持决策分析的。

P14总结。

大家好,本次课程即将结束,通过本次课程的学习我们进一步了解到数据仓库系统的体系构架,对数据抽出、OLAP与OLTP等有了较好的认知。数据仓库系统通常指一个数据库环境,而不是指一件产品。是数据存放的地方和提供对数据检索的支持。相对于操作型数据库来说其突出的特点是对海量数据的支持和快速的检索技术。数据集市是数据仓库的一个子集,是企业内部较小范围的数据分析应用,是可以实现快速数据分析的一种有效方法。本次课就到这里,希望大家课后多阅读、多思考、多讨论,完成相应作业及练习,谢谢。

最后修改: 2023年04月20日 星期四 10:09