第四章数据仓库设计与开发_第1页
第四章数据仓库设计与开发_第2页
第四章数据仓库设计与开发_第3页
第四章数据仓库设计与开发_第4页
第四章数据仓库设计与开发_第5页
已阅读5页,还剩62页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、第四章 数据仓库设计与开发o 本章目标n 了解数据仓库开发应用过程n 熟悉数据仓库的规划内容、目标等n 掌握数据仓库的分析与设计过程、内容n 了解数据仓库的实施过程第四章 数据仓库设计与开发o 本章内容n 4.1 数据仓库开发应用过程n 4.2 数据仓库的规划n 4.3 数据仓库的分析与设计n 4.4 数据仓库的实施n 4.5 数据仓库技术与开发的困难4.1 数据仓库开发应用过程o 数据仓库的开发应用像生物一样具有其特有的、完整的生命周期,数据仓库的开发应用周期可以分成三个阶段:n 数据仓库规划分析n 数据仓库设计实施n 数据仓库使用维护o 这三个阶段是一个不断循环、完善、提高的过程(螺旋式)

2、。螺旋式开发应用过程设计体系结构开发概念模型开发逻辑模型数据库与元数据设计数据抽取转换与加载开发中间件填充与测试数据仓库数据仓库应用数据仓库维护数据仓库评价规划与确定需求规划分析规划分析阶段阶段设计实施设计实施阶段阶段使用维护使用维护阶段阶段4.2 数据仓库的规划o 选择数据仓库实现策略选择数据仓库实现策略n 自顶向下:实际应用比较困难n 自底向上:用于一个数据集市或一个部门的数据仓库开发n 两种策略的联合使用用自顶向下方法用自顶向下方法o 建造企业数据仓库建造企业数据仓库n建设中心数据模型建设中心数据模型n一次性的完成数据的重构工作一次性的完成数据的重构工作n最小化数据冗余度和不一致性最小化

3、数据冗余度和不一致性n存储详细的历史数据存储详细的历史数据o 从企业数据仓库中建造数据集市从企业数据仓库中建造数据集市n得到大部分的集成数据得到大部分的集成数据n直接依赖于数据仓库的可用性直接依赖于数据仓库的可用性o 问题问题n投资效益的时间投资效益的时间?n建设中心数据模型的必要性和可能性建设中心数据模型的必要性和可能性?n初始费用初始费用 ?数据集市数据集市外部数据外部数据数据集市数据集市操作数据操作数据企业数据仓库企业数据仓库用自底向上方法用自底向上方法o建立部门数据集市建立部门数据集市n限制在一个主题区域限制在一个主题区域n快速投资收益快速投资收益 n区域自治区域自治 设计的可伸缩性强

4、设计的可伸缩性强n对相关部门的应用容易复制对相关部门的应用容易复制 n对每个数据集市需要数据重构对每个数据集市需要数据重构n存在一定的冗余及不一致性存在一定的冗余及不一致性o逐步扩展到企业数据仓库逐步扩展到企业数据仓库 (EDW)n把建造把建造EDW作为一个长期的目标作为一个长期的目标o存在的问题存在的问题:n数据集市的数据都是可用的吗数据集市的数据都是可用的吗?n能生成数据模型吗能生成数据模型吗?n如何解决不一致性如何解决不一致性?操作数据操作数据 ( (全全局局)/)/外部数据外部数据企业数据仓库企业数据仓库数据集市数据集市操作数据操作数据 ( (局部局部) )操作数据操作数据 ( (局部

5、局部) )数据集市数据集市采用从顶向下采用从顶向下 VS 从底向下从底向下o企业内部、各个业务部门和各个工作岗位对数据仓库的理解和企业内部、各个业务部门和各个工作岗位对数据仓库的理解和期望不同。作为具体的部门,有特定的信息需求,都希望能在期望不同。作为具体的部门,有特定的信息需求,都希望能在尽可能短的时间内需求获得满足。建立局部的系统,所需信息尽可能短的时间内需求获得满足。建立局部的系统,所需信息能够立即为其使用。因此对部门而言,能够立即为其使用。因此对部门而言,他们追求的是一种短期他们追求的是一种短期的局部目标,关心的是基于所在位置的局部解决方案。的局部目标,关心的是基于所在位置的局部解决方

