第二讲数据仓库系统设计与实现_第1页
第二讲数据仓库系统设计与实现_第2页
第二讲数据仓库系统设计与实现_第3页
第二讲数据仓库系统设计与实现_第4页
第二讲数据仓库系统设计与实现_第5页
已阅读5页,还剩52页未读 继续免费阅读

下载本文档

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

文档简介

第一讲数据仓库系统的设计与实现,姓名:陈令江QQ:453579383电话mail:chenlingjiang,内容,1、数据仓库系统设计概述,2、业务系统数据库设计方法,3、数据仓库系统设计方法,5、使用SQLServer2005建立多维数据模型,6、开源数据仓库工具介绍,4、数据仓库设计实例,1.1数据仓库系统的建设过程,收集和分析业务需求,建立数据模型,定义数据源,选择技术和平台,抽取数据,选择访问工具,更新数据库,1.1.1收集和分析业务需求,收集和分析业务需求,建立数据模型,定义数据源,选择技术和平台,抽取数据,选择访问工具,更新数据库,在数据仓库环境中,用户大多是企业或事业组织的中上层管理人员,他们对决策分析的需求不能预先做出规范说明。他们经常对开发人员说:“让我看看能得到什么,然后我才能告诉你我真正需要什么”。因此,数据仓库应该在海量的数据中为用户提供有用、及时、全面的信息,以帮助用户做出正确的决策。,1.1.2建立数据模型,收集和分析业务需求,建立数据模型,定义数据源,选择技术和平台,抽取数据,选择访问工具,更新数据库,建立数据模型和数据仓库的物理设计。通过设计数据仓库的概念模型、逻辑模型、物理模型,可以得到企业或事业数据的完整而清晰的描述信息。数据仓库的核心内容包括组织的各个主题域、主题域之间的联系、描述主题的码和属性组等。,1.1.3定义数据源,收集和分析业务需求,建立数据模型,定义数据源,选择技术和平台,抽取数据,选择访问工具,更新数据库,定义数据源。也叫做定义记录系统,往往会形成一个操作型数据的存储区(ODS)。它主要解决如下两方面的问题:一、各个业务系统的数据都是面向应用的,不能完整的描述企业中的主题域;二、多个数据源的数据之间存在着许多不一致,如命名、结构、单位等;记录系统具有如下特点:1)结构最适合于数据仓库;2)与外部数据源最为接近;,1.1.4选择技术和平台,收集和分析业务需求,建立数据模型,定义数据源,选择技术和平台,抽取数据,选择访问工具,更新数据库,技术和平台选型对数据仓库来说非常重要,一旦选定,在实施完成后很难改变,平台及技术的切换成本非常高,所以,选型一定要充分重视和高度谨慎。,1.1.5数据抽取,收集和分析业务需求,建立数据模型,定义数据源,选择技术和平台,抽取数据,选择访问工具,更新数据库,从操作型数据库中抽取、清洗及转换数据到数据仓库中。详细参见第一讲ETL部分。,1.1.6选择访问工具,收集和分析业务需求,建立数据模型,定义数据源,选择技术和平台,抽取数据,选择访问工具,更新数据库,根据用户的具体情况、分析需求以及数据量大小等因素,选择各种访问工具,如报表工具、分析工具,仪表盘等。,1.1.7更新数据库,收集和分析业务需求,建立数据模型,定义数据源,选择技术和平台,抽取数据,选择访问工具,更新数据库,确定数据仓库的更新策略,开发或配置数据仓库更新子系统,实现数据仓库数据的自动更新。,1.2数据仓库系统的生命周期,1.2.1生命周期为螺旋上升模型,1.3数据仓库系统的建设方法,自顶向下(top-down),自底向上(bottom-up),1.4数据仓库系统的设计步骤,内容,1、数据仓库系统设计概述,2、业务系统数据库设计方法,3、数据仓库系统设计方法,5、使用SQLServer2005建立多维数据模型,6、开源数据仓库工具介绍,4、数据仓库设计实例,2.1数据库的设计步骤,数据库设计的好,可以减少数据存储量,提高数据的完整性和一致性。数据库的设计一般分四步:1、概念模型的设计2、逻辑数据库的设计3、规范化理论的应用4、物理数据库的设计,2.1.1概念模型设计,概念模型设计的描述最常用的工具是E-R图,具体步骤如下:确定实体;确定实体的属性;确定实体的主键;确定实体间的联系类型;画出E-R图;,2.1.1概念模型设计(整体ER图),2.1.2逻辑模型设计,将概念模型转换成数据库管理系统所支持的数据模型。如果是关系型数据库管理系统,就应将概念模型转换为关系模型,即将E-R图中的实体和联系转换为关系模式。学院(学院代码、学院名称、院长姓名、学院地址、学院电话、学院简介)系部(系部编号、学院代码、系部名称、主任、地址、电话、专业介绍)教师(教师编号、系部编号、姓名、性别、学历、职称、办公电话、手机、E-mail、照片)班级(班级编号、班级名称、班长、联系电话、奖励处罚、系部编号)学生(学号、姓名、性别、出生年月、籍贯、个人简历、照片、奖励处罚、班级编号),2.1.3规范化理论实施,在逻辑数据库设计中,形成了一组关系模式。如果关系模式没有设计好,就会出现数据冗余、数据更新异常、数据删除异常、数据插入异常等问题。规范化理论的目的就是设计好的关系模式。,2.1.3.2规范化理论的基本概念(一),1函数依赖设在关系R中,X、Y为R的两个属性子集,如果每个X值只有一个Y值与之对应,则称属性Y函数依赖于属性X;或称属性X惟一确定属性Y,记作XY。如果XY,同时Y不包含于X,则称XY是非平凡的函数依赖。,2.1.3.2例子,如果每个X值只有一个Y值与之对应。,2.1.3.2规范化理论的基本概念(二),2完全函数依赖设在关系R中,X、Y为R的两个属性子集,若XY,且对于X的任何一个真子集X,都有XY,则称Y完全函数依赖于X。若XY,则称Y部分函数依赖于X。,2.1.3.2规范化理论的基本概念(三),3传递函数依赖设在关系R中,X、Y、Z为R的三个属性子集,若XY,YZ,且X不依赖于Y,则称Z传递函数依赖于X。,Z,2.1.3.3第一范式,第一范式(FirstNormalForm)是最基本的规范形式,即关系中每个属性都是不可再分的简单项。每个规范化的关系都属于1NF,这也是它之所以称为“第一”的原因。,2.1.3.3第二范式,定义如果关系模式R1NF,且每个非主属性都完全函数依赖于任意一个侯选关键字,则称R属于第二范式,简称2NF,记作R2NF。,带来问题的原因是:非主属性“学分”仅仅依赖于“课程号”,也就是说只是部分依赖于主关键字(学号,课程号),而不是完全依赖。,2.1.3.3解决方法,解决方法:将关系模式进一步分解,2.1.3.3第三范式,定义如果关系模式R2NF,且每个非主属性都不传递依赖于R的任何候选关键字,则称R属于第三范式,简称3NF,记作R3NF。如果R3NF,则R也是2NF。如果R2NF,则R不一定是3NF。,2.1.3.3解决方法,2.1.4物理模型设计,专业软件开发中使用,不是必须步骤。主要建模工具:PowerDesignerERWin,内容,1、数据仓库系统设计概述,2、业务系统数据库设计方法,3、数据仓库系统设计方法,5、使用SQLServer2005建立多维数据模型,6、开源数据仓库工具介绍,4、数据仓库设计实例,3.1数据仓库系统的设计步骤,数据仓库的数据库设计,不以减少数据存储量为目标,而是以提供数据查询效率为首要目标。数据仓库的数据库的设计一般分三步:1、概念模型的设计(信息包图法)2、逻辑数据库的设计(星型模型)3、物理数据库的设计,3.1.1概念模型设计,数据仓库的概念模型通常采用信息包图法进行设计,要求将信息包图的5个组成部分全面的描述出来。名称维度类别层次度量,3.1.1.1信息包图法,信息包图法也叫用户信息需求表,就是在一张平面表格上描述元素的多维型,一个维度用一列表示,细化本列对象就是类别,最后一行为指标度量值,如下表:,3.1.1.2主题及主题域的划分,供应,购买,储存,3.1.1.3划分了主题域的原始概念模型,供应商表,仓库表,顾客表,商品表,3.1.2逻辑模型设计,根据用户需求和信息包图设计星形模型或雪花模型。从信息包图转换成星形模型,需要定义如下三个实体:1、指标实体。即度量,使用每一个指标,同事确定是否存储经过计算的指标。2、维度实体。对应信息包图中的一个类别(一列)。3、详细类别实体。对应现实世界的某一实体。,3.1.2.1星形模型,销售分析,时间,客户,产品,广告,区域,3.1.2.2雪花模型,销售分析,时间,客户,产品,广告,区域,产品类别,3.1.2.3事实表,事实表是星形结构模型的核心,包含了基本业务事务的详细信息。事实表一般包括两个部分:1、由主键和外键所组成的键部分。2、用户希望了解的数值指标,称为事实或度量指标。,销售分析,时间,产品,客户,区域,时间ID(FK)客户ID(FK)产品ID(FK)区域ID(FK)销售额利润,销售事实表,主键(PK),度量指标,3.1.2.4数据的粒度,所谓粒度,是指数据仓库中数据单元的详细程度和级别。数据越详细,粒度就越小,级别也就越低;数据综合度越高,粒度就越大,级别也就越高。,时间ID(FK)客户ID(FK)产品ID(FK)区域ID(FK)销售额利润,日销售事实表,时间ID(FK)客户ID(FK)产品ID(FK)区域ID(FK)销售额利润,月销售事实表,粒度低,粒度高,3.1.2.5粒度对数据仓库的影响,粒度对数据仓库最直接的影响就是存储容量。还以销售事实表为例:日事实表的记录数为月事实表的30倍。粒度对数据查询统计的影响。,时间ID(FK)客户ID(FK)产品ID(FK)区域ID(FK)销售额利润,日销售事实表,时间ID(FK)客户ID(FK)产品ID(FK)区域ID(FK)销售额利润,月销售事实表,汇总到日20090901,汇总到月200909,3.1.2.6粒度的设计步骤,由前面的分析可知,数据仓库分析功能和存储空间是一对矛盾体。如果粒度设计过小,则事实表需记录所有细节,存储空间将会急剧膨胀;若设计过大,则无法观察到细节数据。粒度设计可以按以下两个步骤进行:1、粗略估算数据量,确定合适的粒度级的起点。如估算1年到5年内表中最少和最多记录数。2、确定粒度级别。需综合考虑分析需求类型、数据最低粒度、存储数据量的因素。,3.1.2.7数据的聚合,在事实表中存放的度量数据,根据其实际意义,可以分成可加性度量和非可加性度量。可加性度量是指数据相加后得到的结果仍然具有实际意义,比如销售金额,3个月相加为一个季度,四个季度相加为一年。这样的数据可以将其计算后存储到表中,可以显著提高系统性能,这样的表称为聚合表。非可加性度量是指数据相加后无意义,比如利润率,同比、环比等。,3.1.2.8数据的分割,数据分割是把数据分散到各自的存储单元中去,是它们能独立的处理。数据分割主要是解决数据量过于庞大的问题,提高系统效率。数据分割可以按各种方式划分,如:按时间、按区域、按业务、按组织等。,全部销售记录,分割,2005,2006,2007,2008,2009,3.1.2.9维度表,维度表应有的数据特征:1、维度通常使用解析过的名字,这样可以是分析查询更加灵活和快速。时间可分为年、季、月、日等;2、维度表通常不使用业务数据库的键值作为主键,而是使用自定义的字段做主键,字段类型主要为数值型和字符型。如时间维表的主键类型为数值型,20090901、200909等;3、维度表应包含随时间变化的数据记录字段,当事实表中的数据随时间变化而产生改变时,维表应有标识此变化的字段;,3.1.2.10常用维表处理(时间维),时间维是最常用的维度,时间维有多种划分方式,如最常用的年-季-月-日,有时会增加半年和旬等,国外也常用年-周,还有按财政年度(FY)的等,下表为通常的时间维结构。,3.1.2.11常用维表处理(雪花模型维),如前面讲过的产品维和产品类别维。之所以产生雪花模型,是由于设计规范化的结果,在实际应用中,通常建议不要使用雪花模型,这是因为:1、影响查询效率;2、有些工具不支持;因此,建议将雪花模型转换为星形模型,转换方式如下:,产品,产品类别,3.1.2.12常用维表处理(连续值维),连续值划分为区间。如分数维表,可划分为:季-月-日地区:省-市产品:产品类别-产品客户:客户分析指标

温馨提示

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

评论

0/150

提交评论