《数据仓库DataWarehou.ppt》由会员分享,可在线阅读,更多相关《数据仓库DataWarehou.ppt(78页珍藏版)》请在三一办公上搜索。
1、数据仓库(Data Warehouse),北京科技大学 武 森,内容安排,1 数据仓库概述2 多维数据模型3 数据仓库的体系结构4 数据仓库的数据组织5 数据仓库的数据预处理6 数据仓库应用举例,内容安排,1 数据仓库概述2 多维数据模型3 数据仓库的体系结构4 数据仓库的数据组织5 数据仓库的数据预处理6 数据仓库应用举例,1 数据仓库概述,1.1 数据仓库的产生与发展1.2 数据仓库的含义与特征1.3 操作型数据库系统与数据仓库1.4 数据仓库的基本结构1.5 数据仓库的相关概念,1.1 数据仓库的产生与发展,最早发轫于80年代初的研究,存在于其“记录系统”、“本原数据”、“决策支持数据库
2、”等研究专题中1。数据仓库的具体概念是在1992年出版的建立数据仓库一书中提出的,目前它被认为是解决信息技术在发展中一方面拥有大量数据,另一方面有用信息却很贫乏这种不正常现象的综合解决方案。,1.2 数据仓库的含义与特征,数据仓库的含义()“数据仓库是面向主题的、综合的、不同时间的、稳定的数据的集合,用以支持经营管理中的决策制定过程(A data warehouse is a subject-oriented,integrated,time-variant,and nonvolatile collection of data in support of managements decision
3、 making process)”。,1.2 数据仓库的含义与特征,对数据仓库含义的理解 通俗地讲,数据仓库就是企业内部一种专门的数据存储,专门用于支持分析型数据查询。(1)专门的数据存储 以多维数据模型进行存储,该模型能够反映实际的商业分析需求,并支持预先未知的具体数据查询操作。(2)分析型数据查询工具 数据仓库是Lotus1-2-3和Microsoft Excel等工具的延伸与发展,目的在于使得分析能够更准确、更快速、更灵活、更有效,支持的数据量更大。,1.2 数据仓库的含义与特征,数据仓库的特征(1)数据仓库是面向主题的:传统数据库应用按照业务处理流程来组织数据,目的在于提高处理的速度。
4、主题是一个在较高层次将数据进行归类的标准,满足该领域分析决策的需要。(2)数据仓库是集成性的:数据仓库中的数据来自于多个应用系统,不仅要统一原始数据中的所有矛盾,如同名异义,异名同义等,而且要将这些数据统一到数据仓库的数据模式上来。(3)数据仓库是随时间而变化的:数据仓库随着时间变化要不断增加新的内容。由于数据仓库常常用作趋势预测分析,所以需要保留足够长时间的历史数据,一般为510年。(4)数据仓库是稳定的:数据仓库的这种稳定性指的是数据仓库中的数据主要供企业决策分析之用,决策人员所涉及的数据操作主要是数据查询,一般情况下并不进行数据修改。,1.2 数据仓库的含义与特征,数据仓库还具有以下特点
5、:(1)数据仓库中的数据量非常大。通常的数据仓库的数据量为10GB级,相当于一般数据库100MB的100倍,大型数据仓库的数据量可以达到一个TB(1000GB)。数据中索引和综合数据占2/3,原始数据占1/33。(2)数据仓库是数据库技术的一种新的应用,而且到目前为止,数据仓库一般还是应用数据库管理系统来管理其中的数据。(3)数据仓库的使用人员较少。,1.3 操作型数据库系统与数据仓库,1.4 数据仓库的基本结构,可视化,应用工具,数据存储,数据源,1.5 数据仓库的相关概念,粒度 粒度(Granularity)是指数据仓库中数据单元的详细程度和级别。数据越详细,粒度越小级别就越低;数据综合度
6、越高,粒度越大级别就越高。在传统的操作型数据库系统中,对数据处理和操作都是在最低级的粒度上进行的。但是在数据仓库环境中应用的主要是分析型处理,一般需要将数据划分为:详细数据,轻度总结、高度总结三级或更多级粒度。,1.5 数据仓库的相关概念,维度 维(Dimension)是指人们观察事物的特定的角度,概念上类似于关系表的属性。例如:企业常常关心产品销售数据随着时间推移而变化的情况,这是他从时间的角度来观察产品的销售,即时间维;企业也常常关心本企业的产品在不同地区的销售分布情况,这时他是从地理分布的角度来观察产品的销售,即地区维。,1.5 数据仓库的相关概念,数据立方体 数据立方体是指由两个或更多
7、个属性、即两个或更多个维来描述或分类的数据。在三维的情况下以图形来表示,该类数据具有立方体结构,一般称为数据立方体。虽然我们通常从几何意义的角度将立方体理解为三维的,但是在数据仓库中数据立方体是一个n-维的概念。,1.5 数据仓库的相关概念,UX-11,TR-78,EC-1,XVG,Jun.,May.,Apr.,Mar.,VCR,全部地区,南部,北部,1季度,2季度,上半年,产品,时,间,地 区,TR-75,CAMC,VIDEO,图1-2 销售数据多维数据立方体示意图,531,539,652,683,867,Feb.,531,605,Jan.,1.5 数据仓库的相关概念,联机分析处理(OLAP
8、)联机分析处理(OLAPOn_Line Analytical Processing)是快速、灵活的多维数据分析工具。OLAP的概念最早是由关系数据库之父于1993年提出的。OLAP的目的是支持分析决策,满足多维环境的查询和报表需求,其技术核心在于“维”的概念,OLAP是多维数据分析的工具。,1.5 数据仓库的相关概念,1.5 数据仓库的相关概念,数据集市 数据集市(Data Mart)是完整的数据仓库的一个逻辑子集,而数据仓库正是由其所有的数据集市有机组合而成的。数据集市一般由某一个业务部门投资建设,满足其分析决策的需要,可以将其理解为“部门级数据仓库”。,内容安排,1 数据仓库概述2 多维数
9、据模型3 数据仓库的体系结构4 数据仓库的数据组织5 数据仓库的数据预处理6 数据仓库应用举例,2 多维数据模型,2.1 E-R模型与多维模型2.2 星型模式2.3 星型模式的种类2.4 数据仓库的总线型结构,2.1 E-R模型与多维模型,实体-关系模型(Entity-Relationship Model)是操作型数据库系统普遍采用的数据建模方式,该技术的主要特点是可以减少数据的冗余,而且可以保证数据的唯一性。,2.1 E-R模型与多维模型,虽然实体-关系模型能成功地应用于操作型数据库系统,但是分析人员、决策人员不可能理解、更不可能记住这些实体-关系,因此让他们在实体-关系模型中进行主动的数据
10、检索是不可能的。支持分析型应用的解决方案是多维数据模型。,2.1 E-R模型与多维模型,多维数据模型很难说是由哪一个人创建的,它是在人们追求可理解和高性能的数据库设计过程中自然形成的。多维数据模型普遍采用的一种非常重要的模式是星形模式(Star Schema)。,2.2 星型模式,2.2 星型模式,事实表(Fact Table,也称主表)包含的是业务数据信息,数据取值通常是可度量的、连续型的,且具有可加性,数据量可达到几百万甚至上亿条记录。维表(Dimension Table,也称辅表)包含的是相应维度的描述型信息,这些信息用作查询的约束条件,一般是离散的、描述性的,不具有可加性。,2.2 星
11、型模式,主码与外码,2.2 星型模式,代理码,地区维表,销售事实表,2.3 星型模式的种类,简单星型模式(Simple Star Schema)星系模式(Star Galaxy Schema)星座模式(Star Constellation Schema)雪花模式(Snowflake Schema),2.3 星型模式的种类,简单星型模式(Simple Star Schema),2.3 星型模式的种类,星系模式(Star Galaxy Schema),2.3 星型模式的种类,星座模式(Star Constellation Schema),2.3 星型模式的种类,雪花模式(Snowflake Sch
12、ema),2.4 数据仓库的总线型结构,数据仓库的总线型结构(Data Warehouse Bus Architecture)一个数据仓库内所有的数据集市必须具有统一一致的维定义和统一一致的业务事实。统一的维和统一的事实就是数据仓库的“总线”,2.4 数据仓库的总线型结构,销售量事实,销售额事实,应收帐款事实,分销渠道维,时间维,客户维,产品维,统一的事实,统一的维,财务数据集市,销售数据集市,内容安排,1 数据仓库概述2 多维数据模型3 数据仓库的体系结构4 数据仓库的数据组织5 数据仓库的数据预处理6 数据仓库应用举例,3 数据仓库的体系结构,3.1 体系结构的内容3.2 相关的数据存储3
13、.3 相关的数据服务3.4 相关的数据管理元数据,3.1 体系结构的内容,从总体上讲,数据仓库的技术体系结构包括前台和后台两大部分内容:后台负责分析型应用的数据准备工作,完成从数据源向数据仓库主题数据的数据变换,一般称为数据的预处理。前台是面向数据仓库的最终用户的。对于最终用户而言,主题数据是直接的数据来源。前台需要安装一些分析型应用工具,提供分析报告、报表、图形等可视化的分析结果。,3.1 体系结构,3.2 相关的数据存储,数据源:数据仓库数据的原始来源主题数据:存储在数据仓库中的核心数据预处理数据:数据源和主题数据之间的中间结果查询服务数据:主题数据和用户最终查询结果之间的中间结果,3.3
14、 相关的数据服务,在数据仓库的技术体系结构中,主要涉及两种数据服务:后台数据预处理前台数据查询,3.3 相关的数据服务,后台数据预处理包括三种重要的数据操作:抽取(Extraction):从数据源抽取所需的数据。转换(Transformation):对抽取出的数据进行一系列的转换,以满足数据仓库主题数据内容与质量上的要求。装载(Loading):将转换后的数据装载入数据仓库。,3.3 相关的数据服务,前台数据查询服务的主要工作是提供各种分析应用工具,形成可视化分析结果展现给最终用户。数据查询各种报表的生成访问安全保障其它服务,如:同数据挖掘的结合应用,3.4 相关的数据管理元数据,“元数据是数
15、据仓库世界中令人惊异的一个话题。想一想,我们不知道它确切地是什么,确切地放在哪里。但是,与其它话题相比,我们谈论它的时间更多,因为它而烦恼的时间更多,因为对它无所为而感觉愧疚的时间也更多。几年以前,我们认为元数据是任何关于数据的数据。这并没有多大的帮助,因为我们还是不清楚这个起到穿针引线作用的东西是什么。这个模糊的概念已逐渐清晰起来,我们已经更自信地谈论后台元数据和前台元数据。”,3.4 相关的数据管理元数据,“后台元数据能够帮助数据库管理员将数据放入数据仓库,而且,在商务用户询问数据来自哪里时,也可能是他们所关心的。前台元数据主要出于对终端用户的考虑,其定义已经扩展,不仅仅是使我们的工具运转
16、灵活的机油,而且是以所有的数据元素表述的一种业务内容字典。”,3.4 相关的数据管理元数据,数据源元数据预处理数据元数据数据仓库主题数据元数据前台查询服务元数据,3.4 相关的数据管理元数据,(1)数据源元数据数据源存储平台数据源的数据格式数据源的业务内容说明数据源的更新频率数据源的所有者数据源的访问方法及使用限制实施数据抽取的工具或其它方法,及相应的参数设置数据抽取的进度安排实际数据抽取的时间、内容及完成情况记录,3.4 相关的数据管理元数据,(2)预处理数据元数据数据抽取、转换、装载过程中用到的各种文件定义从数据源到各级中间视图及主题数据实视图间的数据对应关系有关数据净化的详细说明数据仓库
17、的总线统一的事实和统一的维的定义维表各属性的更新策略选择代理码的分配情况数据聚集的定义数据聚集的使用统计及更新维护记录完成数据转换的工具或其它方法,及相应参数设置预处理数据的备份方法实际数据转换与装载记录,3.4 相关的数据管理元数据,(3)数据仓库主题数据元数据各种数据库表或视图的定义数据库分区设置索引的建立方法数据库访问权限分配数据库备份方案,3.4 相关的数据管理元数据,(4)前台查询服务元数据数据库表及表中数据项的业务含义说明可视化查询结果格式的定义用户及其访问权限的定义数据仓库使用情况的监控与统计,3.4 相关的数据管理元数据,从上述数据仓库元数据的内容我们应该可以知道:为什么难以给
18、元数据一个直观明了的定义。可以说,除了基本数据存储以外,元数据无所不在。它对所有的数据元素进行定义,并确定这些数据元素之间如何协调工作来共同满足分析型应用的需要。,内容安排,1 数据仓库概述2 多维数据模型3 数据仓库的体系结构4 数据仓库的数据组织5 数据仓库的数据预处理6 数据仓库应用举例,4 数据仓库的数据组织,4.1 事实表和维表的设计4.2 数据聚集的设计4.3 数据仓库中的索引4.4 数据库的物理设计,4.1 事实表和维表的设计,事实表的设计包括四项工作,依时间先后顺序分别为:明确数据集市及相应的数据源确定事实表的粒度确定相应的维度确定事实表中的度量值,4.1 事实表和维表的设计,
19、图5-2 维表的设计与分析报表的关系,4.1 事实表和维表的设计,在进行维表的设计时,应该注意以下两点:维表中的维属性应该具体明确,体现出维层次的划分,这同操作型应用不同。在进行维表的设计时一定要注意维属性的可读性,因为维表中的维属性值将最终成为分析报表中的行标题。例如,对于产品维来讲,可以在维表中存放产品代码,但同时一定要存放完整的产品名称。因为在许多情况下很难从代码或缩写中判断到底指的是什么。因此,维表中的数据冗余是不可避免的。,4.2 数据聚集的设计,所有的数据仓库都包含数据的聚集(Aggregates)。在数据仓库中,进行数据的聚集是减少OLAP分析需要扫描的数据量、提高查询效率的最重
20、要的方法。在数据聚集设计成功的情况下,系统的查询性能可以有成百上千倍的提高。就目前而言,还很难找到比这更有效的方法。,4.2 数据聚集的设计,数据聚集虽然非常有效,但并不是聚集越多越好。就一个星型模式而言,假设存在6个维,每个维有3个属性,那么可能建立的全部聚集数目为36,即729个。如果这些聚集全部建立起来,不仅占据存储空间,使用起来也非常的麻烦,而且还可能存在从未被使用过的聚集。在进行数据聚集的设计时,一定要充分分析数据仓库系统的商务需求和查询性能要求,尽可能做到“必要的一个不少,不必要的一个不多”。,4.3 数据仓库中的索引,比较常见的索引方法主要包括:B-树索引(B-Tree Inde
21、xe)位图索引(Bit-Map Indexe)哈希索引(Hash Indexe)B-树索引和位图索引在数据仓库中也得到了广泛的应用。,4.3 数据仓库中的索引,新的数据仓库索引技术主要包括:投影索引(Projection Indexes)位切片索引(Bit-Sliced Indexes)连接索引(Join Indexes)R-树索引(R-Tree Indexes),数据仓库中的索引举例,4.4 数据库的物理设计,我们在前面介绍的多维数据模型是数据仓库的逻辑模型。物理设计的任务就是将逻辑模型转变为实际的数据库存储。,4.4 数据库的物理设计,按实际工作的先后顺序,物理设计主要包括下列内容:制定数
22、据库对象的命名规范建立数据库物理模型确定数据库索引策略进行数据仓库数据量的估计物理设计的具体实施,内容安排,1 数据仓库概述2 多维数据模型3 数据仓库的体系结构4 数据仓库的数据组织5 数据仓库的数据预处理6 数据仓库应用举例,5 数据仓库的数据预处理,5.1 数据的净化5.2 数据预处理计划5.3 维表的预处理5.4 事实表的预处理,5.1 数据的净化,一般认为净化后的数据应该具备下述特点:正确清晰及时完整一致,5.2 数据预处理计划(初步),5.2,5.3 维表的预处理,基本数据预处理维表代理码的分配维表的变更处理,5.4 事实表的预处理,基本数据预处理非代理码的替换数据的更新维护(基本
23、数据和聚集数据),内容安排,1 数据仓库概述2 多维数据模型3 数据仓库的体系结构4 数据仓库的数据组织5 数据仓库的数据预处理6 数据仓库应用举例,6 数据仓库应用举例,工具:SQL SERVER 2000数据来源:武汉钢铁集团销售公司分析主题:订货分析,6 数据仓库应用举例,数据源(Foxprow 文件),6 数据仓库应用举例,订货主题的星型模式,6 数据仓库应用举例,数据预处理 应用SQL Server 2000中的数据转换服务DTS(Data Transformation Services)把不同的数据来源中的数据结合起来,并利用自身的数据转换功能把这些结合后的数据放入数据仓库之中。,6 数据仓库应用举例,SQL SERVER 提供的分析工具:在多维数据集构建完成后,用户直接进行OLAP操作通过数据透视表服务(PivotTable Services),用Excel 2000将多维数据集中的数据取来做分析。,6 数据仓库应用举例,OLAP 分析,6 数据仓库应用举例,应用数据透视表的图形分析,谢 谢!,