6、案。o整个企业看,建立数据仓库的目的之一是获得对整个企业业务整个企业看,建立数据仓库的目的之一是获得对整个企业业务信息的视图。以便能把握和管理企业的经营运行,并对企业进信息的视图。以便能把握和管理企业的经营运行,并对企业进行业务重组。行业务重组。o企业现有系统往往不同程度上存在各自为政,缺乏统一的规划企业现有系统往往不同程度上存在各自为政,缺乏统一的规划和设计。数据出自各部门,提供的信息不一致,使得高层无法和设计。数据出自各部门,提供的信息不一致,使得高层无法获得可靠、统一和协调的信息。获得可靠、统一和协调的信息。o企业追求的是长期的集成目标,关心的是基于整个企业的全面企业追求的是长期的集成目

7、标,关心的是基于整个企业的全面解决方案。解决方案。o两者的目标是有矛盾的!两者的目标是有矛盾的!确定数据仓库的开发目标和实现范围确定数据仓库的开发目标和实现范围o 首要目标是确定所需要信息的范围,确定数据仓库在为用户提供决策帮助时,在主题和指标领域需要哪些数据源。数据仓库的结构数据仓库的结构数据仓库使用方案和项目规划预算数据仓库使用方案和项目规划预算4.3 数据仓库的分析与设计4.3.1 需求分析需求分析4.3.2 概念模型设计概念模型设计4.3.3 逻辑模型设计逻辑模型设计4.3.4 物理模型设计物理模型设计4.3.5 数据仓库的索引技术数据仓库的索引技术4.3.1 需求分析o 确定主题域确

8、定主题域o 支持决策的数据来源支持决策的数据来源o 数据仓库的成功标准和关键性能指标数据仓库的成功标准和关键性能指标o 数据量与更新频率数据量与更新频率确定主题域确定主题域(1)明确对于决策分析最有价值的主题领域有哪些?(2)每个主题域的商业维度是哪些?每个维度的粒度层次有哪些?(3)制定决策的商业分区是什么?(4)不同地区需要哪些信息来制定决策?(5)对哪个区域提供特定的商品和服务?支持决策的数据来源支持决策的数据来源(1)哪些源数据(操作型)与商品主题有关?(2)在已有报表和在线查询中得到什么样的信息?(3)提供决策支持的细节程度是怎样的?数据仓库的成功标准和关键性能指标数据仓库的成功标准

9、和关键性能指标(1)衡量数据仓库成功的标准是什么?(2)哪些关键的性能指标?如何监控?(3)对数据仓库的期望是什么?(4)对数据仓库的预期用途有哪些?(5)对计划中的数据仓库的考虑要点是什么?数据量与更新频率数据量与更新频率(1)数据仓库的总数据量有多少?(2)决策支持所需的数据更新频率是多少?时间间隔是多长?(3)每种决策分析与不同时间的标准对比如何?(4)数据仓库中的信息需求的时间界限是什么?开发模型o 模型是对现实世界进行抽象的工具。o 在信息管理中需要将现实世界的事物及其有关特征转换为信息世界的数据才能对信息进行处理与管理,这就需要依靠数据模型作为这种转换的桥梁。o 这种转换一般需要经

10、历从现实到概念模型,从概念模型到逻辑模型,从逻辑模型到物理模型的转换过程。现实世界概念世界逻辑世界计算机世界信用特性属性列(字段、数据项)张三个体实体记录客户整体同质总体表文件客户与产品整体间联系异质总体数据库4.3.2 概念模型设计概念模型设计o 概念模型的特点是:n 能真实反映现实世界,能满足用户对数据的分析,达到决策支持的要求,它是现实世界的一个真实模型。n 易于理解,便利和用户交换意见,在用户的参与下,能有效地完成对数据仓库的成功设计。n 易于更改,当用户需求发生变化时,容易对概念模型修改和扩充。n 易于向数据仓库的数据模型(星型模型)转换。概念模型表示o 概念模型最常用的表示方法是实

