欢迎来到三一办公! | 帮助中心 三一办公31ppt.com(应用文档模板下载平台)
三一办公
全部分类
  • 办公文档>
  • PPT模板>
  • 建筑/施工/环境>
  • 毕业设计>
  • 工程图纸>
  • 教育教学>
  • 素材源码>
  • 生活休闲>
  • 临时分类>
  • ImageVerifierCode 换一换
    首页 三一办公 > 资源分类 > PPT文档下载  

    《数据仓库与数据挖掘》演示稿第4章.ppt

    • 资源ID:6380122       资源大小:417.50KB        全文页数:60页
    • 资源格式: PPT        下载积分:15金币
    快捷下载 游客一键下载
    会员登录下载
    三方登录下载: 微信开放平台登录 QQ登录  
    下载资源需要15金币
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    《数据仓库与数据挖掘》演示稿第4章.ppt

    1,复旦大学 软件学院2004.04,数据仓库与数据挖掘(第4章),2,第4章 数据仓库系统的体系结构与设计方法,数据仓库系统的体系结构分布式对象技术监控器的设计转换器的设计集成器的设计元数据管理器的设计,3,数据仓库系统的结构,最终用户,可视化工具,数据挖掘工具,多维分析工具,多维数据,数据仓库工具层,数据仓库层,4,数据仓库系统的体系结构,5,数据仓库系统的体系结构,源数据:数据仓库中的数据来源于多个数据源,它不仅可以是企业内部的关系型数据库,还包括非传统数据,如文件、HTML文档等。数据仓库管理系统:元数据库及元数据管理部件:元数据库用来存储由定义部件生成的关于源数据、目标数据、提取规则、转换规则以及源数据与数据仓库之间的映射信息等。数据转换部件:该部件把数据从源数据中提取出来,依定义部件的规则将不同数据格式的源数据转换成数据仓库的数据格式并装载进数据仓库。数据集成部件:该部件根据定义部件的规则、统一各源数据的编码规则,并净化数据,根据元数据中定义的数据组织形式对数据进行汇总、聚合计算。数据仓库管理部件:它主要用于维护数据仓库中的数据,备份、恢复数据以及管理数据的安全权限问题。,6,数据仓库系统的体系结构,数据仓库前端工具集查询/报表工具:以图形化方式和报表方式显示数据,帮助了解数据的结构、关系以及动态性。OLAP工具:通过对信息的多种可能的观察形式进行快速、一致和交互性的存取,便于用户对数据进行深入的分析和观察。数据挖掘工具:从大量数据中挖掘出具有规律性的知识,以及数据之间的内在联系。前端开发工具:提供用户编程接口,便于在现有系统的基础上进行二次开发,增强系统的伸缩性。数据仓库:在数据仓库系统中,数据仓库是一个数据存储集合,它的存储形式通常有多维数据库,关系型数据库及其他存储方式。,7,分布式对象技术,随着Internet的广泛应用,将应用扩展到局域网、广域网甚至Internet上已成为用户的普遍需求,分布式计算成了新的热点。分布式计算系统又称为中间件。从层次上看,它处于系统的中间层;从功能上看,向下它可以传递和处理上层用户的各种请求,向上它可以屏蔽下层的实现细节,提供各种服务。因此,分布式计算系统起到了承上启下的作用,为用户构造分布式应用系统提供强有力的支持。,8,分布式对象概述,程序设计方法经历了多次变革:从最初的功能分解法,到结构化程序设计方法,再到至今仍在广泛使用的面向对象程序设计方法。在80年代中期,国际标准化组织ISO推出了RPC(Remote Process Call,远程过程调用)标准,极大地推动了分布式处理技术的规范化的标准化。到1992年,开放软件基金会OSF颁布了DCE(Distributed Computing Environment,分布计算环境)标准。在这个标准中,它不仅吸收了RPC作为其远程调用的方式,而且对分布处理进行了抽象定义,是分布式计算技术发展过程中的一个里程碑。随着应用系统对可扩展性和可重用性的要求不断提高,面向对象的分析、设计和编程技术得到了广泛的应用。将面向对象的思想应用到分布式环境中,提出了分布式对象的概念。,9,分布式对象的代表性观点,组件对象是软件的基本量子。它具有一定的功能,可插用,同时又是要维护的。分布式对象则是分布式环境中的组件对象,它封装了设计决策,并作为一个独立的单元处于分布式环境中。分布式对象是具有特定功能的,能够跨越进程的边界、实现网络、语言、应用程序、开发工具和操作系统的”即插即用”的独立对象。分布式对象是指任何可被分离出来,具有标准化的,可重用的公开接口的软件。分布式对象通过接口对外提供服务。对象与对象之间,对象与客户之间同时通过接口进行交互。因此分布式对象一旦发布,它只能通过预定义的接口来提供合理的、一致的服务。这种接口定义的稳定性使客户应用开发人员能够构造出稳定的应用。一个分布式对象可以实现多个接口,同时一个特定的接口也可以被多个分布式对象来实现。除此之外,分布式对象还提供了对象位置的透明性,也就是说一台机器上的应用可以透明地访问其他机器上的分布式对象。,10,分布式对象的工业标准,分布式对象的两种工业标准:COM/DCOM/COM+:Microsoft制定的以Windows为中心的开发环境。CORBA(Common Object Request Broker Architecture):由700多个厂商共同提倡的,公共对象请求代理体系结构,是平台中立的分布式技术,CORBA能够执行于Windows,UNIX以及Linux等操作系统之中,但是目前成熟产品很少,并且支持的厂商不是十分普及。根据这两种分布式技术演进而产生的分布式对象技术:例如EJB(Enterprise JavaBean)等。,11,基于分布式对象的程序设计方法,基于分布式对象的程序设计方法继承并发展了面向对象程序设计方法。它将对象技术应用于系统设计,对向对象程序设计的实现过程作了进一步抽象。分布式对象设计方法强调真正的软件重用和高度的可操作性。它侧重于分布式对象的产生和装配,这两方面构成了分布式对象程序设计的核心。分布式对象的装配使得软件产品有可能用类似于“搭积木”的方法快速地建立起来,不仅可以缩短软件产品的开发周期,同时也提高了系统的稳定性和可靠性。可重用的分布式对象库不同于对象库,分布式对象库保存的是一些经过测试的分布式对象。这些分布式对象遵从标准或规范,并且分布式对象库也包括这些分布式对象的细节功能说明文档。,12,基于可重用的分布式对象库的软件开发模式的过程,13,基于可重用的分布式对象库的软件开发模式的过程,标识过程:标识一个可重用的分布式对象。验证过程:判定可重用分布式对象所声明的功能特性和性能特性。分类过程:对已有分布式对象的功能、使用方法、适用范围、接口等进行说明性的描述,以便日后可以高效准确地检索。检索过程:利用标准的方法根据指定的属性找到所需的分布式对象。定制过程:通过对检索到的分布式对象进行修改、裁剪和配置使其满足用户的需求。组合过程:将已定制好的分布式对象集成在一起形成应用系统。,14,COM/DCOM/COM+COM,COM:即组件对象模型,是一种以组件为发布单元的对象模型,这种模型使各软件可以用一种统一的方式进行交互。COM既提供了组件之间进行交互的规范,也提供了实现交互的环境。因为组件对象之间交互的规范不依赖于任何特定的语言,所以COM也是不同语言协作开发的一种标准。COM的实质是这样一种协议,它负责将一个软件模块同另一个连接起来,而不再参与其余的事务。连接建立后,两个模块可以通过一种称之为“接口”的结构进行通信。接口是一组逻辑上相关的函数集合,其函数也被称为接口成员函数。在同一个接口中的函数应该提供类似或相关的服务。,15,COM应用的组成部分,COM接口:通过接口的一个对象暴露它能提供给COM客户的服务。每个COM对象为一组相关的属性和方法提供了一个接口。在COM中,每一个接口都由一个128位的全局唯一标识符(GUID,Global Unique Identifier)来标识。客户通过GUID获得接口的指针,再通过接口指针,客户就可以调用其相应的成员函数。接口是COM对象提供服务的基本单元,因此一个COM对象可以同时提供数个不同的接口,并且在不同的接口中提供不同的函数。COM服务器:它是一个模块,可以是EXE、DLL或是OCX,它们包含COM对象的实现代码。一个COM服务器由一个或多个COM对象组成,对象在服务器内部实现。一个COM服务器可以为多个客户提供服务,客户也可以连接到不同的服务器。一个COM服务器就是一个向客户应用或库提供服务的应用或库(如DLL)。COM客户:通过接口向服务器申请需要的服务。客户知道需要从服务器获得什么,但是客户不知道服务器内部的细节。,16,COM的特性,面向对象的特性和客户/服务器的特性。语言无关性:COM不依赖于特定的语言,只要能够生成符合COM规范的可执行代码即可,该特性性为跨语言合作开发提供了统一标准。进程透明性:在客户/服务器的软件结构中,运行在客户端的代码和运行在服务器端的代码既可以在同一个进程中,也可以在不同的进程中。COM所提供的服务组件对象在实现时有两种进程模型:进程内对象和进程外对象。根据进程模型,COM服务器程序可以分为:进程内服务程序、本地服务程序和远程服务程序。进程内服务程序被加载到客户的进程空间,在Windows环境下通常以动态链接库(DLL)的形式实现;本地服务程序是一个独立的应用程序,它与客户程序运行在同一台机器上,通常它是一个EXE文件;远程服务程序运行在与客户不同的机器上,它既可以是一个DLL,也可以是一个EXE文件。虽然COM对象有不同的进程模型,但对于客户程序来说是透明的。可重用性:由于COM标准是建立在二进制代码级的,因此COM对象的可重用性与一般的面向对象语言的重用过程不同。COM的重用性可建立在组件对象的行为方式上,而不是具体的实现上,因此它的可重用性不是源代码级的重用,而是二进制级的重用。,17,DCOM,DCOM(Distribute Component Object Model,分布式组件对象模型):是COM的扩展,它可以支持不同计算机上组件对象与客户程序之间或者组件对象之间的通信,这些计算机可以在局域网内,也可以在广域网上,甚至通过Internet进行连接。对于客户程序而言,组件程序所处的位置是透明的,不必编写任何处理远程调用的代码。DCOM在COM基础上增加的主要特征创建远程对象的能力:客户只需调用OLE32.dll提供的库函数CoCreateInstance透明地创建组件,而不关心组件的位置。跨网络的数据传送能力:由于远程对象和客户处于不同的地址空间,它们之间的数据传送不但可能要跨网络进行,还要处理数据格式等一系列调整。当客户和远程对象进行数据传送时,在客户端需对参数进行列集,位于客户端的代理对象完成这一任务,进行跨网络的数据传送。安全性和访问控制能力。,18,COM+,COM+:并不是COM的新版本,而是COM的新发展,它是COM更高层次上的应用。COM+的底层结构仍然以COM为基础,它几乎包括了COM的所有内容。COM+倡导了一种新概念,把组件软件模型建立在应用层上,把所有组件的底层细节留给操作系统。COM+不再局限于COM的组件技术,它更加注重于基于分布式网络应用的设计与实现。COM+继承了COM几乎全部的优势,同时又避免了COM实现方面的一些不足。从COM的发展角度来看,COM最初作为桌面操作系统平台上的组件技术,主要为OLE服务。但是随着Windows NT与DCOM的发布,COM通过底层的远程支持组件技术延伸到了分布式应用领域,充分体现了COM的扩展能力以及结构模型的优势。MTS为COM增添了许多新的内容,弥补了COM和DCOM的一些不足,它注重于服务器一端的组件管理和配置环境。COM+进一步把COM、DCOM和MTS统一起来,形成真正适合于企业应用的技术。,19,COM+,COM+继承了COM、DCOM和MTS的许多特性,同时也新增了一些服务:内存数据库负载平衡事件模型队列服务,20,分布式组件对象的特性,伸缩性:随着用户数目的增加、数据量的不断增多,分布式应用系统的适应能力反映了系统的优劣。使用COM/DCOM/COM+建立起来的应用系统能很好地适应这种规模的变化,当用户数比较少、数据量不大时,系统显得小巧而快速;当应用规模增大时,系统也能够正常运行并且在保证性能的情况下不影响可靠性。DCOM的位置透明性保证了这种变化可以不必修改组件源程序。可配置性:安装和管理是分布式软件系统的两个重要环节。使用COM/DCOM/COM+建立的分布式软件系统可以很方便地对系统进行重新配置,包括服务器的变化、客户程序的自动安装等特性。微软为DCOM提供了一个图形界面的配置工具程序(DCOMCNFG.EXE),可使客户程序和组件程序在不改变代码的情况下适应不同的网络环境。安全性:DCOM使用了Windows NT提供的可扩展安全性框架,在非NT平台上实现的DCOM也包括了一个与NT兼容的安全提供器。DCOM实现的安全性分为访问安全性和激发安全性。访问安全性指定哪些用户可以调用分布式组件对象,激发安全性指定哪些用户可以在一个新进程中创建新的对象。,21,分布式组件对象的特性,协议无关性:在基于COM/DCOM/COM+的分布式应用系统中,并不要求专门的网络协议,所以这种分布式应用系统对网络有很强的适应能力。在Windows平台上,可以使用以下一些协议:TCP/IP、UDP、IPX/SPX以及NetBIOS。平台独立性:COM/DCOM/COM+把平台二进制标准和平台无关的标准隔离开来,并且,由于DCOM建立在DCE RPC的基础上,所以DCOM能很好地适应不同的系统平台,目前已经实现了DCOM的操作系统有:Windows、Apple Macintosh以及Unix的一些版本。,22,使用COM技术实现数据仓库的组件,数据仓库是针对支持整个企业范围的主要业务来建立的。主要特点是,包含大量面向整个企业的综合信息及导出信息,所以系统本身处在一个分布式环境中,且必须具有极好的扩展性和灵活性。COM/DCOM/COM+技术能适应数据仓库应用的需要,能最大限度地提高灵活性和可扩展能力。数据仓库的系统设计与开发是一个动态的反馈和循环的过程。一方面数据仓库的数据内容、结构、粒度、分割以及其他物理设计根据用户所返回的信息不断地调整和完善,以提高系统的效率和性能;另一方面,通过不断地理解用户的分析需求,向用户提供更准确、更有用的决策信息。将数据仓库系统从功能上分为若干个独立的对象,并使用COM技术实现,可以最大限度地重用这些对象。当用户的需求增加或发生变化时,只需要增加相应的COM对象或更新变化的COM对象。,23,使用COM技术实现数据仓库的组件,通过将用户业务逻辑以DCOM对象的形式集中到中间层,系统就获得了对业务逻辑的独立性。当用户需求改变时,开发人员可以迅速地在应用服务器上更新业务逻辑,而无需将更新后的应用递交到成千上万的桌面系统上去,从而使开发人员从维护众多客户端的繁重工作中解脱出来。仓库是一个大规模的工程项目,它开发周期长,而数据仓库的需求又是动态的,不确定的。如果数据仓库的开发周期过长,可能当系统完成后,用户的需求已经发生了变化,从而造成开发资源的浪费;而且在当今激烈的市场竞争中,谁越早进行决策,谁就在竞争中占得先机,所以数据仓库的开发周期越短,给企业带来的效益就越大。通过COM技术将数据仓库系统划分为不同的功能对象,可以使开发团队进行并行开发。开发人员只需要定义各个COM对象明确的接口,彼此之间不需要了解各自的工作。,24,使用COM技术实现数据仓库的组件,数据仓库的数据是从企业内部的各个操作型环境中提取出来的,所以数据仓库系统本身就处在一个分布式环境中。由于在数据仓库中数据的访问量非常大,所以提高系统性能的首要目标是尽量减少网络上的数据传递。可以将数据处理的各个组件以DCOM对象的形式存放在应用服务器上,所以,尽管可能存在着与应用服务器的多个甚至数百个的连接,但应用服务器与数据库服务器之间的连接却只有少数几个,从而达到减少网络上的数据传送量。数据分析应用中的计算、操作和数据过滤通常是很复杂的。如果在客户机上完成这些处理工作,不仅要求客户机必须具有足够强大的配置,而且对网络负载能力也是一个考验。通过COM技术可以将执行此类处理工作的对象放在多个应用服务器上,利用COM+提供的负载平衡服务来提高数据仓库系统的可用性。由于数据分析时,每次查询涉及到的数据量巨大,所以往往会需要较长的响应时间,特别在数据分布时响应时间有时会让人难以忍受。COM+通过消息队列组件提供了异步通信功能,使得客户不必等待。,25,数据仓库体系结构的设计与实现,设计思想:客户端通过提交描述要调用的方法和要传递的参数的XML文档进行调用。在应用服务器端实现所需服务的接口,当通信组件接收到XML文档后,创建XMLService组件并由XMLService组件根据XML文档调度服务,并将返回结果或错误信息封装成XML文档传递给客户端。将数据仓库系统划分为若干个独立的分布式对象,每个对象都可以独立地完成一项工作如数据转换、数据集成等。这些对象须使用开放的标准组件,它们具有可重用性高的特性。对象与对象之间通过XML文档进行通信。由于采用开放的XML文档集成数据,所以大大提高了系统集成异构数据源、半结构化数据及非结构化数据的能力。对象与对象之间既可以互相协作共同完成创建数据仓库的任务,又可以独立地完成某个特定功能。这些分布式对象和用户前端界面以及后台数据形成了数据仓库的多层体系结构。,26,数据仓库系统体系结构的设计,客户端:可视化的用户界面客户端通信组件应用服务器端:服务器端通信组件XMLService调度组件安全组件元数据管理器转换器集成器数据库服务器端源数据元数据库数据准备区数据仓库,27,数据仓库系统中的通信XML概述,XML(eXtensible Markup Language,可扩展的标记语言)是国际组织W3C制定的在Web上对有格式的数据进行描述、传输、操作的通用语言。XML 是一套定义语义标记的规则,这些标记将文档分成许多部件并对这些部件加以标识。它也是元标记语言,即定义了用于定义其他与特定领域有关的、语义的、结构化的标记语言的句法语言。XML定义了一套元句法,允许各种不同的专业开发与自己的特定领域有关的标记语言。,28,基于XML的通信运行机制,应用服务器端通信组件接收到客户端传递来的XML字符串,创建XMLService对象。将XML字符串以参数形式传递给XMLService对象的调度方法Run(),并调用Run方法;在Run方法中,解析XML字符串,获得客户端调用的方法;检查用户的权限,如果没有调用此方法的权限,返回错误信息;通过权限验证后,打开存储在服务器端的FunctionMaps.xml文件,该文件中记录了方法和对象的映射关系,根据文件中记录的内容获得实现方法的对象名;根据获得的对象名创建对象;每个对象(元数据管理器、转换器、集成器)除了实现了用户所需要的服务外,还实现了一个调度自身服务的Run方法,XMLService调度对象则通过调用这个Run方法来实现对对象服务的调度。,29,XML通信组件示意图,30,XML通信组件客户端与服务器端的通信机制,启动服务器端管理程序,创建Application调度对象。用Application调度对象的StartNewService方法创建ServerDispatcher侦 听对象,并对客户端进行侦听。启动客户端应用程序,创建ClientTalker会话对象。调用ClientTalker会话对象的Connect方法,请求连接服务器。ServerDispatcher侦听对象接收到客户端的连接请求后,创建ServerTalker对象并将它与ClientTalker会话对象连接。如果活动的通信会话对象数量达到了最大限制,新的连接不能建立,相关消息将被记录到日志文件中。调用ServerTalker的Accept方法,然后等待客户端发送XML消息;在收到客户端发送的XML消息后,加载XMLService对象处理XML消息,然后将处理结果发回客户端;如果过程中有错误发生,错误信息将被记录到日志文件中,同时,会话被认为结束;如果在上一次数据通信后,在指定时间范围里没有通信发生,系统认为超时,会话也将结束。,31,元数据管理器,客户端登录:负责接收客户端登录信息并进行用户权限检查元数据管理器的用户接口:以接口形式向用户提供对元数据 增、删、改、查的服务,包括:源数据信息、数据仓库信息、星型模型信息、维信息、维表字段信息、事实表字段信息、映射事实表字段信息、映射维表字段信息、链接事实表与维表字段的信息;元数据的存储:元数据管理器中的元数据存储程序负责接收由接口程序传递来的关于对元数据进行增加、修改和删除等信息,并根据所提供的参数执行存储过程,将元数据的有关信息保存于服务器端的元数据库中。,32,元数据管理器的设计与实现,元数据的作用:定义数据仓库的作用,指明数据仓库中信息的内容和位置,刻画数据的抽取和转换规则,存储与数据仓库主题有关的各种商业信息。元数据基于Microsoft SQL Server2000的关系模型并存储在数据库服务器上,同时通过MetaManager组件提供了一系列接口使用户可以在所有应用中共享元数据在客户端提供图形化界面工具。例如,用户想在多维模型中加入一维或者在某一维中加入维元素,不仅可以通过图形化界面工具完成而且可以在用户自已编写的应用程序中调用应用程序接口函数,修改后的结果将记入元数据库中。然后系统将根据元数据库中的新内容进行数据的追加。,33,元数据模型,关于源数据的元数据:它是现有的操作型业务系统的数据源的描述信息,是对不同平台上的数据源的物理结构和含义的描述。包括:数据源中所有物理数据结构;所有数据项的业务定义;每个数据项更新的频率,以及由谁或哪个过程更新的说明;每个数据项的有效值;其它系统中具有相同业务含义的数据项的清单。关于数据仓库多维模型的元数据标准维:由一张维表构成,标准的星型模型采用这种维和事实表构成的。维表中的一个字段或多个字段构成了维的层次。雪花维:由相互关联的多个维表构成,每个维表中的字段构成了维的层次。通过多个维表的连接最大限度地减少了数据存储量,增加了模型的灵活性,但也使得查询变得复杂化。时间维:用来描述事实数据的时间属性。它通常只与源数据库中某个表的日期型字段相对应,所以时间维的层次不可以由维表的字段来表示。时间维的层次由高到低分别为Year、Quarter、Month、Day、Hour、Minute、Second,用户可以任意选择几种构成时间维的层次。,34,元数据模型,关于数据仓库映射的元数据:是数据源中的数据与数据仓库间数据的映射。当数据源中的一个数据项与数据仓库建立了映射关系,就应该记下这些数据项发生的任何变换或变动,即用元数据反映数据仓库中的数据项是从哪个特定的数据源填充的,经过哪些转换、集成过程。关于系统安全的元数据:描述了系统中用户、权限组及用户权限信息。每个用户可以属于多个权限组,每个权限组都有一定的权限。这些权限具体表现为可以执行的元数据管理器、转换器和集成器所提供的方法。,35,基于COM的元数据管理器MetaManager的运行机制,用户程序首先启动客户程序,客户程序连接应用服务器。客户程序创建一个128位的SessionID并将它与登录帐号、口令组成XML字符串传递给应用服务器,XML Service调度对象接收到XML字符串后解析XML字符串,创建登录对象并调用登录对象的相关方法。登录对象通过数据库中的用户及口令确定用户的合法身份,并保存SessionID,返回登录成功的信息。客户程序收到登录成功的信息后,以XML字符串形式向应用服务器发送XML命令数据包,命令数据包前加上包括SessionID的请求报头。应用服务器收到客户的请求数据包后将其解析,获得SessoinID,并根据SessionID检查用户的权限。如用户具有合法权限,则由XML Service调度对象创建MetaManager对象并调用MetaManger的Run方法。MetaManager的Run方法根据客户传递的XML数据包调用相关的方法。返加的结果打成XML数据包并通过通信组件返回给客户程序。,36,转换器的设计与实现,转换器的功能:数据结构转换和数据类型转换结构化数据的转换:关系对应于对象类,元组对应于对象实例,关系属性对应于对象的属性值非结构化数据的转换:利用对象的封装性实现对非结构化数据的处理自动化或半自动化的转换器生成技术:采用互操作性标准,定义数据源与翻译器的接口从数据源中提取数据并转换格式的过程:先将各类数据库系统中不同格式的数据转换成文本文件,然后再利用批拷贝命令将数据导入目标系统中。以使数据仓库获得新的数据提供决策分析使用。,37,转换器的设计与实现,数据准备区的使用:首先从源数据中提取数据,转换成数据仓库所要求的格式后存储在数据仓库的一个称为数据准备区的缓冲区中。在该区域中,可以暂时存储原始数据,然后由集成器对数据进行清理、集成后再装载到数据仓库中。由于使用独立于数据源的数据准备区为数据仓库准备数据可提高管理数据仓库的效率,另外将数据准备区与数据仓库数据隔离开,可以保护数据仓库的完整性同时可以提高数据仓库的性能。在将数据从源数据提取到数据准备区的过程中,可借助于Microsoft的数据转换服务(DTS)包来实现。,38,源数据库、数据准备区和数据仓库之间的关系,39,DTS概述,DTS:是Microsoft SQL Server2000中提供的数据转换服务(Data Transformation Services)。DTS是一个组件对象,它提供一个组件的完整集。这些组件可在任何具有OLE DB、ODBC接口的数据库或规格化的文本文件间导入、导出和转换数据。包(Package):导入、导出数据的过程定义并保存在包中。,40,包的结构模型,41,包中包含的四种集合,步骤集合(steps collection):包括包中所有的步骤对象。每个步骤对象定义了任务对象执行的次序,这些任务按照一定的次序执行,构成包含多个任务的工作流。一个步骤可以和其他的步骤并行执行,或者串行执行,或者基于它们的执行进行调节。在DTS包中,DTS隐式地创建任何需要的步骤对象,使用DTS COM 接口则必须显示定义这些步骤对象。连接集合(connections collection):连接集合包含了包中所有的OLE DB数据提供者信息。每个连接对象描述了数据提供者。将连接对象放在连接池中可以在多个步骤对象或者多个任务对象之间再利用这些连接对象。连接池是一个提供者它可以让用户直接使用一个已经存在的连接,而不必在物理上为每个应用再建立新的连接。,42,包中包含的四种集合,全局变量集合(GlobalVariables Collection):全局变量集合提供了一个内部存储空间,用户可以在那里存储数据并且可以在一个包中的不同步骤对象之间共享它。全局变量对象为存储提供了一个可变数据类型。每个包都包含了全局变量对象的集合,并可以在执行期间动态的添加和删除。任务集合(Tasks Collection):任务集合包含了一个包中所有已定义的任务对象。每个任务对象描述了一个工作单元的信息,这个单元必须包对象完成转换过程的一部分,例如执行SQL语句或一段ActvieX脚本。,43,任务集合的结构,44,任务集合的任务对象,任 务 对 象 描 述 ExecuteSQLTask执行一条或多条SQL语句DataPumpTask从源数据拷贝数据并转换成目标数据ActiveXScriptTask执行ActiveX脚本ExecuteProcessTask执行一段外部程序BulkInsertTask执行批量插入操作SendMailTask使用SQL Mail发送电子邮件DataDrivenQueryTask在数据存储之间执行高级转换TransferSQLServerObjectsTask将SQL Server的数据对象转换为其他对象,45,转换器的实现转换器的流程图,创建数据准备区,N,开始,读元数据,检查数据准备区?,执行DTS包,更改元数据(时间,数据状态),结束,成功,连接元数据库,创建DTS包,Y,46,选择源数据的窗体,47,数据转换,在窗体上方的下拉列表中选择了数据源类型后,针对不同的数据源类型在窗体中会显示不同的界面,让用户输入连接各种数据源的连接字符串信息(用户名、密码、数据库等)。由于DTS借助OLE DB来存取不同数据源的数据,所以本系统中可选择的数据源类型包括OLE DB支持的各种异质数据源。在窗体中单击下一步按钮后,将显示数据库中各对象信息让用户选择需要导入数据准备区的数据对象,然后创建并调用Microsoft 的DTS对象,完成数据转换工作。,48,调用DTS的过程,创建DTS包,并初始化参数。向DTS的连接集合中添加源数据连接。检查数据准备区是否存在,如不存在首先创建数据准备区,如果数据准备区已存在则直接向DTS的连接集合中添加目标数据源连接。读取相关元数据信息,如需要转换的表及字段的相关信息等。根据元数据信息,创建任务对象并加入任务集合。创建步骤对象,并将任务对象加入步骤对象。如果有多个任务,则继续创建其他任务对象,并指定所属步骤对象。执行DTS包。,49,集成器的设计与实现,数据仓库初始化和目录管理接收监控器的变化通告,并将变化反映到数据仓库中数据的存在方式与转换算法复杂多视图合并和集成产生重复和不一致性采用时态数据库的历史数据管理技术,50,集成器的设计与实现集成器的功能,转换各种异质数据源的格式。判定一个记录是否可进行抽取处理。数据重新格式化。数据清理。从多个输入数据源中选取数据。多个输入文件重新排序。产生不同概括层次上的输出结果。提供缺省值。区分需要抽取的和不需要抽取的操作型数据。进行数据的汇总。对数据元素的重命名进行跟踪。不常见的或不标准的格式处理。指定转换逻辑和转换机制。理解并解开建立在旧的传统程序逻辑中的数据之间的关系。大容量数据的输入/输出(如并行装载和并行读出)。必须符合企业数据模型。,51,集成器的设计与实现,集成模型:根据元数据中记录的映射关系在星形模型的基础上以向导的形式提供集成模型的客户端工具。创建数据仓库后,在元数据中记录数据仓库的基本信息,同时创建一个同名的关系型数据库。用户可以在窗体中的数据类型下拉列表中选择数据仓库的数据类型,由于数据仓库是一个海量数据的存储集合,所以选择的数据库管理系统必须具有并行处理能力及可伸缩性。创建了物理数据库后,开始创建数据仓库模型,并装载数据。首先创建星型模型中的事实表。在树型结构中列出当前元数据库中描述的源数据库以及库中的表对象,用户可以选择其中一个表作为事实表;同时窗体的右边以列表形式显示了所选择表的字段信息。单击下一步后,用户可以在窗体中选择度量字段,并选择要保留的字段。将用户的信息记录在元数据库中,并根据该信息创建事实表。,52,集成器的设计与实现,事实表创建后,则开始创建星型模型的维。在前面的章节中我们讨论了星型模型的维分为:标准维、雪花维和时间维。完成上述的步骤后,已成功创建了一个星形模型,然后再调用元数据管理器的相关方法更新元数据库中的数据。数据净化:当数据从源数据库中提取到数据准备区后,必须先进行数据净化才可以装载到数据仓库中去。数据净化主要指对数据字段的有效值检验。有效值的检验通常包括:范围检验、枚举字段取值和相关检验。范围检验要求数据保证落在预期的范围之内,通常对数据范围和日期范围进行检验,如对任何在指定范围之外的日期的发票都应删除。枚举字段取值指对一个记录在该字段的取值,若不在指定的值中,则应该删除。相关检验要求将一个字段中的值与另外一个字段中的值进行相关检验,即在数据库中某个字段应与另一个字段形成外键约束。,53,集成器的设计与实现,维表与事实表的引用完整性检验:数据仓库的星型模型中一般都有多个维,而在查询数据时维表和事实表之间大多采用内联接。当维表和事实数据表之间的引用完整性破坏时,这类查询可能会导致检索数据不准确或不同查询之间数据的不一致性错误。即在事实表的一条记录中如果某个与维表链接的字段值与维表中的字段值不相关时,可能导致检索的数据不正确。在本系统中我们利用内链接的特性来检查维表与事实表之间的引用完整性。但在实际情况中,事实表的某些字段经常为Null值,为了解决使用内链接查询数据时引起的数据不一致问题,我们在每个维表增加一个空记录,并将事实表中所有为相关字段值为Null的值改为维表中新增的空记录的值。,54,集成器的设计与实现,统一数据编码:数据仓库中的数据从各个数据源提取出来的,尽管经过转换后数据格式已经统一,但数据的编码、描述在各个源系统中都有很大的区别。为了改进数据仓库中数据质量,提高数据仓库中数据的可用性,必须统一数据编码。本系统中编码转换主要包括:日期格式转换:大多数业务环境中有许多不同的日期和时间类型,所以,几乎每个数据仓库的实现都必须将日期和时间变换成标准的数据格式。数据仓库必须用单一的模式规定日期和时间信息。在本系统中通过调用Delphi中的FormatDateTime函数来统一日期格式。测量单位的转换:数据仓库中对于数值型字段应保持一致的单位。在元数据库中创建表Units和UnitTypes来表示各种单位的换算关系。表UnitTypes记录了数据仓库系统中的单位类型,初始元数据库中共分六种单位类型:时间单位、货币单位、重量单位、长度单位、面积单位、体积单位。在表Units中记录了单位名、单位类型以及同类型单位之间的相互转换关系。,55,监控器的设计与实现,数据仓库提供的是离线数据,与源数据存在时间差。一致性程度:完全一致部分一致不考虑一致性数据源自治性程度和开放性程度:全开放型半开放型全封闭型,56,监控器捕捉数据变化的途径,时标方法:指在数据库中的数据设一个时标,如果新插入或更新一个数据记录,在记录中插入新的时标或加上更新时的时标,然后根据时标判断哪些数据是变化的,并把变化的数据追加到数据仓库中去。DELTA文件:该文件是由应用产生的,并记录了应用所改变的所有内容。利用DELTA文件记录数据的变化,不需要扫描整个数据库,所以效率较高,但生成的DELTA文件的应用并不普遍。,57,监控器捕捉数据变化的途径,映象文件:在上次提取数据库数据到数据仓库之后及本次提取数据库数据之前,对数据库分别作一次快照,然后通过比较两幅快照的不同来确定要追加的数据。这种方法需要占用大量的系统资源,对系统的性能影响比较大。日志文件:由于日志文件是数据库的固有机制,所以它对系统性能的影响比较小,另外它还有DELTA文件的优点,提取数据只局限于日志文件而不用扫描整个数据库。所以日志文件是最可行的一种方法。,58,数据仓库的创建,59,创建星形模型向导,60,创建星形模型向导,

    注意事项

    本文(《数据仓库与数据挖掘》演示稿第4章.ppt)为本站会员(牧羊曲112)主动上传,三一办公仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一办公(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    备案号:宁ICP备20000045号-2

    经营许可证:宁B2-20210002

    宁公网安备 64010402000987号

    三一办公
    收起
    展开