第2章数据仓库及其设计

上传人:无*** 文档编号:133426156 上传时间:2022-08-10 格式:PPTX 页数:105 大小:3.89MB
返回 下载 相关 举报
第2章数据仓库及其设计_第1页
第1页 / 共105页
第2章数据仓库及其设计_第2页
第2页 / 共105页
第2章数据仓库及其设计_第3页
第3页 / 共105页
点击查看更多>>
资源描述
第第2章章 数据仓库设计数据仓库设计 2.1 数据仓库设计概述数据仓库设计概述数据仓库设计是建立一个面向企业决策者的分析环数据仓库设计是建立一个面向企业决策者的分析环境或系统。境或系统。2.1.1 2.1.1 数据仓库设计原则数据仓库设计原则以业务和需求为中心以业务和需求为中心:是指围绕业务方向性需求、业:是指围绕业务方向性需求、业务问题等,确定系统范围和总体框架。务问题等,确定系统范围和总体框架。以数据来驱动以数据来驱动:是指其所有数据均建立在已有数据源是指其所有数据均建立在已有数据源基础上,从已存在于操作型环境中的数据出发进行数基础上,从已存在于操作型环境中的数据出发进行数据仓库设计。据仓库设计。2.1.2 2.1.2 数据仓库构建模式数据仓库构建模式1.先整体再局部的构建模式:先整体再局部的构建模式:W.H.Inmon模式模式优点:优点:数据规范化程度高,数据规范化程度高,最小化数据冗余与不一致最小化数据冗余与不一致性;便于全局数据的分析性;便于全局数据的分析和挖掘。和挖掘。缺点:缺点:建设周期长、见效慢;建设周期长、见效慢;风险程度相对大。风险程度相对大。2.先局部再整体的构建模式:先局部再整体的构建模式:Ralph Kimball 模式模式优点:优点:投资少、见效快;在投资少、见效快;在设计上相对灵活;易于实设计上相对灵活;易于实现。现。缺点:缺点:会有一定级别的冗余会有一定级别的冗余和不一致性。和不一致性。2.1.3 2.1.3 数据仓库设计步骤数据仓库设计步骤(1 1)数据仓库的规划和需求分析。)数据仓库的规划和需求分析。(2 2)数据仓库的建模。)数据仓库的建模。(3 3)数据仓库物理模型设计。)数据仓库物理模型设计。(4 4)数据仓库的部署。)数据仓库的部署。(5 5)数据仓库的维护。)数据仓库的维护。2.2 数据仓库规划和需求分析数据仓库规划和需求分析2.2.1 2.2.1 数据仓库的规划数据仓库的规划数据仓库的策略规划包括:数据仓库的策略规划包括:明确用户的战略远景、业务目标。明确用户的战略远景、业务目标。确定建设数据仓库的目的和目标。确定建设数据仓库的目的和目标。定义清楚数据仓库的范围、优先顺序、主题和针对的业务。定义清楚数据仓库的范围、优先顺序、主题和针对的业务。定义衡量数据仓库成功的要素。定义衡量数据仓库成功的要素。定义精简的体系结构、使用技术、配置、容量要求等。定义精简的体系结构、使用技术、配置、容量要求等。定义操作数据和外部数据源。定义操作数据和外部数据源。确定建设所需要的工具。确定建设所需要的工具。概要性地定义数据获取和质量控制的策略。概要性地定义数据获取和质量控制的策略。数据仓库管理及安全。数据仓库管理及安全。2.2.2 2.2.2 数据仓库的需求分析数据仓库的需求分析主题分析主题分析数据分析数据分析环境要求分析环境要求分析2.3 数据仓库的建模数据仓库的建模2.3.1 2.3.1 多维数据模型及相关概念多维数据模型及相关概念多维数据模型将数据看作数据立方体形式,满足用户多维数据模型将数据看作数据立方体形式,满足用户从多角度多层次进行数据查询和分析的需要而建立起来的从多角度多层次进行数据查询和分析的需要而建立起来的基于事实和维的数据库模型。基于事实和维的数据库模型。其数据组织采用多维结构文件进行数据存储,并有索其数据组织采用多维结构文件进行数据存储,并有索引及相应的元数据管理文件与数据相对应。引及相应的元数据管理文件与数据相对应。1.粒度(粒度(Granularity)粒度粒度是指数据仓库中数据单元的详细程度和级别,确定是指数据仓库中数据单元的详细程度和级别,确定数据仓库的粒度是设计数据仓库的一个最重要方面。数据仓库的粒度是设计数据仓库的一个最重要方面。数据越详细,粒度越小级别就越低;数据综合度越高,数据越详细,粒度越小级别就越低;数据综合度越高,粒度越大级别就越高粒度越大级别就越高。例如,地址数据中。例如,地址数据中“北京市北京市”比比“北北京市海淀区京市海淀区”的粒度小。的粒度小。在传统的操作型数据库系统中,对数据处理和操作都是在传统的操作型数据库系统中,对数据处理和操作都是在最低级的粒度上进行的在最低级的粒度上进行的。但是在数据仓库环境中应用的主。但是在数据仓库环境中应用的主要是分析型处理,一般需要将数据划分为详细数据、轻度总要是分析型处理,一般需要将数据划分为详细数据、轻度总结、高度总结三级或更多级粒度。结、高度总结三级或更多级粒度。2.维度(维度(Dimension)维度维度(简称为维)是指人们观察事物的特定的角度,概(简称为维)是指人们观察事物的特定的角度,概念上类似于关系表的属性。念上类似于关系表的属性。例如企业常常关心产品销售数据随着时间推移而变化的例如企业常常关心产品销售数据随着时间推移而变化的情况,这是从时间的角度来观察产品的销售,即情况,这是从时间的角度来观察产品的销售,即时间维时间维;企业也常常关心本企业的产品在不同地区的销售分布情企业也常常关心本企业的产品在不同地区的销售分布情况,这时是从地理分布的角度来观察产品的销售,即况,这时是从地理分布的角度来观察产品的销售,即地区维地区维。3.维属性和维成员维属性和维成员一个维是通过一组属性来描述的,如时间维包含年份、一个维是通过一组属性来描述的,如时间维包含年份、季度、月份和日期等属性,这里的年份、季度等称为时间季度、月份和日期等属性,这里的年份、季度等称为时间维的维的维属性维属性。维的一个取值称为该维的一个维的一个取值称为该维的一个维成员维成员,如果一个维是,如果一个维是多层次的,那么该维的维成员是在不同维层次的取值组合。多层次的,那么该维的维成员是在不同维层次的取值组合。例如,一个时间维具有年份、季度、月份、日期四个层次,例如,一个时间维具有年份、季度、月份、日期四个层次,分别在四个层次各取一个值,就得到时间维的一个维成员,分别在四个层次各取一个值,就得到时间维的一个维成员,即某年某季某月某日。即某年某季某月某日。4.维层次维层次同一维度可以存在细节程度不同的各个值,可以将粒度同一维度可以存在细节程度不同的各个值,可以将粒度大的值映射到粒度小的值,这样构成维层次(或维层次结构)大的值映射到粒度小的值,这样构成维层次(或维层次结构)或概念分层,即将低层概念映射到更一般的高层概念,概念或概念分层,即将低层概念映射到更一般的高层概念,概念分层允许在各种抽象级审查和处理数据。分层允许在各种抽象级审查和处理数据。例如对于地点维,有例如对于地点维,有“杭州杭州浙江浙江中国中国”的维层次。的维层次。又例如时间维,可以从年、季度、月份、日期来描述,那又例如时间维,可以从年、季度、月份、日期来描述,那么么“年份年份季度季度月份月份日期日期”就是维层次。就是维层次。5.度量(度量(Measure)或事实()或事实(Fact)度量是数据仓库中的信息单元,即多维空间中的一度量是数据仓库中的信息单元,即多维空间中的一个单元,用以存放数据,也称为事实(个单元,用以存放数据,也称为事实(FactFact)。)。通常是数值型数据并具有可加性。例如:通常是数值型数据并具有可加性。例如:(日期,商品,地区,销售量)(日期,商品,地区,销售量)其中,销售量就是一个度量。其中,销售量就是一个度量。2.3.2 2.3.2 多维数据模型的实现多维数据模型的实现多维数据模型实现方式:多维数据模型实现方式:关系数据库(关系数据库(RDBRDB)多维数据库(多维数据库(MDDBMDDB)两者相结合(两者相结合(HDBHDB)1.关系数据库关系数据库在基于关系数据库的数据仓库中有两类表,一类是维在基于关系数据库的数据仓库中有两类表,一类是维表,对每个维至少使用一个表存放维的层次、成员等维的表,对每个维至少使用一个表存放维的层次、成员等维的描述信息;另一类是事实表,用来存放维关键字和度量等描述信息;另一类是事实表,用来存放维关键字和度量等信息。信息。维表和事实表通过主关键字(主键)和外关键字(外维表和事实表通过主关键字(主键)和外关键字(外键)联系在一起。键)联系在一起。多维数据立方体各个坐标轴上的刻度以及立方体各个多维数据立方体各个坐标轴上的刻度以及立方体各个交点的取值都被记录下来,因而数据立方体的全部信息就交点的取值都被记录下来,因而数据立方体的全部信息就都被记录了下来。都被记录了下来。例如,下表是一个关系表的数据组织形式,其中包含例如,下表是一个关系表的数据组织形式,其中包含按产品和地区两项分类统计的销售量。按产品和地区两项分类统计的销售量。产品产品地区地区销售量销售量电视机电视机华北华北1010电视机电视机华东华东2020电视机电视机华中华中3030电视机电视机华南华南4040电冰箱电冰箱华北华北4040电冰箱电冰箱华东华东3030电冰箱电冰箱华中华中2020电冰箱电冰箱华南华南1010手机手机华北华北5050手机手机华东华东6060手机手机华中华中7070手机手机华南华南80802.多维数据库多维数据库多维数据库也是一种数据库,可以将数据加载、存储多维数据库也是一种数据库,可以将数据加载、存储到此数据库中,或从中查询数据。但其数据是存放在大量到此数据库中,或从中查询数据。但其数据是存放在大量的多维数组中,而不是关系表中。的多维数组中,而不是关系表中。例如例如ExcelExcel便是如此。便是如此。例如,上一个表采用多维数据库的数据组织形式如下表所示。例如,上一个表采用多维数据库的数据组织形式如下表所示。华北华北华东华东华中华中华南华南电视机电视机1010202030304040电冰箱电冰箱4040303020201010手机手机5050606070708080产品产品地区地区销售量销售量电视机电视机华北华北1010电视机电视机华东华东2020电视机电视机华中华中3030电视机电视机华南华南4040电冰箱电冰箱华北华北4040电冰箱电冰箱华东华东3030电冰箱电冰箱华中华中2020电冰箱电冰箱华南华南1010手机手机华北华北5050手机手机华东华东6060手机手机华中华中7070手机手机华南华南8080在关系数据库中,在关系数据库中,“多对多多对多”的关系总是转化成多个的关系总是转化成多个“一对多一对多”的关系,有利于数据的一致性和规范化的关系,有利于数据的一致性和规范化,这符合,这符合事务处理系统的需求。事务处理系统的需求。多维数据库的优势不仅在于多维数据库的优势不仅在于多维概念表达清晰多维概念表达清晰,占用存,占用存储少,更重要的是它有着储少,更重要的是它有着高速的综合速度高速的综合速度。在多维数据库中,数据可以直接按行或列累加,并且由在多维数据库中,数据可以直接按行或列累加,并且由于多维数据库中不像关系表那样出现大量的冗余信息,因此于多维数据库中不像关系表那样出现大量的冗余信息,因此其统计速度远远超过关系数据库,数据库记录数越多,其效其统计速度远远超过关系数据库,数据库记录数越多,其效果越明显。果越明显。2.3.3 2.3.3 数据仓库建模的主要工作数据仓库建模的主要工作1.在需求分析上,确定系统所包含的主题域并加以描述在需求分析上,确定系统所包含的主题域并加以描述主题选取的原则是优先实施管理者目前最迫切需求、主题选取的原则是优先实施管理者目前最迫切需求、最关心的主题。主题内容的描述包括主题的公共键、主题最关心的主题。主题内容的描述包括主题的公共键、主题之间的联系和各主题的属性。之间的联系和各主题的属性。例如,若以顾客为主题,则设计的相关主题内容的描例如,若以顾客为主题,则设计的相关主题内容的描述如下:述如下:基本信息:顾客号、顾客姓名、性别、年龄、文化程度、住址、电话基本信息:顾客号、顾客姓名、性别、年龄、文化程度、住址、电话经济信息:顾客号、年收入、家庭总收入经济信息:顾客号、年收入、家庭总收入公共键:顾客号公共键:顾客号2.确定事实表的粒度确定事实表的粒度事实表的粒度能够表达数据的详细程度。从用途的不事实表的粒度能够表达数据的详细程度。从用途的不同来说,事实表可以分为以下三类:同来说,事实表可以分为以下三类:原子事实表原子事实表:是保存最细粒度数据的事实表,也是数:是保存最细粒度数据的事实表,也是数据仓库中保存原子信息的场所。据仓库中保存原子信息的场所。聚集事实表聚集事实表:是原子事实表上的汇总数据,也称为汇:是原子事实表上的汇总数据,也称为汇总事实表。总事实表。合并事实表合并事实表:是指将位于不同事实表中处于相同粒度:是指将位于不同事实表中处于相同粒度的事实进行组合建模而成的一种事实表。的事实进行组合建模而成的一种事实表。3.确定数据分割策略确定数据分割策略分割是指把逻辑上是统一整体的数据分割成较小的、分割是指把逻辑上是统一整体的数据分割成较小的、可以独立管理的物理单元进行存储可以独立管理的物理单元进行存储,以便能分别处理,从,以便能分别处理,从而提高数据处理的效率。而提高数据处理的效率。分割可以分割可以按时间、地区、业务类型按时间、地区、业务类型等多种标准来进行,等多种标准来进行,也可以按自定义标准,分割之后小单元的数据相对独立,也可以按自定义标准,分割之后小单元的数据相对独立,处理起来更快更容易。但在多数情况下,数据分割采用的处理起来更快更容易。但在多数情况下,数据分割采用的标准不是单一的,而是多个标准的组合。标准不是单一的,而是多个标准的组合。4.构建数据仓库中各主题的多维数据模型及其联系构建数据仓库中各主题的多维数据模型及其联系由于数据仓库目前大多是使用关系数据库来实现的,由于数据仓库目前大多是使用关系数据库来实现的,所以本章主要讨论基于关系数据库的数据仓库建模方法。所以本章主要讨论基于关系数据库的数据仓库建模方法。2.3.4 2.3.4 几种常见的基于关系数据库的多维数据模型几种常见的基于关系数据库的多维数据模型1.1.星形模式星形模式星形模式(星形模式(Star schemaStar schema)是由一个事实表和一组维表)是由一个事实表和一组维表组成,每个维表都有一个维主键,所有这些维组合成事实表组成,每个维表都有一个维主键,所有这些维组合成事实表的主键,换言之,事实表主键的每个元素都是维表的外键。的主键,换言之,事实表主键的每个元素都是维表的外键。该模式的核心是事实表,通过事实表将各种不同的维表该模式的核心是事实表,通过事实表将各种不同的维表连接起来,各个维表都连接到中央事实表。连接起来,各个维表都连接到中央事实表。(1 1)星形模式的基本结构)星形模式的基本结构星形模式的基本结构如下:星形模式的基本结构如下:星形模式的特点如下:星形模式的特点如下:维度表只与事实表关联,维度表彼此之间没有任何联系。维度表只与事实表关联,维度表彼此之间没有任何联系。每个维度表中的主码都只能是单列的,同时该主码被放置每个维度表中的主码都只能是单列的,同时该主码被放置在事实数据表中,作为事实数据表与维表连接的外码。在事实数据表中,作为事实数据表与维表连接的外码。星型模式是以事实表为核心,其他的维度表围绕这个核心星型模式是以事实表为核心,其他的维度表围绕这个核心表呈星型状分布。表呈星型状分布。【例例2.12.1】一个一个“销售销售”数据仓库的星形模式如图数据仓库的星形模式如图2.52.5所示。所示。该模式包含一个中心事实表该模式包含一个中心事实表“销售事实表销售事实表”和和4 4个维表:时间个维表:时间维表、销售商品维表、销售地点维表和顾客维表。在销售事实维表、销售商品维表、销售地点维表和顾客维表。在销售事实表中存储着四个维表的主键和两个度量表中存储着四个维表的主键和两个度量“销售量销售量”和和“销售金销售金额额”。(2)维表设计)维表设计维表用于存放维信息,包括维的属性(列)和维的层维表用于存放维信息,包括维的属性(列)和维的层次结构。一个维用一个维表表示。维表通常具有以下数据次结构。一个维用一个维表表示。维表通常具有以下数据特征:特征:维通常使用使用解析过的时间、名字或地址元素,这样维通常使用使用解析过的时间、名字或地址元素,这样可以使查询更灵活。例如时间可分为年份、季度、月份可以使查询更灵活。例如时间可分为年份、季度、月份和时期等,地址可用地理区域来区分,如国家、省、市、和时期等,地址可用地理区域来区分,如国家、省、市、县等。县等。维表通常不使用业务数据库的关键字作为主键,而是对维表通常不使用业务数据库的关键字作为主键,而是对每个维表另外增加一个额外的字段作为主键来识别维表每个维表另外增加一个额外的字段作为主键来识别维表中的对象。在维表中新设定的键也称为代理键。中的对象。在维表中新设定的键也称为代理键。维表中可以包含随时间变化的字段,当数据集市或数据维表中可以包含随时间变化的字段,当数据集市或数据仓库的数据随时间变化而有额外增加或改变时,维表的仓库的数据随时间变化而有额外增加或改变时,维表的数据行应有标识此变化的字段。数据行应有标识此变化的字段。维表中维的类型:维表中维的类型:结构维结构维信息维信息维分区维分区维分类维分类维退化维退化维一致维一致维父子维父子维在数据仓库的逻辑模型设计中,有一在数据仓库的逻辑模型设计中,有一些维表是经常使用的,它们的设计形成了些维表是经常使用的,它们的设计形成了一定的设计原则,如时间维、地理维、机一定的设计原则,如时间维、地理维、机构维和客户维等,所以在设计维表时应遵构维和客户维等,所以在设计维表时应遵循这些设计原则。循这些设计原则。又例如,数据仓库存储的是系统的历又例如,数据仓库存储的是系统的历史数据,业务分析最基本的维度就是时间史数据,业务分析最基本的维度就是时间维,所以每个主题通常都有一个时间维。维,所以每个主题通常都有一个时间维。(3)概念分层)概念分层维表中维一般包含着层次关系,也称为概念分层,如在维表中维一般包含着层次关系,也称为概念分层,如在时间维上,按照时间维上,按照“年份季度月份年份季度月份”形成了一个层次,其形成了一个层次,其中年份、季度、月份成为这个层次的三个级别。中年份、季度、月份成为这个层次的三个级别。概念分层的作用如下:概念分层的作用如下:概念分层为不同级别上的数据汇总提供了一个良好的概念分层为不同级别上的数据汇总提供了一个良好的基础。基础。综合概念分层和多维数据模型的潜力,可以对数据获得更深综合概念分层和多维数据模型的潜力,可以对数据获得更深入的入的洞察力洞察力。通过在多维数据模型中,在不同的维上定义概念分层,使得通过在多维数据模型中,在不同的维上定义概念分层,使得用户在不同的维上用户在不同的维上从不同的层次对数据进行观察从不同的层次对数据进行观察成为可能。成为可能。多维数据模型使得从不同的角度对数据进行观察成为可能,多维数据模型使得从不同的角度对数据进行观察成为可能,而概念分层则提供了从不同层次对数据进行观察的能力;结而概念分层则提供了从不同层次对数据进行观察的能力;结合这两者的特征,我们可以在多维数据模型上定义各种合这两者的特征,我们可以在多维数据模型上定义各种OLAPOLAP操作,为用户操作,为用户从不同角度不同层次观察数据从不同角度不同层次观察数据提供了灵活性。提供了灵活性。(4)事实表设计)事实表设计事实表是多维模型的核心,是用来记录业务事实并作事实表是多维模型的核心,是用来记录业务事实并作相应指标统计的表,同维表相比,事实现具有如下特征:相应指标统计的表,同维表相比,事实现具有如下特征:记录数量很多,因此事实表应当尽量减小一条记录的记录数量很多,因此事实表应当尽量减小一条记录的长度,避免事实表过大而难于管理。长度,避免事实表过大而难于管理。事实表中除度量外,其他字段都是维表或中间表(对事实表中除度量外,其他字段都是维表或中间表(对于雪花模式)的关键字(外键)。于雪花模式)的关键字(外键)。如果事实相关的维很多,则事实表的字段个数也会比如果事实相关的维很多,则事实表的字段个数也会比较多。较多。在查询事实表时,通常使用到聚集函数,一个聚集函数从在查询事实表时,通常使用到聚集函数,一个聚集函数从多个事实表记录中计算出一个结果。度量可以根据其所用的聚多个事实表记录中计算出一个结果。度量可以根据其所用的聚集函数分为三类:集函数分为三类:分布的聚集函数分布的聚集函数:将这类函数用于:将这类函数用于n n个聚集值得到的结果个聚集值得到的结果和将函数用于所有数据得到的结果一样。例如和将函数用于所有数据得到的结果一样。例如COUNTCOUNT(求(求记录个数)、记录个数)、SUMSUM(求和)、(求和)、MINMIN(求最小值)、(求最小值)、MAXMAX(求(求最大值)等。最大值)等。代数的聚集函数代数的聚集函数:函数可以由一个带:函数可以由一个带m m个参数的代数函数个参数的代数函数计算(计算(m m为有界整数),而每个参数值都可以由一个分布为有界整数),而每个参数值都可以由一个分布的聚集函数求得。例如的聚集函数求得。例如AVGAVG(求平均值)等。(求平均值)等。整体的聚集函数整体的聚集函数:描述函数的子聚集所需的存储没有一:描述函数的子聚集所需的存储没有一个常数界,即不存在一个具有个常数界,即不存在一个具有m m个参数的代数函数进行这个参数的代数函数进行这一计算。例如一计算。例如MODEMODE(求最常出现的项)。(求最常出现的项)。2.雪花模式雪花模式(1)雪花模式的基本结构)雪花模式的基本结构雪花模式(雪花模式(Snowflake schemaSnowflake schema)是对星形模式的扩展,)是对星形模式的扩展,每一个维表都可以向外连接多个详细类别表。每一个维表都可以向外连接多个详细类别表。在这种模式中,维表除了具有星形模式中维表的功能在这种模式中,维表除了具有星形模式中维表的功能外,还连接对事实表进行详细描述的详细类别表,详细类外,还连接对事实表进行详细描述的详细类别表,详细类别表通过对事实表在有关维上的详细描述达到了缩小事实别表通过对事实表在有关维上的详细描述达到了缩小事实表和提高查询效率的目的,表和提高查询效率的目的,雪花模式的基本结构如下:雪花模式的基本结构如下:星形模式虽然是一个关系模型,但是它不是一个规范星形模式虽然是一个关系模型,但是它不是一个规范化的模型,在星形模式中,维表被故意地非规范化了,雪化的模型,在星形模式中,维表被故意地非规范化了,雪花模式对星形模式的维表进一步标准化,对星形模式中的花模式对星形模式的维表进一步标准化,对星形模式中的维表进行了规范化处理。维表进行了规范化处理。雪花模式的特点如下:雪花模式的特点如下:某个维表不与事实表直接关联,而是与另一个维表关联。某个维表不与事实表直接关联,而是与另一个维表关联。可以进一步细化查看数据的粒度。可以进一步细化查看数据的粒度。维表和与其相关联的其他维表也是靠外码关联的。维表和与其相关联的其他维表也是靠外码关联的。也以事实数据表为核心。也以事实数据表为核心。【例例2.22.2】在图在图2.52.5的星形模式中,每维只用一个维表表示,的星形模式中,每维只用一个维表表示,而每个维表包含一组属性。例如,销售地点维表包含属性集而每个维表包含一组属性。例如,销售地点维表包含属性集Location_idLocation_id,街道,城市,省,国家,街道,城市,省,国家。图图2.5这种模式可能造成某些冗余,例如,可能存在城市、省、这种模式可能造成某些冗余,例如,可能存在城市、省、国家字段的数据冗余:国家字段的数据冗余:101,“101,“解放大道解放大道100100号号”,“武汉武汉”,“湖北省湖北省”,“中国中国”201,“201,“解放大道解放大道8585号号”,“武汉武汉”,“湖北省湖北省”,“中国中国”255,“255,“解放大道解放大道205205号号”,“武汉武汉”,“湖北省湖北省”,“中国中国”可以对地点维表进一步规范化,如图可以对地点维表进一步规范化,如图2.72.7所示,这样就所示,这样就构成了构成了“销售销售”数据仓库的雪花模式。数据仓库的雪花模式。图图2.7(2)雪花模式和星形模式的比较)雪花模式和星形模式的比较比较项目比较项目星形模式星形模式雪花模式雪花模式行数行数多多少少可读性可读性容易容易难难表数量表数量少少多多搜索维的时间搜索维的时间快快慢慢3.事实星座模式事实星座模式(1)事实星座模式的基本结构)事实星座模式的基本结构通常一个星形模式或雪花模式对应一个问题的解决通常一个星形模式或雪花模式对应一个问题的解决(一个主题),它们都有多个维表,但是只能存在一个事(一个主题),它们都有多个维表,但是只能存在一个事实表。实表。在一个多主题的复杂数据仓库中可能存放多个事实表,在一个多主题的复杂数据仓库中可能存放多个事实表,此时就会出现多个事实表共享某一个或多个维表的情况,此时就会出现多个事实表共享某一个或多个维表的情况,这就是事实星座模式(这就是事实星座模式(Fact Constellations schemaFact Constellations schema)。)。【例例2.32.3】在图在图2.52.5的星形模式的基础上,增加一个供货的星形模式的基础上,增加一个供货分析主题,包括供货时间(分析主题,包括供货时间(Time_idTime_id)、供货商品)、供货商品(Item_idItem_id)、供货地点()、供货地点(Locate_idLocate_id)、供应商)、供应商(Supplier_idSupplier_id)、供货量和供货金额等属性。)、供货量和供货金额等属性。设计相应的供货事实表,对应的维表有时间维表、商品设计相应的供货事实表,对应的维表有时间维表、商品维表、地点维表和供应商维表,其中前三个维表和销售事实维表、地点维表和供应商维表,其中前三个维表和销售事实表共享,对应的事实星座模式如图表共享,对应的事实星座模式如图2.82.8所示。所示。图图2.8(2)三种模式的关系)三种模式的关系2.4 数据仓库的物理模型设计数据仓库的物理模型设计设计数据仓库的物理模型时,要求设计人员必须做到以设计数据仓库的物理模型时,要求设计人员必须做到以下几方面:下几方面:构建数据仓库的物理模型与所选择的数据仓库开发工具构建数据仓库的物理模型与所选择的数据仓库开发工具密切相关。这个阶段所做的工作是确定数据的存储结构,确密切相关。这个阶段所做的工作是确定数据的存储结构,确定索引策略和确定存储分配等。定索引策略和确定存储分配等。要全面了解所选用的数据仓库开发工具,特别是存要全面了解所选用的数据仓库开发工具,特别是存储结构和存取方法。储结构和存取方法。了解数据环境、数据的使用频度、使用方式、数据了解数据环境、数据的使用频度、使用方式、数据规模以及响应时间要求等,这些是对时间和空间效规模以及响应时间要求等,这些是对时间和空间效率进行平衡和优化的重要依据。率进行平衡和优化的重要依据。了解外部存储设备的特性,如分块原则,块大小的了解外部存储设备的特性,如分块原则,块大小的规定,设备的规定,设备的I/OI/O特性等。特性等。2.4.1 2.4.1 确定数据的存储结构确定数据的存储结构一个数据仓库开发工具往往都提供多种存储结构供设一个数据仓库开发工具往往都提供多种存储结构供设计人员选用,不同的存储结构有不同的实现方式,各有各计人员选用,不同的存储结构有不同的实现方式,各有各的适用范围和优缺点。的适用范围和优缺点。设计人员在选择合适的存储结构时应该权衡三个方面设计人员在选择合适的存储结构时应该权衡三个方面的主要因素:的主要因素:存取时间、存储空间利用率和维护代价存取时间、存储空间利用率和维护代价。同一个主题的数据并不要求存放在相同的介质上同一个主题的数据并不要求存放在相同的介质上。在物理设计时,常常要按数据的重要程度、使用频率以在物理设计时,常常要按数据的重要程度、使用频率以及对响应时间的要求进行分类,并将不同类的数据分别存储及对响应时间的要求进行分类,并将不同类的数据分别存储在不同的存储设备中。在不同的存储设备中。重要程度高、经常存取并对响应时间要求高的数据就存重要程度高、经常存取并对响应时间要求高的数据就存放在高速存储设备上,如硬盘;存取频率低或对存取响应时放在高速存储设备上,如硬盘;存取频率低或对存取响应时间要求低的数据则可以放在低速存储设备上,如磁盘或磁带。间要求低的数据则可以放在低速存储设备上,如磁盘或磁带。常用的策略:常用的策略:合并表组织合并表组织 引入冗余引入冗余 分割表组织分割表组织 生成导出数据生成导出数据2.4.2 2.4.2 确定索引策略确定索引策略数据仓库的数据量很大,因而需要对数据的存取路数据仓库的数据量很大,因而需要对数据的存取路径进行仔细的设计和选择。径进行仔细的设计和选择。由于数据仓库的数据都是不常更新的,因而可以设由于数据仓库的数据都是不常更新的,因而可以设计多种多样的索引结构来提高数据存取效率。计多种多样的索引结构来提高数据存取效率。设计人员可以考虑对各个数据存储建立专用的、复设计人员可以考虑对各个数据存储建立专用的、复杂的索引,以获得最高的存取效率。杂的索引,以获得最高的存取效率。2.4.3 2.4.3 确定存储分配确定存储分配许多数据仓库开发工具提供了一些存储分配的参数供许多数据仓库开发工具提供了一些存储分配的参数供设计者进行物理优化处理,例如,块的尺寸、缓冲区的大设计者进行物理优化处理,例如,块的尺寸、缓冲区的大小和个数等等,它们都要在物理设计时确定。小和个数等等,它们都要在物理设计时确定。这同创建数据库系统时的考虑是一样的。这同创建数据库系统时的考虑是一样的。2.5 数据仓库的部署和维护数据仓库的部署和维护2.5.1 2.5.1 数据仓库的部署数据仓库的部署完成前面各项工作之后,可以进入数据仓库的部署阶完成前面各项工作之后,可以进入数据仓库的部署阶段,主要包括段,主要包括用户认可、初始装载、桌面准备和初始培训用户认可、初始装载、桌面准备和初始培训。2.5.2 2.5.2 数据仓库的维护数据仓库的维护维护数据仓库的工作主要是管理日常数据装入的工作,维护数据仓库的工作主要是管理日常数据装入的工作,包括刷新数据仓库的当前详细数据,将过时的数据转化成历包括刷新数据仓库的当前详细数据,将过时的数据转化成历史数据,清除不再使用的数据,管理元数据等等。史数据,清除不再使用的数据,管理元数据等等。2.6 一个简单的数据仓库一个简单的数据仓库SDWS设计示例设计示例2.6.1 SDWS2.6.1 SDWS的需求分析的需求分析某电商的业务销售涵盖全国范围,销售商品有家用某电商的业务销售涵盖全国范围,销售商品有家用电器和通信设备等。已建有网上销售业务管理系统,可电器和通信设备等。已建有网上销售业务管理系统,可以获取每日销售信息和顾客的基本信息等。以获取每日销售信息和顾客的基本信息等。现为该电商建立一个能够提高市场竞争能力的数据仓现为该电商建立一个能够提高市场竞争能力的数据仓库库SDWSSDWS。分析全国各地区每年、每季度的销售金额。分析全国各地区每年、每季度的销售金额。分析各类商品在每年、每月份的销售量。分析各类商品在每年、每月份的销售量。分析各年龄层次的顾客的购买商品的次数。分析各年龄层次的顾客的购买商品的次数。分析分析20132013年年1 1季度各地区各类商品的销售量。季度各地区各类商品的销售量。分析分析20132013年各省份各年龄层次的商品购买金额。年各省份各年龄层次的商品购买金额。分析各产品子类、各地区、各年龄层次的销售量。分析各产品子类、各地区、各年龄层次的销售量。其他销售情况分析等。其他销售情况分析等。其主题是电商销售情况分析,包括以下分析其主题是电商销售情况分析,包括以下分析功能功能:2.6.2 SDWS2.6.2 SDWS的建模的建模通过需求分析,确定通过需求分析,确定SDWSSDWS采用采用星形模式星形模式。1.维表设计维表设计设计如下设计如下4 4个维表。个维表。(1)日期维)日期维Dates表结构表结构DatesDates维表的数据维表的数据 :Date_key日期日期年份年份月份月份季度季度12013-02-0120132122013-04-1120134232013-08-2020138342013-12-05201312452014-02-19201421DatesDates的概念分层的概念分层 (2)顾客维)顾客维CustomersCustomers表结构表结构CustomersCustomers维表的数据维表的数据 :Cust_key姓名姓名年龄年龄年龄层次年龄层次1王华王华36中年中年2陈明陈明45中年中年3张兵张兵22青年青年4李丽李丽33青年青年5刘庆刘庆65老年老年6曾强曾强35青年青年Customers的概念分层的概念分层(3)地点维)地点维Locates表结构表结构LocatesLocates维表的数据维表的数据 :Locate_key地址地址地区地区省份省份市市县县1北京市海淀区北京市海淀区A小小区区华北华北北京北京北京北京海淀区海淀区2湖北省武汉市洪山湖北省武汉市洪山区区A华中华中湖北湖北武汉市武汉市洪山区洪山区3江苏省扬州市宝应江苏省扬州市宝应县县T华东华东江苏江苏扬州市扬州市宝应县宝应县4广东省广州市越秀广东省广州市越秀区区T华南华南广东广东广州市广州市越秀区越秀区Locates的概念分层的概念分层(4)商品维)商品维Products表结构表结构ProductsProducts维表的数据维表的数据 :Prod_key子类子类品牌品牌型号型号单价单价分类分类1电视机电视机长虹长虹长虹长虹ZH1500家用电器家用电器2电视机电视机海信海信海信海信HX2500家用电器家用电器3电冰箱电冰箱海尔海尔海尔海尔HU2800家用电器家用电器4电冰箱电冰箱美菱美菱美菱美菱ML2500家用电器家用电器5手机手机华为华为华为华为HW1880通信设备通信设备6电话电话TCLTCL89150通信设备通信设备Products维表概念分层维表概念分层 2.事实表设计事实表设计Sales表结构表结构SalesSales事实表的数据事实表的数据 :Date_keyCust_keyLocate_keyProd_key数量数量金额金额(元元)1111115001222250001333128001444375001515118801626345021111150022223750023331280024441250025152376026263450311111500Date_keyCust_keyLocate_keyProd_key数量数量金额金额(元元)3222512500333312800344437500351523760362611504111115004222250004333384004444375004515118804626115051111150052222500053331280054441250055151188056262300SDWS的星形模式的星形模式 3.元数据设计元数据设计描述每个事实表和维表的主题和内容,例如事实表的主题描述每个事实表和维表的主题和内容,例如事实表的主题元数据和事实元数据如表元数据和事实元数据如表2.92.9和和2.102.10所示,对每个维表也所示,对每个维表也采用类似的描述方式。采用类似的描述方式。对事实表和维表每个属性进行描述,例如,对事实表和维表每个属性进行描述,例如,Cust_keyCust_key元数元数据的描述如表据的描述如表2.112.11所示,对每个重要的属性都采用类似的所示,对每个重要的属性都采用类似的描述方式。描述方式。这里的元数据设计主要包含数据仓库中各对象的描述。这里的元数据设计主要包含数据仓库中各对象的描述。表表2.9 2.9 销售主题元数据销售主题元数据名称名称Sales_ItemSales_Item描述描述整个电商的商品销售状况整个电商的商品销售状况目的目的用于进行电商销售状况和促销情况的分析用于进行电商销售状况和促销情况的分析维维时间、商品、顾客、地点时间、商品、顾客、地点事实事实销售事实表销售事实表度量值度量值销售量,销售金额、销售笔数销售量,销售金额、销售笔数2.6.3 2.6.3 基于基于SQL Server 2008SQL Server 2008设计设计SDWSSDWS1.创建数据仓库分析项目创建数据仓库分析项目打开打开Microsoft Server Business Intelligence Microsoft Server Business Intelligence Development StudioDevelopment Studio,选择,选择“文件文件|新建新建|项目项目”命令,选中命令,选中“Analysis ServicesAnalysis Services项目项目”,在名称文本框中输入,在名称文本框中输入“SDWS”SDWS”,如图如图2.202.20所示,系统建立一个空的所示,系统建立一个空的SDWSSDWS分析项目。分析项目。2.定义数据源定义数据源假设在假设在SQL Server 2008SQL Server 2008中已创建了一个数据库中已创建了一个数据库SDWSDW,包含前面介绍过的维表和事实表及相关数据。包含前面介绍过的维表和事实表及相关数据。注意注意,需采用,需采用“使用使用WindowsWindows身份验证身份验证”创建创建SDWSDW数据数据库。库。在在“解决方案资源管理器解决方案资源管理器”中右击中右击“数据源数据源”并选择并选择“新新建数据源建数据源”命令,出现命令,出现“连接管理器连接管理器”对话框,建立新连接。对话框,建立新连接。3.定义数据源视图定义数据源视图在在“解决方案资源管理器解决方案资源管理器”中右击中右击“数据源视图数据源视图”并选择并选择“新建数据源视图新建数据源视图”命令,在出现的对话框中选中关系数据源命令,在出现的对话框中选中关系数据源SDWSDW,单击,单击“下一步下一步”,出现,出现“名称匹配名称匹配”对话框,默认选中对话框,默认选中“与主键同名与主键同名”项,如图项,如图2.232.23所示,单击所示,单击“下一步下一步”。出现出现“选择表和视图选择表和视图”对话框,从左边选中对话框,从左边选中CustomersCustomers、DatesDates、LocatesLocates、ProductsProducts和和SalesSales共共5 5个表到右边列表中,个表到右边列表中,如图如图2.242.24所示,单击所示,单击“下一步下一步”,再单击,再单击“完成完成”。这样就。这样就创建好了数据源创建好了数据源SDW.dsvSDW.dsv。4.定义维表定义维表在在“解决方案资源管理器解决方案资源管理器”中右击中右击“维度维度”并选择并选择“新新建维度建维度”命令,在出现的对话框中选中命令,在出现的对话框中选中“使用现有表使用现有表”,单,单击击“下一步下一步”,选择,选择DatesDates维表,如图维表,如图2.252.25所示。所示。单击单击“下一步下一步”,勾选所有属性,如图,勾选所有属性,如图2.262.26所示,单击所示,单击“下一步下一步”,再单击,再单击“完成完成”。然后选择然后选择DatesDates维度,右击它并选择维度,右击它并选择“属性属性”命令,在命令,在出现的属性对话框中选择出现的属性对话框中选择TypeType属性并指定其值为属性并指定其值为TimeTime,表示,表示它是一个时间维度,如图它是一个时间维度,如图2.272.27所示。所示。在在DatesDates维度的层次结构框中设置各属性的层次结构如图维度的层次结构框中设置各属性的层次结构如图2.282.28所示。所示。从从DatesDates维表的数据看到,季度和年份之间的映射关系不准维表的数据看到,季度和年份之间的映射关系不准确,确,20132013年和年和20142014年都有年都有1 1季度,但系统内隐含有季度,但系统内隐含有“Date_keyDate_key年份年份”的属性关系,也就是说通过的属性关系,也就是说通过Date_keyDate_key和季度就可以唯一确和季度就可以唯一确定年份了。定年份了。DatesDates对应数据的概念分层如图对应数据的概念分层如图2.292.29所示。所示。采用同样的步骤建立采用同样的步骤建立CustomersCustomers、LocatesLocates和和ProductsProducts维度,这三个维度不需要修改其维度,这三个维度不需要修改其TypeType属性。属性。5.定义多维数据集定义多维数据集在在“解决方案资源管理器解决方案资源管理器”中右击中右击“多维数据集多维数据集”并选择并选择“新建多维数据集新建多维数据集”命令,在出现的对话框中选中命令,在出现的对话框中选中“使用现有使用现有表表”,单击,单击“下一步下一步”,出现,出现“选择度量值组表选择度量值组表”对话框,勾对话框,勾选选SalesSales为事实表,如图为事实表,如图2.302.30所示。所示。单击单击“下一步下一步”,出现,出现“选择度量值选择度量值”对话框,选择对话框,选择SalesSales表的表的“数量数量”、“金额金额”和和“SalesSales计数计数”作为度量,作为度量,其中其中“SalesSales计数计数”是系统自动添加的,如图是系统自动添加的,如图2.312.31所示。所示。每个度量都对应一个聚集函数,如每个度量都对应一个聚集函数,如“数量数量”度量默认的聚度量默认的聚集函数为集函数为SumSum(求总和),用户可以右击某度量并选择(求总和),用户可以右击某度量并选择“属性属性”命令,在出现的命令,在出现的“属性属性”对话框中修改相应的聚集函数,如图对话框中修改相应的聚集函数,如图2.322.32所示。所示。单击单击“下一步下一步”,出现,出现“选择现的维度选择现的维度”对话框,选择对话框,选择列出的所有维表,如图列出的所有维表,如图2.332.33所示。所示。单击单击“下一步下一步”,出现,出现“选择现的维度选择现的维度”对话框,选择对话框,选择列出的所有维表,如图列出的所有维表,如图2.332.33所示,单击所示,单击“下一步下一步”,再单击,再单击“完成完成”。这样就建立了一个多维数据集。这样就建立了一个多维数据集SDW.cubeSDW.cube。6.部署部署SDWS通过上述步骤建立的通过上述步骤建立的SDWSSDWS项目结构如图项目结构如图2.342.34所示,在所示,在“解解决方案资源管理器决方案资源管理器”中右击中右击“SDWS”SDWS”并选择并选择“部署部署”命令,系命令,系统开始进行部署操作,成功后提示统开始进行部署操作,成功后提示“部署成功完成部署成功完成”信息。信息。7.浏览已部署的多维数据集浏览已部署的多维数据集在在“解决方案资源管理器解决方案资源管理器”中右击多维数据集中右击多维数据集SDW.cubeSDW.cube,并选择并选择“浏览浏览”命令,即可进行多维分析。命令,即可进行多维分析。浏览多维数据集的操作方法是,向分析区中拖放相应的行、浏览多维数据集的操作方法是,向分析区中拖放相应的行、列字段和汇总字段,系统自动统计相应的报表。列字段和汇总字段,系统自动统计相应的报表。例如,分析全国各地区每年、每季度的销售金额的结果例如,分析全国各地区每年、每季度的销售金额的结果如图如图2.352.35所示。所示。分析各类商品在每年、每月份的销售量的结果如图分析各类商品在每年、每月份的销售量的结果如图2.362.36所示。所示。分析分析20132013年年1 1季度各地区各类商品的销售量的结果如图季度各地区各类商品的销售量的结果如图2.372.37所示。所示。分析各产品子类、各地区、各年龄层次的销售量的结果分析各产品子类、各地区、各年龄层次的销售量的结果如图如图2.382.38所示。所示。演讲完毕,谢谢观看!
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 管理文书 > 施工组织


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!