11、体关系法(E-R法)。o E-R图将图将现实世界现实世界表示成表示成信息世界信息世界,便利向,便利向计算机的表示计算机的表示形式进行转化。形式进行转化。o 建立概念模型:对每个决策主题与属性以及建立概念模型:对每个决策主题与属性以及主题之间的关系用主题之间的关系用E-R图图模型表示。模型表示。例子o 有两个主题:商品和客户,主题也是实体。o 商品有如下属性组:n商品的固有信息(商品号、商品名、类别、价格等);n商品库存信息(商品号、库房号、库存量、日期等);n商品销售信息(商品号、客户号、销售量等);o 客户有如下属性组:n客户固有信息(客户号、客户名、住址、电话等);n客户购物信息(客户号、

12、商品号、售价、购买量等)。o 商品的销售信息与用户的购物信息是一致的,它们是两个主题之间的联系。商品商品固有信息商品号商品库存信息销 售 信息购物信息 客户客户固有信息客户号=4.3.3逻辑模型设计o 主要工作:n 分析主题域进行概念模型(分析主题域进行概念模型(ER图)到逻辑模图)到逻辑模型(星型模型)的转换型(星型模型)的转换n 确定粒度层次划分确定粒度层次划分n 确定数据分割策略确定数据分割策略n 关系模式定义关系模式定义n 定义记录系统定义记录系统分析主题域主题名公共码键属性组商品商品号商品固有信息:商品号,商品名,类型,颜色等商品采购信息:商品号,供应商号,供应价,供应日期,供应量等

13、商品库存信息:商品号,库房号,库存量,日期等销售销售单号销售单固有信息:销售单号,销售地址等销售信息:客户号,商品号,销售价,销售量、销售时间等客户客户号客户固有信息:客户号,客户名,性别,年龄,文化程度,住址,电话等客户经济息:客户号,年收入,家庭总收入等概念模型到逻辑模型的转换o 星型模型的设计步骤如下:(1)确定决策分析需求。决策需求是建立多维数据模型的依据。(2)从需求中识别出事实。选择或设计反映决策主题业务的表,如在“商品”主题中,以“销售业务”作为事实表。(3)确定维。确定影响事实的各种因素,对销售业务的维包括商店,地区,部门,城市,时间,商品等。销售数据和维销售数据商品促销时间部

14、门城市地区商店概念模型到逻辑模型的转换o 星型模型的设计步骤如下:(4)确定数据汇总水平。)确定数据汇总水平。数据仓库中对数据不同粒数据仓库中对数据不同粒度的集成和综合,形成了多层次、多种知识的数据度的集成和综合,形成了多层次、多种知识的数据结构。例如,对于时间维,可以以结构。例如,对于时间维,可以以“年年”、“月月”或者或者“日日”等不同水平进行汇总。等不同水平进行汇总。(5)设计事实表和维表)设计事实表和维表 。设计事实表和维表的具体设计事实表和维表的具体属性。在事实表中应该记录哪些属性是由维表的数属性。在事实表中应该记录哪些属性是由维表的数量决定的。一般来说,与事实表相关的维表的数量量决

15、定的。一般来说,与事实表相关的维表的数量应该适中,太少的维表会影响查询的质量,用户得应该适中,太少的维表会影响查询的质量,用户得不到需要的数据,太多的维表又会影响查询的速度不到需要的数据,太多的维表又会影响查询的速度。概念模型到逻辑模型的转换o 星型模型的设计步骤如下:(6)按使用的)按使用的DBMS和分析用户工具,证实设计方和分析用户工具,证实设计方案的有效性案的有效性 。根据系统使用的。根据系统使用的DBMS,确定事实,确定事实表和维表的具体实现。由于不同的表和维表的具体实现。由于不同的DBMS对数据对数据存储有不同的要求,因此设计方案是否有效还要放存储有不同的要求,因此设计方案是否有效还

