数据仓库的开发设计过程.docx
《数据仓库的开发设计过程.docx》由会员分享,可在线阅读,更多相关《数据仓库的开发设计过程.docx(33页珍藏版)》请在三一办公上搜索。
1、数据仓库之路FAQFAQ目录一、与数据仓库有关的几个概念21.1目录2二、数据仓库产生的原因6三、数据仓库体系结构图7四、数据仓库设计84.1数据仓库的建模84.2数据仓库建模的十条戒律:9五、数据仓库开发过程95.1数据模型的内容95.2数据模型转变到数据仓库105.3数据仓库开发成功的关键11六、数据仓库的数据采集116.1后台处理126.2中间处理126.3前台处理136.4数据仓库的技术体系结构136.5数据的有效性检查156.6清除和转换数据156.7简单变换166.8清洁和刷洗176.9集成186.10聚集和概括206.11移动数据20七、如何建立数据仓库227.1数据仓库设计22
2、7.2数据抽取模块237.3数据维护模块24一、 与数据仓库有关的几个概念1.1 目录 Datawarehouse Datamart OLAP ROLAP MOLAP ClientOLAP DSS ETL Adhocquery EIS BPR BI Datamining CRM MetaData Data warehouse本世纪80年代中期,“数据仓库之父”William H.Inmon先生在其建立数据仓库一书中定义了数据仓库的概念,随后又给出了更为精确的定义:数据仓库是在企业管理和决策中面向主题的、集成的、与时间相关的、不可修改的数据集合。与其他数据库应用不同的是,数据仓库更像一种过程,对
3、分布在企业内部各处的业务数据的整合、加工和分析的过程。而不是一种可以购买的产品。 Data mart即数据集市,或者叫做“小数据仓库”。如果说数据仓库是建立在企业级的数据模型之上的话。那么数据集市就是企业级数据仓库的一个子集,他主要面向部门级业务,并且只面向某个特定的主题。数据集市可以在一定程度上缓解访问数据仓库的瓶颈。 OLAP联机分析处理(OLAP)的概念最早是由关系数据库之父E.F.Codd于1993年提出的。当时,Codd认为联机事务处理(OLTP)已不能满足终端用户对数据库查询分析的需要,SQL对大数据库进行的简单查询也不能满足用户分析的需求。用户的决策分析需要对关系数据库进行大量计
4、算才能得到结果,而查询的结果并不能满足决策者提出的需求。因此Codd提出了多维数据库和多维分析的概念,即OLAP。Codd提出OLAP的12条准则来描述OLAP系统:准则1 OLAP模型必须提供多维概念视图准则2 透明性准则准则3 存取能力推测准则4 稳定的报表能力准则5 客户/服务器体系结构准则6 维的等同性准则准则7 动态的稀疏矩阵处理准则准则8 多用户支持能力准则准则9 非受限的跨维操作准则10 直观的数据操纵准则11 灵活的报表生成准则12 不受限的维与聚集层次 ROLAP基于Codd的12条准则,各个软件开发厂家见仁见智,其中一个流派,认为可以沿用关系型数据库来存储多维数据,于是,基
5、于稀疏矩阵表示方法的星型结构(starschema)就出现了。后来又演化出雪花结构。为了与多维数据库相区别,则把基于关系型数据库的OLAP称为Relational OLAP,简称ROLAP。代表产品有Informix Metacube、Microsoft SQL ServerOLAP Services. MOLAP严格遵照Codd的定义,自行建立了多维数据库,来存放联机分析系统数据的Arbor Software,开创了多维数据存储的先河,后来的很多家公司纷纷采用多维数据存储。被人们称为MuiltDimension OLAP,简称MOLAP,代表产品有Hyperion(原Arbor softwa
6、re) Essbase、Showcase STRATEGY等。 Client OLAP相对于Server OLAP而言。部分分析工具厂家建议把部分数据下载到本地,为用户提供本地的多维分析。代表产品有Brio Designer, Business Object. DSS决策支持系统(Decision Support system),相当于基于数据仓库的应用。决策支持就是在收集所有有关数据和信息,经过加工整理,来为企业决策管理层提供信息,为决策者的决策提供依据。 ETL数据抽取(Extract)、转换(Transform)、清洗(Cleansing)、装载(Load)的过程。构建数据仓库的重要一环
7、,用户从数据源抽取出所需的数据,经过数据清洗,最终按照预先定义好的数据仓库模型,将数据加载到数据仓库中去。 Ad hoc query即席查询,数据库应用最普遍的一种查询,利用数据仓库技术,可以让用户随时可以面对数据库,获取所希望的数据。 EIS领导信息系统(Executive Information System),指为了满足无法专注于计算机技术的领导人员的信息查询需求,而特意制定的以简单的图形界面访问数据仓库的一种应用。 BPR业务流程重整(Business Process Reengineering),指利用数据仓库技术,发现并纠正企业业务流程中的弊端的一项工作。数据仓库的重要作用之一。
8、BI商业智能(Business Intelligence),指数据仓库相关技术与应用的通称。指利用各种智能技术,来提升企业的商业竞争力。 Data mining数据挖掘,Data Mining是一种决策支持过程,它主要基于AI、机器学习、统计学等技术,高度自动化地分析企业原有的数据,作出归纳性的推理,从中挖掘出潜在的模式,预测客户的行为,帮助企业的决策者调整市场策略,减少风险,作出正确的决策CRM客户关系管理(Customer Relationship management),数据仓库是以数据库技术为基础但又与传统的数据库应用有着本质区别的新技术,CRM就是基于数据仓库技术的一种新应用。但是,
9、从商业运作的角度来讲,CRM其实应该算是一个古老的应用了。比如,酒店对客人信息的管理,如果某个客人是某酒店的老主顾,那么该酒店很自然地会知道这位客人的某些习惯和喜好,如是否喜欢靠路边,是否吸烟,是否喜欢大床,喜欢什么样的早餐,等等。当客人再次光临时,不用客人自己提出来,酒店就会提供客人所喜欢的房间和服务。这就是一种CRM. Meta Data 元数据,关于数据仓库的数据,指在数据仓库建设过程中所产生的有关数据源定义,目标定义,转换规则等相关的关键数据。同时元数据还包含关于数据含义的商业信息,所有这些信息都应当妥善保存,并很好地管理。为数据仓库的发展和使用提供方便。二、 数据仓库产生的原因事务处
10、理环境不适宜DSS应用的原因主要有以下五条: (1)事务处理和分析处理的性能特性不同。 在事务处理环境中,用户的行为特点是数据的存取操作频率高而每次操作处理的时间短;在分析处理环境中,用户的行为模式与此完全不同,某个DSS应用程序可能需要连续几个小时,从而消耗大量的系统资源。将具有如此不同处理性能的两种应用放在同一个环境中运行显然是不适当的。 (2)数据集成问题。 DSS需要集成的数据。全面而正确的数据是有效的分析和决策的首要前提,相关数据收集得越完整,得到的结果就越可靠。当前绝大多数企业内数据的真正状况是分散而非集成的。造成这种分散的原因有多种,主要有事务处理应用分散、“蜘蛛网”问题、数据不
11、一致问题、外部数据和非结构化数据。 (3)数据动态集成问题。 静态集成的最大缺点在于,如果在数据集成后数据源中数据发生了变化,这些 变化将不能反映给决策者,导致决策者使用的是过时的数据。集成数据必须以一定的周期(例如24小时)进行刷新,我们称其为动态集成。显然,事务处理系统不具备动态集成的能力。 (4)历史数据问题。 事务处理一般只需要当前数据,在数据库中一般也是存储短期数据,切不同数据的保存期限也不一样,即使有一些历史数据保存下来了,也被束之高阁,未得到充分利用。但对于决策分析而言,历史数据是相当重要的,许多分析方法必须一大量的历史数据为依托。没有历史数据的详细分析,是难以把握企业的发展趋势
12、的。DSS对数据在空间和时间的广度上都有了更高的要求,而事务处理环境难以满足这些要求。 (5)数据的综合问题。 在事务处理系统中积累了大量的细节数据,一般而言,DSS并不对这些细节数据进行分析。在分析前,往往需要对细节数据进行不同程度的综合。而事务处理系统不具备这种综合能力,根据规范化理论,这种综合还往往因为是一种数据冗余而加以限制。要提高分析和决策的效率和有效性,分析型处理及其数据必须与操作型处理及其数据相分离。必须把分析型数据从事务处理环境中提取出来,按照DSS处理的需要进行重新组织,建立单独的分析处理环境,数据仓库正是为了构建这种新的分析处理环境而出现的一种数据存储和组织技术。三、 数据
13、仓库体系结构图四、 数据仓库设计4.1 数据仓库的建模 数据模型1) 所有的实体都是平等关系。2) 仅仅从数据模型的角度来着手设计数据仓库会产生一种“平面”效应。 星型连接1) 事实表:位于星型连接的中央,它是被大量载入数据的实体。2) 维表:周围的其它实体。3) 在很多情况下:文本数据与数值数据是分离开的。通过数据预连接和建立有选择的数据冗余,设计者为访问和分析过程大大简化了数据。星型连接应用于设计数据仓库中很大的实体,而数据模型则应用于数据仓库中较小的实体。4.2 数据仓库建模的十条戒律:1) 必须回答紧迫的问题;2) 必须有正确的事实表;3) 将有正确的维表,描述必须按最终用户的业务术语
14、表达;4) 必须理解数据仓库所影响的公司过程或影响数据仓库的公司过程;5) 对于事实表,应该有正确的“粒度”;6) 根据需要存储正确长度的公司历史数据;7) 以一种对于公司有意义的方式来集成所有必要的数据;8) 创建必要的总结表;9) 创建必要的索引;10) 能够加载数据仓库数据库并使它以一种适宜的方式可用。五、 数据仓库开发过程 建立或获得企业的数据模型; 定义记录系统; 设计数据仓库并按主题领域进行组织; 设计和建立操作型环境中的记录系统和数据仓库之间的接口,这些接口能保证数据仓库的载入工作能有序的进行; 开始载入第一个主题领域,进入载入和反馈过程,数据仓库中的数据在此过程中也在不断地改变
15、。5.1 数据模型的内容 标识主要主题领域。 各个主要主题之间的各种关系。 清晰地定义模型的边界。 把原始数据和导出数据分离。 每个主题领域需要标识 键码 属性 属性分组之间的关系 多重出现的数据 数据的类型5.2 数据模型转变到数据仓库 如果原先没有时间元素的话,时间元素必须加入到键码结构中 必须清除所有的纯操作型数据 需要将参照完整性关系转换成“人工关系” 将经常需要用到的到处数据假如到设计中 对数据的结构进行调整 增加数据阵列 增加数据冗余 在合适的情况下进一步分离数据 在合适的时候合并数据表 需要做数据的稳定性分析5.3 数据仓库开发成功的关键关键:是数据体系结构设计者和DSS分析者之
16、间的反馈循环。有几点观察结果对数据仓库环境的成功建立是至关重要的问题: DSS分析人员一定要严格遵循“给我我所要的东西,然后我能告诉你我真正需要的东西”的工作模式; 反馈循环的周期越短,越有可能成功; 需要调整的数据量越大,反馈循环所需要的周期就越长六、 数据仓库的数据采集许多部件构成了数据仓库系统。这个系统从现有的操作系统开始,一部分为支持数据仓库而设的后台处理,以访问和运用数据仓库内数据的用户工具而结束。在中间是个分散过程,它使数据以一种局部而不是集中的方式来支持用户。至于其他系统,则是覆盖这些处理过程技术的基础,如安全系统,它不仅控制着在终端数据仓库的输入过程,还控制着用户在数据仓库的前
17、台访问能力。数据仓库处理的部件如图: 后置处理中间处理前置处理安全处理用户查询操作系统数据存储器数据的转换和清理数据仓库部门数据中心多维数据中心6.1 后台处理数据仓库系统的后台处理利用了操作系统的数据存储器,以进入数据仓库内占有活动区域:这个处理包括以下几个部分: 数据处理为数据仓库收集数据的过程是从当前操作系统开始的。该数据仓库的后台处理需要被分成可管理的几个处理模块。操作系统生成必须处理和输入到数据仓库的事务。在数据仓库系统的结构内必须有一种方法来截取和收集那些在操作系统内已改变的数据,主要用于数据仓库的输入处理。 数据采集在收集到操作数据存储器内的变化后,数据仓库的后台处理必须采集所有
18、同以前收集的事务相关的数据。数据采集过程通常仅仅获取驱动数据采集过程的关键信息。数据制备成事务库并用它来更新和供给数据仓库系统。这个过程在整个数据仓库系统中是最复杂的,因为用户正处理多种遗留数据源。这些数据源中的一些较为容易使用,而大部分则不是这样。6.2 中间处理数据仓库系统的中间处理利用了一个登台区域来完成在数据仓库中对用户游泳的数据。登台区域有时被叫正式地指定为操作数据存储器。 数据清理在收集到所有从操作系统存储器得来的相关信息后,数据必须在放入数据仓库之前进行清理,以获得一个适当的统一的格式和定义。 数据的放置和分发当完成数据清理后,数据就必须放置到数据仓库中。 标准报表的编译和索引在
19、数据已放入数据仓库数据存储器之后,对包含于数据仓库系统内的标准报表必须进行编译和索引。在这个过程结束后,报表很像数据仓库内的原始数据,将让用户在线有用,不必用纸张的形式发送。中间处理更新了数据仓库中登台区域的数据,并使之成为可供最终客户,也就是数据仓库系统的用户使用的信息库。6.3 前台处理前台处理过程涉及到允许用户对数据仓库所包含的信息进行正确的访问,及提供用户工具集所需的目录和中间数据信息。大多数数据仓库项目的目标应当是驱使这一过程进入强大的用户领域,并脱离信息系统空间。然而,需要构造几个关键的应用程序以用于经验不足的数据仓库用户。该过程的任务包括用新的信息内容来更新访问数据仓库的应用程序
20、,通过适当的用户工具组内的视图或分类定义来提高访问能力。6.4 数据仓库的技术体系结构虽然普遍认为数据仓库系统能够改善最终用户查询、报表生成和DSS能力,而且能帮助组织投入公司数据以获取市场竞争优势,但在数据仓库系统构成方面看法却不尽相同。数据仓库的技术体系结构如下图:源数据外部数据信息目录模块数据仓库之元数据数据管理员模块数据仓库之数据数据获取模块数据传递模块中间件模块数据访问模块设计模块管理模块外部元数据 设计模块:用于设计数据仓库数据库 数据获取模块:用于从源文件和源数据库中获取数据,并进行清洁、传输,将它加到数据仓库数据库中 管理模块:用于管理数据仓库的运行 信息目录模块:用于为管理者
21、和企业用户提供有关存储在数据仓库数据库中的数据的内容和含义信息 数据访问模块:用于为企业的最终用户提供访问和分析数据仓库数据的工具 中间件模块:用于最终用户工具提供访问数据仓库数据库的方法 数据传递模块:用于向其他仓库和外部系统中分配数据仓库数据数据仓库的三个重要组成部分,专家们一般把整个数据仓库的建设按照其不同性质,把它分为三个截然不同的部分,分别是:源数据、数据准备、以及数据呈现。现在讲的最多的OLAP分析和决策支持等,都是属于数据呈现的部分,下面我们来讲一讲数据准备阶段的问题。6.5 数据的有效性检查为避免数据冗余,要认识到数据装入数据仓库之前,应该对数据进行有效性检查,这是很重要的。如
22、果没有进行刃具的有效性检查,就有可能破坏依赖于数据仓库的商务分析的完整性,帮助检查数据的有效性的最好方法是源系统专家。源系统专家包括具有技术专业知识和非技术知识的人士。检查数据仓库中数据的有效性是一个非常耗时但必不可少的过程。建议该过程应高度自动化。SQL Server7中有许多内置功能,可自动进行数据有效性检查。6.6 清除和转换数据有效性检查是决定是否符合给定标准的过程。标准是依赖于安装的,为某个站点开发和执行的标准可能在其他地方毫无意义。如果数据不在给定的界限之内,它就成为我们称作scrubbing(清除)过程的对象。清除数据包括对那些在给定范围之外的数据采取纠正措施。数据仓库中的数据来
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据仓库 开发 设计 过程
链接地址:https://www.31ppt.com/p-1668969.html