16、要放在在DBMS中进行检验中进行检验 (7)随着需求变化修改设计方案。)随着需求变化修改设计方案。 随着应用需求的随着应用需求的变化,整个数据仓库的数据模式也可能会发生变化。变化,整个数据仓库的数据模式也可能会发生变化。因此在设计之初,充分考虑数据模型的可修改性可因此在设计之初,充分考虑数据模型的可修改性可以节省系统维护的代价以节省系统维护的代价。转换示例o (1)业务数据的E-R图销售销售日期商店号商品号销售数量销售单位商品商品号商品名商品类号存货星期商店号商品号数量1m1m商店商店号商店名地址城市省邮编地区号1mm11商品类商品类号商品类名部门号m1m地区地区号地区名转换示例o (2)E-

17、R图向多维表的转换商品维地区维时间维部门地区年商品大类商店月商品周日销售事实转换示例o (3)利用利用维关维关键字键字制定制定的星的星型模型模型型 时间 时间键 时间说明 日期 星期 月 年 级别号 销售事实 时间键 地理位置键 商品键 销售数量 销售单位 地区 地理位置键 地理位置名 地区号 商店号 级别号 商品 商品键 商品名 部门号 商品类号 级别号 转换示例o (4)修改后的星型模型 时 间 时 间 键 时 间 说 明 日 期 星 期 月 年 级 别 号 销 售 事 实 时 间 键 地 理 位 置 键 商 品 键 销 售 数 量 销 售 单 位 地 区 地 理 位 置 键 地 理 位

18、置 名 地 区 号 地 区 名 商 店 号 商 店 名 级 别 号 商 品 商 品 键 商 品 名 部 门 号 部 门 名 商 品 类 号 商 品 类 名 级 别 号 确定粒度层次o 粒度是指数据仓库中数据单元的详细程度和级别。o 数据越详细,粒度越小,层次级别就越低;数据综合度越高,粒度越大,层次级别就越高。o 决定数据仓库采取的是单一粒度还是多重粒度,以及粒度划分的层次。通过聚集的设计为数据仓库的使用提供各种可能的聚集查询便利o 进行粒度划分,首先要确定所有在数据仓库中建立的表,然后估计每个表的大约行数。粗略估算o 粗略估算数据仓库中将来的数据行数和所需D A S D是粒度确定的起点;o

19、数量级上的估计双重或单一粒度o 根据数据仓库环境中将具有的总的行数的大小,确定双重或单一粒度确定粒度的级别o 以猜测作为开端o 以一定数量的反复分析来改进这个猜测确定数据分割策略确定数据分割策略o 把逻辑上整体的数据分割成较小的、可以独立管理的物理单元进行存储o 数据分割标准:1.数据量定义关系模式o 在概念模型设计时,我们就确定了数据仓库的基本主题,并对每个主题的公共码键、基本内容等做了描述。o 在这一步里,我们将要对选定的当前实施的主题进行模式划分,形成多个表,并确定各个表的关系模式。 “商品”主题o公共码键:商品号。o商品固有信息:n商品表(商品号、商品名、类型、颜色)细节级o商品销售信

20、息:n销售表1(商品号、客户号、销售量、)细节级n销售表2(商品号、时间段1、销售量、)综合级n n销售表n(商品号、时间段n、销售量、)综合级定义记录系统o 定义记录系统是建立数据仓库中的数据以源系统中的数据的对照记录。o 记录系统的定义要记入数据仓库的元数据。o 商品主题的记录系统在元数据中可描述如表主题名主题名属性名属性名数据源系统数据源系统源表名源表名源属性名源属性名商品商品商品商品商品商品商品商品商品商品商品商品商品商品商品商品商品商品商品号商品号商品名商品名类别类别客户号客户号销售日期销售日期售价售价销售量销售量库存量库存量库存号库存号库存子系统库存子系统库存子系统库存子系统库存子

21、系统库存子系统销售子系统销售子系统销售子系统销售子系统销售子系统销售子系统销售子系统销售子系统库存子系统库存子系统库存子系统库存子系统商品商品商品商品商品商品客户客户销售销售销售销售销售销售库存库存仓库仓库商品号商品号商品名商品名类别类别客户号客户号日期日期单价单价数量数量库存量库存量仓库号仓库号4.3.4 物理模型设计o 物理模型设计因素:nI/O存取时间n空间利用率n维护的代价o 主要工作:n全面了解所选用的数据库管理系统,确定一个最适合应用要求的物理结构,特别是存储结构和存取方法。n了解数据环境、数据的使用频率、使用方式、数据规模以及响应时间要求等。n了解外部存储设备的特征。确定一个最适

22、合应用要求的物理结构(1)估计存储容量)估计存储容量(2)确定数据的存储计划)确定数据的存储计划(3)确定索引策略)确定索引策略(4)确定数据存放位置)确定数据存放位置(5)确定存储分配)确定存储分配(1) 估计存储容量估计存储容量o 对每一个数据库表确定数据量o 对所有的表确定索引o 估计临时存储(2) 确定数据的存储计划o 建立聚集(汇总)计划o 确定数据分区方案o 建立聚类选项(3) 确定索引策略o 在数据仓库中由于数据量很大,需要对数据的存取路径进行仔细设计和选择,建立专用的复杂的索引,以获得最高的存取效率。o 采用BTree索引,它是一个高效的索引,见图4.7所示。B树是一个平衡(b

23、alance)树,即每个叶结点到根节点的路径长度相同。B树索引是一个多级索引。(4)确定数据存放位置o 在物理设计时,我们常常要按数据的重要程度、使用频率以及对响应时间的要求进行分类,并将不同类的数据分别存储在不同的存储设备中。o 重要程度高、经常存取并对响应时间要求高的数据就存放在高速存储设备上,如硬盘;o 存取频率低或对存取响应时间要求低的数据则可以放在低速存储设备上,如磁盘或磁带。 (5) 确定存储分配o 物理存储中以文件、块和记录来实现。一个文件包括很多块,每个块包括若干条记录。o 文件中的块是数据库的数据和内存之间I/O传输的基本单位,在那里对数据进行操作。o 用一个简例来说明逻辑模

24、型和物理模型的内容,见下图所示。 名称名称类型类型长度长度注释注释产品维表产品维表包括公司所有产品的包括公司所有产品的信息信息Product-Keyinteger10主键主键Product-Namechar25产品名称产品名称Product-SKuchar20库存单位库存单位销售员维表销售员维表包括不同地区的所有包括不同地区的所有销售员信息销售员信息Salpers-Keyinteger15主键主键Salpers-Namechar30销售员姓名销售员姓名Territorychar20销售员所在区域销售员所在区域Regionchar20所在地区所在地区订单事实表订单事实表包括公司收到的所有包括公司

25、收到的所有订单订单Order-Keyinteger10订单键订单键Order-Namechar20订单名称订单名称Product-refinteger10参考产品主键参考产品主键Salpers-refinteger15参考销售员主键参考销售员主键Order-AmountNum8,2销售额销售额Order-CostNum8,2订单成本订单成本逻辑模型产品维表产品键产品名库存单位品牌订单事实表订单键订单名产品键销售员键销售额订单成本销售员维表销售员键姓名地域地区4.3.5 数据仓库的索引技术数据仓库的索引技术o 位索引技术n Bit-Wise索引技术n B-Tree技术与Bit-Wise索引技术对

26、比o 标识技术o 广义索引Bit-Wise索引技术o 对于每一个记录的字段满足查询条件的真假值用“1”或“0”的方式表示,或者用该字段中不同取值(即多位二进制)来表示。 o 例如,检索“美国加州有多少男性未申请保险?”利用BitWise技术得到有两个记录 满足条件。 性别性别保险保险州州1MYMA2MNCA3FYIL4MNCA男男未保险未保险加州加州100111000111B-Tree技术与Bit-Wise索引技术对比o Bit-Wise索引技术比B-Tree技术能提高相应速度10100倍。o 对于检索“美国加州有多少男性未申请保险?”为例,假设数据库有10M记录,每个记录长800个字节,每一

27、页16K字节。o 按传统的关系数据库的检索:需要经过50万次I/O操作。o 按BitWise检索:对于10M个记录建立三列的BitWise索引。存取这些索引只要进行235次I/O操作。标识技术o 样本记录o 数据库中的每个实体创建一个标识。n“江西”在籍贯中是01标识。n“28”在年龄中是02标识。n“讲师”在职称名中有一个03标识。 姓名 籍贯 职称 年龄陈文东 江西 教授 56何玉辉 河北 讲师 32李宝 湖南 副教授 37施东 江苏 讲师 28曹文 湖南 副教授 36赵玉 吉林 讲师 32黄小斌 江苏 讲师 28赛英花 山东 副教授 32彭宏 江西 讲师 25廖宇宙 湖南 教授 42标识

28、技术o姓名 籍贯 职称 年龄o陈文东 01 江西 01 教授 01 25 01o何玉辉 02 河北 02 副教授 02 28 02o李宝 03 湖南 03 讲师 03 32 03o施东 04 江苏 04 36 04o曹文 05 吉林 05 37 05o赵玉 06 山东 06 42 06o黄小斌 07 56 07o赛英花 08 o彭宏 09 o廖宇宙 10 记录1 01,01,01,07记录2 02,02,03,03记录3 03,03,02,05记录4 04,04,03,02记录5 05,03,02,05记录6 06,05,03,03记录7 07,04,03,02记录8 08,06,02,03记

29、录9 09,01,03,01广义索引o 对数据仓库的一个很广泛的应用问题是“这个月销售最好和最差的10种商品是哪些?”,我们可以设计这么一块“黑板”,在上面标明了当月销售最好和最差的10种商品的名称或者它们相关记录的存放地址。这块“黑板”就是我们所说的“广义索引”。4.4 数据仓库的实施o 实施过程中需要完成的工作:实施过程中需要完成的工作:n 建立数据仓库与业务处理系统的接口建立数据仓库与业务处理系统的接口n 数据仓库的体系结构建立数据仓库的体系结构建立n 实现数据仓库物理仓库与元数据库实现数据仓库物理仓库与元数据库n 进行数据仓库的数据初次加载进行数据仓库的数据初次加载n 完成数据仓库的中

30、间件设计完成数据仓库的中间件设计n 进行数据仓库的测试。进行数据仓库的测试。数据仓库与业务处理系统的接口数据仓库与业务处理系统的接口o 接口应该具有这样一些功能:接口应该具有这样一些功能:n 从面向应用和操作环境生成完整的数据;从面向应用和操作环境生成完整的数据;n 数据基于时间的转换;数据基于时间的转换;n 数据的聚集;数据的聚集;n 对现有数据系统的有效扫描,以便今后数据仓对现有数据系统的有效扫描,以便今后数据仓库的数据追加。库的数据追加。数据仓库的建立o 关系型数据库、多维数据库和对象数据库关系型数据库、多维数据库和对象数据库数据仓库的加载、复制和发行o 数据加载之前,首先需要对准备加载

31、的数据进行清理 o 复制技术,复制结构应完成以下的复杂任务:不会受到系统失败等问题的影响,保证提供可靠的数据复制。只传送符合数据完整性规则的一致数据。可以优化传送过程,减少在捕获或修改数据和复制品作为结果传送之间的等待时间。o 技术和数据结构应保证数据发行系统完成以下的功能:o 保证数据以适时和有效的方式发行。o 保证只发送被排序的数据。o 建立正确的和所需要的服务水平标准。数据仓库的测试4.5 数据仓库技术与开发的困难o 4.5.1数据仓库技术n 管理大量数据的能力n 能够管理多种介质n 能够轻松容易地索引和监视数据n 对于接口用各种不同的技术接受和传送数据n 等等o 4.5.2数据仓库开发的困难管理大量数据o 数据仓库要管理大量的数据,是因为它们:n 包括粒状的、原子的细节n 包括历史数据n 包括

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论