Oracle公司数据仓库解决方案介绍 完整版.doc

上传人:laozhun 文档编号:2394955 上传时间:2023-02-17 格式:DOC 页数:136 大小:5.24MB
返回 下载 相关 举报
Oracle公司数据仓库解决方案介绍 完整版.doc_第1页
第1页 / 共136页
Oracle公司数据仓库解决方案介绍 完整版.doc_第2页
第2页 / 共136页
Oracle公司数据仓库解决方案介绍 完整版.doc_第3页
第3页 / 共136页
Oracle公司数据仓库解决方案介绍 完整版.doc_第4页
第4页 / 共136页
Oracle公司数据仓库解决方案介绍 完整版.doc_第5页
第5页 / 共136页
点击查看更多>>
资源描述

《Oracle公司数据仓库解决方案介绍 完整版.doc》由会员分享,可在线阅读,更多相关《Oracle公司数据仓库解决方案介绍 完整版.doc(136页珍藏版)》请在三一办公上搜索。

1、Oracle数据仓库解决方案介绍Note: Copy Number space on the cover of each distributed copy. If the document is not controlled, you can delete this table and the Copy Number label from the cover page.目 录1前言22ORACLE 公司数据仓库系统总体方案32.1Oracle数据仓库技术解决方案32.2Oracle数据仓库解决方案优势52.2.1业务优势52.2.2技术优势62.3Oracle数据仓库解决方案带来的利益102.

2、3.1降低项目风险102.3.2降低项目成本113ORACLE 数据仓库系统工具平台134ORACLE 数据仓库产品详细说明184.1Oracle数据仓库的平台Oracle10g184.1.1Oracle 10g性能卓越184.1.2Oracle10g高度集成424.2Oracle数据库10g的OLAP选项:唯一用于商业智能的关系 多维数据库424.3Oracle数据库10g的数据挖掘选件- Oracle Data Mining644.4Oracle数据仓库设计和建立工具-Warehouse Builder794.5Oracle应用服务器- Oracle Internet Applicatio

3、n Server984.5.1OracleAS Discoverer1024.5.2Oracle Internet Directory1024.5.3Oracle应用门户- Oracle Portal1044.5.4Oracle AS 集成管理器 Integration1124.6Oracle即席查询分析工具-Oracle Discoverer1224.7Oracle Reports Developer1314.8Oracle数据仓库Java应用开发工具-Oracle JDeveloper1324.9Oracle数据挖掘工具 Oracle Data Miner1424.10OracleBI 电

4、子表格插件 Oracle Excel Add In1431 前言2 Oracle 公司数据仓库系统总体方案2.1 Oracle数据仓库技术解决方案Oracle 公司在大量国外数据仓库的实施过程中已总结出一套数据仓库总体解决方案框架,结构如下图:Oracle的数据仓库系统的逻辑体系架构是由3层组成:数据获取层:实现如何从所有源系统中获得原始的业务数据,并对其进行一致性处理,按主题进行数据重组和格式转换,然后传送并装载到数据仓库系统中。数据管理层:把数据存储到企业级数据仓库系统中;数据使用层:实现如何把数据仓库系统中的数据和分析结果提供给最终用户。按照用户的分析需求,使用报表、随即查询、多维分析和

5、数据挖掘进行数据展现。下面将对这3层进行详细的讨论:数据获取层Oracle Warehouse Builder(以下简称OWB)为数据整合工作提供集成的工作环境:数据源管理、ETL过程管理、数据模型设计、元数据管理。OWB可以管理不同类型的数据接口:数据库接口(Oracle或非Oracle)、文本文件接口。通过OWB内嵌的数据转换函数可以生成复杂的数据转换脚本,数据转换脚本由Oracle数据库内的PL/SQL存储过程实现,可以充分利用Oracle数据库的高性能、可伸缩、高可靠的特点,保证ETL过程在规定的时间窗口内完成。OWB集成了元数据管理功能,可以对数据仓库中的各个对象进行关联、影响分析,

6、生成多种元数据报告。OWB内嵌了数据质量管理功能,可以对数据源的数据质量进行分析,发现存在的错误并且自动生成错误数据处理的业务规则,对于ETL的执行过程OWB进行全程监控,生成审计报告。数据管理层Oracle 10g数据库可以统一存储和管理数据仓库中的各种不同类型的数据,包括关系型数据、OLAP数据和数据挖掘所需数据,Oracle提高标准的SQL和JAVA接口对这些数据进行访问。通过数据分区技术、索引技术、数据压缩技术等,Oracle数据库可以实现对海量数据的高效访问。Oracle 10g数据库采用网格计算技术,可以有效地管理利用企业的计算资源,实现低成本的扩展。利用数据库的管理工具Enter

7、prise Manager可以对各种数据进行统一管理,包括备份、归档、导入、导出等。数据使用层Oracle 应用服务器提供了一个开放标准的架构,是开发部署Web上的应用的理想平台。它的伸缩性,分布架构和高度数据库集成是支持关键事务、交易型应用和数据仓库的基础。Oracle 应用服务器内嵌商业智能(BI)功能,包括:Oracle Reports,Discoverer, BI Beans,Excel add-in等模块。这些模块能够分别实现固定格式的统计报表、自定义报表、即席查询、OLAP分析等功能。这些模块和Oracle数据库紧密集成,能够充分利用Oracle数据库的技术特点生成高效的商业智能应

8、用。同时,这些模块运行在Oracle应用服务器平台,具有稳定可靠、高效的特点。用这些模块开发的应用可以做到在数据级和应用级的无缝集成,实现完整的分析流程。利用Oracle应用服务器中的Portal模块可以建立统一的访问入口。Oracle Portal允许用户轻松、快捷地部署数据仓库应用,按照用户的角色和权限对功能进行定制。2.2 Oracle数据仓库解决方案优势2.2.1 业务优势2.2.1.1 现成的应用产品Oracle的数据仓库解决方案是建立在“业界最佳实践”部件上的集成解决方案。这些解决方案融合了数据、分析信息、业务规则、层次结构和报告方法。所有这些产品部件都是基于一个集成框架而设计的,

9、它涵盖了客户对数据仓库的全部业务需求,因此是一个完整的数据仓库解决方案。大量成熟的应用产品,众多的国外企业和组织使用着Oracle数据仓库产品。2.2.1.2 统一的逻辑数据模型Oracle 公司在各个业实施数据仓库系统时,使用统一的行业逻辑数据模型,逻辑数据模型具有完整性、可扩展性等特点。但其中的每一个模块又是独立的,可以单独使用。因此在实施数据仓库项目中,可以按照“总体规划,分步实施”的原则,逐步推进数据仓库项目的实施。首先实现最关心的主题,然后再逐步加以扩展。2.2.1.3 允许业务可持续发展Oracle的数据仓库解决方案是可伸缩的解决方案,它能够适应客户的业务的变化,以及由此产生的帐户

10、、交易和客户群的变化,和数据库规模的增长。2.2.1.4 最低的建设风险使用严格的数据仓库实施指导方法论来指导数据仓库的实施。Oracle的数据仓库解决方案是经过在全球上百家大企业和组织实施证明过的切实可行,能够真正满足商业银行决策分析要求的解决方案。选择Oracle的数据仓库解决方案,可以降低数据仓库项目的实施风险,保证项目的成功。2.2.2 技术优势由于Oracle采用整合的产品实现数据仓库的全部功能,减少了系统之间的接口,简化了系统的管理,加强了系统的可靠性,使得Oracle的数据仓库技术平台具有非常明显的优势:2.2.2.1 完整的数据仓库解决方案Oracle 数据仓库解决方案提供了从

11、数据获取、数据管理和数据展现三大过程,Oracle 公司是唯一一家能提供数据仓库建设每一阶段的开发工具得厂家。Oracle 10g数据库更集成了ETL、OLAP、Data mining功能,使得数据库的功能更加强大,数据仓库的集成度更高,数据仓库的管理更加容易。2.2.2.2 高性能数据仓库系统具有数据量大的特点,如何有效管理大数据量,提供高效的数据访问,是任何一个数据仓库项目都会面临的问题。Oracle数据仓库产品在技术上一直处于市场领先的地位,提供了多种技术提高数据仓库的性能,如:数据分区技术、并行处理技术、物化视图技术、索引技术和数据压缩技术等,使得Oracle数据仓库可以管理海量数据,

12、提供在大数据量下系统的高性能。Oracle数据库具有很强的并发性,可以支持10000个以上的用户同时对数据库的访问,保证了数据仓库系统较高的并发访问能力。由于Oracle数据仓库集成了ETL功能,不仅为数据采集、转换、装载工作提供了一个稳定的平台,并且可以通过数据库内置的并行操作能力提高ETL的效率。如上图所示,传统的ETL只能顺序执行(图的上半部分),而Oracle的ETL解决方案可以通过数据库的并行操作功能实现管道化、并行的执行,保证了ETL的伸缩性。数据仓库中的OLAP部分一直是系统的瓶颈,虽然其它数据仓库产品也能管理大数据量,但由于其不包含OLAP功能,必须用另外的OLAP产品实现,所

13、以并不能解决OLAP的性能瓶颈。而目前市场上的OLAP产品都是基于文件系统,所以很难支持大数据量,这一点在国内外客户的数据仓库项目中已经得到印证。Oracle由于把OLAP功能集成到了数据库中,使得这一问题迎刃而解,使OLAP分析不再受数据量的困扰。上面的图表是Oracle OLAP与其它多维数据库产品所做的性能对比测试。可以看出,随着数据量的增大和查询的复杂,多维数据库的响应时间明显延长,而Oracle OLAP的相应时间基本不变。在应用层,Oracle的分析应用基于Oracle的应用服务器。Oracle应用服务器是市场上领先的中间件产品,许多测试都表明Oracle应用服务器的性能是最好的。

14、因此,基于Oracle应用服务器的分析应用可以具有很高的性能。Oracle从数据库和应用服务器两层保证了数据仓库应用的高性能。2.2.2.3 系统灵活,易扩展数据仓库项目通常需要按照“整体规划,分步实施”的原则实施,随着数据仓库项目的深入,数据仓库的主题会不断增加,系统数据量和用户数都会不断增加,系统不可避免需要面临扩容的问题。Oracle是市场上最早支持网格计算的厂家,Oracle数据库和Oracle应用服务器都支持网格计算。可以很方便地对系统进行扩展,这种扩展包括:增加新的存储设备、增加新的服务器。当系统扩展时,Oracle数据仓库具有自适应能力,原有应用程序不需要任何修改,可以在不中断系

15、统运行的情况下实现系统的扩容。用户需求的变化也会引起数据结构的变化,并且需要对元数据进行修改,由于Oracle采用单一的元数据库(Repository) 统一管理元数据,数据仓库的各种工具,如:建模工具、ETL工具、报表工具、OLAP工具等可以访问同一个元数据库,当数据仓库需要发生变化时,可以把修改的工作量减到最小。如果采用非集成的方案,当系统扩容时必须对数据结构和应用程序进行修改。系统从修改测试到恢复使用可能需要很长的时间,影响数据仓库系统的正常使用。另外,由于系统中存在多个元数据库,技术人员必须同时修改多套元数据才能保证信息的一致。这种方案使系统扩展变得非常困难,而且加大了出错的可能性。2

16、.2.2.4 易开发,易维护由于Oracle数据库集成ETL、OLAP和数据挖掘功能,数据仓库系统内部的接口减少了,开发变得更容易。同时,由于Oracle使用标准的开发语言SQL和Java开发数据仓库的应用,而SQL和Java是标准的技术,市场上掌握这些技术的软件人员很多,可以很方便地开发高质量的应用。在系统管理和维护方面,Oracle使用统一的管理工具Enterprise Manager管理数据仓库的各个组件。数据仓库的系统维护人员在统一的环境下对系统进行管理,包括:系统的启动和关闭、数据备份恢复、系统诊断、性能监控等。如果采用非集成的方案,开发人员必须学习不同的开发工具,增加了开发成本;系

17、统维护人员必须学习不同的管理工具,分别管理数据仓库的不同模块。管理成本高,而且系统一旦出现问题,很难准确定位,及时恢复。2.2.2.5 系统可靠性高数据仓库通常是企业数据统一集中存储和分析的平台,它的可靠性也就成为了关注的重点。关系数据库已经有很长的发展历史,尤其是Oracle数据库,是市场上最成熟、最稳定的产品,这一点已经得到国内外用户的一致认可。Oracle数据库提供多种技术保证系统的可用性,如:RAC技术、闪回技术、冗灾技术等,如今,由于Oracle把ETL、OLAP和数据挖掘这些数据仓库的功能整合到了数据库中,使得用户可以利用数据库的技术保证数据仓库应用的可用性。市场上的其它数据仓库工

18、具都不具备关系数据库这样成熟稳定的特点,当系统发生故障时,也没有完善的恢复机制。如果采用非集成的方案,这些工具就成为数据仓库系统中的薄弱环节,当这些产品出现问题时,会造成全部系统不可用。2.2.2.6 快速响应时间数据仓库系统要求数据要以高度规格化方式进行组织,通过智能合计和查询间并行性使数据仓库变得更小来能提高查询性能。要充分考虑到统计、查询、分析、决策等各项功能的需要,要为复杂的查询提供最快的反应时间。Oracle数据库中的多种处理优化机制,如并行查询、并行插入更新和删除操作、并行装载、并行索引建立、分区技术等等,加上具有丰富经验的数据仓库整体应用结构和硬件结构的合理设计、数据逻辑结构和物

19、理结构的合理设计,保证了系统的快速响应时间。2.2.2.7 安全性高客户的数据仓库系统必须提供一套广泛而严密的安全机制,确保数据在存放、备份、传送和使用等环节上的安全性;要有大量的备份及恢复程序来减少数据丢失的可能性,具有灾难备份的功能;建立完善的操作人员授权机制把数据通过授权的方式保护起来,设立数据存取等级;对敏感数据的传输要进行加密,以防止数据被破坏、窃取;要有严密的措施来防范非法入侵。另外,对数据的操作在日志文件里也都要有记录以便于日后进行跟踪。系统的安全性首先包括对系统数据访问的安全性。Oracle基于角色的安全控制通过灵活及易于管理的授权方式,保证了数据访问的安全性;另外还可以通过视

20、图、数据库触发器等实现特殊的数据安全性;Oracle数据库的审计功能还可跟踪记录系统的各种操作,用于查找可疑的操作。另外数据仓库系统还可以利用网络、操作系统的安全控制来实现其综合的安全性要求。2.2.2.8 开放性好数据仓库系统要求系统在硬件设备、操作系统、数据库管理系统以及应用系统方面具有开放性。Oracle产品是基于业界标准的,具有良好的开放性。2.3 Oracle数据仓库解决方案带来的利益2.3.1 降低项目风险每个数据仓库项目都会有风险,风险可以归为3类:业务方面:领导和业务部门对项目效益的认可,对项目的支持和承诺;技术方面:系统集成,性能问题;项目方面:项目变化控制,项目资源的可用性

21、,对其它项目的影响采用Oracle整体数据仓库解决方案,可以有效地控制这几个方面的风险:业务方面:采用Oracle整体解决方案可以快速建设分析应用,使业务部门在最短时间内看到数据仓库的效益。由于Oracle采用统一的元数据管理方案,当业务需求变动时,可以快速地对数据结构进行调整,满足新的业务需求;同时Oracle提供强大的数据质量管理功能,可以对数据质量问题进行全程管理。技术方面:Oracle数据仓库稳定可靠,数据库整合了全部分析功能,使得系统之间的接口减少,系统集成变得更简单,提高了系统的可靠性。Oracle专有的数据仓库技术可以保证对大数据量的高效访问(包括OLAP访问),解决性能问题;项

22、目方面:Oracle具有国际化的实施团队和全球共享的知识库,可以借鉴国际最佳实践。同时,由于Oracle合作伙伴中有大量熟悉Oracle数据库技术的高质量软件开发人员,可以开发出高质量的数据仓库应用。当项目组人员出现变动时,可以很方便地找到具有相同技能的人员,对项目组进行补充。人员变动不会影响项目的正常进行。2.3.2 降低项目成本Oracle数据库提供了很多专门针对数据仓库系统的优化技术,包括:数据压缩技术、分区技术、索引技术等,这些技术可以大大降低数据仓库对于硬件的要求,包括:服务器和磁盘阵列。采用Oracle解决方案,客户可以大大降低在硬件方面的投资。数据仓库项目的总成本取决于系统开发和

23、维护的总成本,系统的质量取决于开发人员对产品的掌握程度。由于Oracle数据库是市场上占有率最高的产品,在客户和集成商中熟悉Oracle的技术人员人数众多,而Oracle数据仓库采用与Oracle数据库相同的开发技术,可以很容易地找到数据仓库系统的开发和维护人员。同时在Oracle 10g中增加了很多新的特性,实现了数据仓库的自我管理和优化,实现了开发工具的标准化,可以进一步降低数据仓库系统的开发和维护成本。3 Oracle 数据仓库系统工具平台数据仓库是一个建设过程,Oracle 公司在数据仓库建设的每一个环节上都提供了相应的技术手段及工具来保障数据仓库的顺利实现。下图所示为Oracle 公

24、司为数据仓库系统的技术平台提供的建议。Oracle 公司在多年数据仓库开发过程中已开发出符合数据仓库建设每一阶段所需要的开发工具,这对保证数据仓库建设的顺利完成提供了保障。以下为Oracle 公司为数据仓库系统技术平台的配置内容:建设数据获取层配置:l Oracle Warehouse Builder(OWB) 实现数据仓库的设计、部署和管理,包括数据建模、数据抽取、数据转移和装载、聚合、元数据的管理等。数据管理层配置:l Oracle 10g DB进行数据存储及管理,同时集成了OLAP 和Data mining 功能。l Oracle Enterprise Manager数据仓库图形化管理工

25、具数据展现层配置:l Oracle Reports数据仓库前端应用报表开发工具l Oracle Discoverer数据仓库随即查询、报表工具l Oracle 10g OLAP多维分析引擎l Oracle 10g Data Mining数据挖掘引擎l Oracle Internet Application Server应用服务器l Oracle BI Beans由Oracle 10g Java OLAP API 构造的商业智能套件l Oracle 10g Data Miner 数据挖掘工具l Oracle Portal 商业智能门户根据IDC的报告,大约80%已投资于数据仓库的公司都已获得了巨

26、大的成功。这是因为数据仓库提供了与OLTP系统截然不同的集中式存储系统,前者包含了从公司拥有的许多数据库中提取出来的业务数据。这些数据生动地反映了企业承包的现实,被予以分析,以及作为战略性的竞争武器。快速,准确地分析商业问题,将会影响公司的长期生存。Oracle数据仓库支持:1、任何数据源(Any Source)搜集在Oracle数据仓库中的数据来源众多,包括内部存储的业务数据和外部的数据。在传统上,数据仓库中的大多数数据来自内部业务系统,如业务系统或各客户信息系统等方面的数据。然而外部来源的数据也越来越普通,并且将会提供比内部来源更多的数据。上述两种数据来源应该融合在一个单一的存储系统中,并

27、且加以管理,从而为最终用户提供对这两种数据源的无缝访问。Oracle提供各种网关(gateway)及Sql*Loader以及合作伙伴提供的各种工具来实现不同数据源数据的加载。2、任何数据(Any Data)考虑到现在需访问的数据仓库的用户范围,系统设计者面临着纷繁各异的需求。对数据的访问必须快捷,直观和直接。大多数用户需要直接查询和深入的能力,而另外一些需要更复杂的分析能力。同时数据仓库必须能够处理新型格式的数据,如声音,视像,文字和空间数据。而且,日益增加的用户提出大量历史性需求,往往导致超大规模数据库(VLDB)的出现。为了满足这些需求,对作为数据仓库核心的数据库系统提出了很高的要求,而O

28、RACLE数据库核心能够完全满足这些需求。3、任何访问需求(Any Access)Oracle提供了基于数据仓库的范围广泛的工具集,能够帮助各种类型的用户访问数据仓库中存储的数据,我们把数据仓库的用户分为两类:第一类是对数据进行随意查询和报告,深入和旋转,这类用户需要一种直接和直观的工具,帮助他们轻松地访问数据,从而作出明智的商业决策。另外一类用户是企业的高级管理者和决策者,他们需要进行更复杂更高级更完全的分析(建模,预测和假设分析等),以支持制定商业策略。上述两类用户体现了整个企业对于信息访问的需求。今天的数据仓库已经突破了管理人员和分析人员的范围,现在各类企业人员都在使用数据仓库,决定选用

29、何种工具实施数据仓库,变得越来越重要。Oracle提供完整的产品工具集,满足上述数据仓库的用户需求:l Oracle Warehouse Builder可以为数据仓库解决方案提供完整、集成的实施框架,以前只能由单独工具完成的功能现在能够在同一环境中实现,这些功能包括:数据建模、数据抽取、数据转移和装载、聚合、元数据的管理等。Oracle Warehouse Builder还实现了数据仓库不同部件如关系数据库、多维数据库以及前端分析工具的集成,为用户提供完整的数据仓库和商业智能系统。l Oracle 10g数据仓库核心,其中Oracle 10g为最新版本的数据库产品,专门针对数据仓库进行了很多的

30、改进,包括对更大数据量的支持(PB级),对更多用户数的支持(10000+),更多数据仓库专用函数的支持等。集成了ETL、OLAP、Data Mining功能。l Oracle Internet Application Server提供了一个开放标准的架构,是开发部署Web上的应用的理想平台。它的伸缩性,分布架构和高度数据库集成是支持关键事务、交易型和数据仓库应用的基础。l Oracle Discoverer 是最终用户查询,报告,深入和旋转和WEB公布工具,能够帮助用户迅速访问关系型和多维数据仓库,从而使他们做出基于充分信息的决策, 满足分析报表功能用户的需求。l Oracle Develop

31、er(Forms&Reports) 一个用于建立企业级客户/服务器和Web数据库应用的、易于使用的集成式快速应用开发环境(RAD)。Oracle Developer通过使用快速应用开发技术(RAD)技术、面向对象技术,基于计算机的内部学习,以及统一的客户、应用服务器和数据库服务器体系结构,为客户/服务器和Web开发建立了新的易于使用的生产力标准。l Oracle BI Beans 是集合了一系列标准Java Bean,帮助开发人员快速建立商业智能应用程序。直接从Oracle 10g数据库中产生快速、灵活的随即查询和多维分析。l Oracle Data Miner Oracle Data Min

32、er 为数据分析人员提供了一个图形用户界面,用于构建、评估和应用数据挖掘模型。Oracle Data Miner 指导数据分析人员完成数据挖掘过程。ODM Data Miner 支持同时构建模型和应用程序,因为它可以自动生成与数据挖掘操作相关联的Java 和/或SQL 代码。这种数据挖掘过程和应用程序开发过程的紧密结合使ODM 成为构建自动化的集成数据挖掘应用程序平台独一无二的选择。l Oracle JDeveloper 一个具有高效生产力的3GL编程工具,它可用来为瘦客户应用建立数据敏感的Java部件。Jdeveloper包含了开发人员在建立2层和3层数据库部件和应用时的所有之需。l Ora

33、cle Enterprise Manager 是一套开放的综合系统管理系列产品,它包括了下一代系统管理工具,可以高效地管理整个Oracle环境,包括系统、数据库、网络和应用程序,可以大大减少系统管理员用于管理复杂产品环境的时间。4 Oracle 数据仓库产品详细说明4.1 Oracle数据仓库的平台Oracle10gOracle 10g是现今用于数据仓库的主流关系数据库的最新版本。Oracle 常被用作数据仓库是因为它成功地满足了数据仓库的核心要求:性能、可伸缩性和可管理性。Oracle7 (Release 7.3)、Oracle8 、Oracle8i和Oracle9i 都具有重要的功能来满足

34、这些核心要求。Oracle 10g扩展了这种功能。由于数据仓库存贮更大量的数据、支持更多的用户、要求更高的性能和扩展性要求更高,因此对于数据仓库的成功实现,这些核心要求就成为至关重要的因素。Oracle 10g 继续侧重于这些核心要求,并且比Oracle9i 数据仓库性能的各个方面都有显著的提高。 然而,Oracle 10g 远远超过了数据仓库的这些核心要求:性能、可伸缩性和可管理性。Oracle 10g 是第一个真正的“基于网格计算的商务智能平台”。 Oracle Database 10g 使您更轻松的在网格上运行数据仓库,使数据仓库运行于标准、低成本、模块化的硬件组件(存储器、刀片服务器和

35、互联技术)上。Oracle 10g 做为数据仓库的载体,它内置的数据分析引擎和数据挖掘引擎可以非常方便、灵活地搭建数据仓库。 Oracle 10g不仅是数据仓库的基石,它也是商务智能的基石。下面我们将从Oracle 10g高性能, 高伸缩可扩展和自我管理等特性进一步详细阐述。4.1.1 Oracle 10g性能卓越对于数据仓库,关系数据库必须满足三个必要条件: l 性能 l 可伸缩性 l 可管理性 首先,必须满足最重要的性能要求。典型地,终端用户使用工具或应用程序来访问数据仓库。终端用户唯一能看到的数据库特性是性能:数据库以何速度处理某一指定查询的结果,并且将结果返回到用户所用的工具和应用程序

36、。正是因为这个原因,对于采用数据仓库的数据库,性能是最重要的要求。 其次,必须满足可伸缩性要求。数据仓库经常会增加数据量和访问数据库的最终用户数。因此,数据服务器必须能够升级:即数据服务器通过添加新的硬件资源必须能够处理更大量的数据和更多的用户。 最后,必须满足可管理性要求。当数据仓库增长时,它必须保持易于维护性。数据仓库不应仅仅由于其数据量或用户数量的增加而增加数据库管理员。 以下讨论了Oracle 10g 中支持每一要求的重要新特性。 1. 性能 l 位图联合索引 “联合索引”是一种跨越多个表的索引结构,它改善了表连接的性能。位图联合索引对于“星形查寻(star queries)”尤其有用

37、。一些情况下,位图联合索引能提高30% 的查询性能。 通过一个简单的例子,可以更好地理解位图联合索引。假定一个包含星型模式的数据仓库,它有一个名为SALES 的事实表和一个名为CUSTOMER. 的一维表。使用位图联合索引,可基于SALES 表和CUSTOMER 表,建立如下联合索引: CREATE BITMAP INDEX cust_sales_bji ON Sales(Customer.state) FROM Sales, Customer WHERE Sales.cust_id = Customer.cust_id; 此联合索引可用于评估下列查询。在这个查询示例中,CUSTOMER 表不

38、能被访问;只有使用联合索引和sales 表,才能进行查询。 SELECT SUM(Sales.dollar_amount) FROM Sales, Customer WHERE Sales.cust_id = Customer.cust_id AND Customer.state = California; 如果CUSTOMER 表是一个大的维表(基于customer 的维表经常具有数百万的记录),则位图联合索引由于无需访问CUSTOMER 表,从而大大地改善查询性能。 l 自动内存调整 Oracle 10g 为每个查询提供了一套自动的动态分配运行内存的机制。运行内存是一种在执行查询时,为特殊

39、目的如排序和散列而分配的内存。在许多数据仓库环境中,数据仓库服务器有70% 以上的物理内存可被分配为运行内存。自动内存调整初看似乎就是一种可管理性。 然而,尽管自动内存调整毫无疑问地提高了可管理性,它的主要的优势却是在改善性能。自动内存调整不仅减轻了数据库管理员调整运行内存的负担,而且它的内存分配方法远比手动调整内存参数的分配法更精确。 Oracle 数据库 10g 中,系统管理员只需使用一新的参数 SGA_TARGET,指定某一实例可用的 SGA 内存数量。然后数据库服务器就可自动在不同组件中按要求分配内存。自动共享内存管理功能基于数据库内部的高级启发式技术,可以监测内存分配并根据工作负载需

40、求进行变化。自动共享内存管理功能一旦启动,最常配置的组件就可以自动按大小进行排列。这些组件包括:1.共享池(用于 SQL 和 PL/SQL 执行) 2.Java 池(用于 java 执行状态) 3.大池(用于大额分配如 RMAN 备份缓冲) 4.缓冲器缓存对于上述组件,无须设置其大小,对于那些看起来为零值的组件,亦无须设置默认参数。当某组件需要内存时,它可以要求从另一组件通过内部自动调整机制来转移其所需内存。其无需用户干预,可以直接自动完成。每一组件的性能都由 Oracle 实例进行监控。现在,实例使用内部视图和数据,根据组件的不同大小决定如何最佳地分配内存。由此,随着工作负载变化,内存也被重

41、新进行分配,以确保在新的工作负载下性能的最佳化。该算法永远不会结束,总是力图全面考虑长期和短期等因素来尽量找到一种最佳的分配。管理员并非无所作为,在这些自动调整组件中,他同样可以针对每一组件设定一最小值来达到其所需要的控制。在一些特殊情况下,如管理员认为某一项应用需要最小数量的内存时,该功能尤为有用。如果使用服务器参数文件 (SPFILE),系统在停止运行时该自动调整的组件大小可以被存储。这意味着系统在每次重新运行时,无需从头开始重新了解特定的工作负载。使用自动 SGA 内存管理的最大好处就在于,不同 SGA 组件的大小是灵活的,它们可能随着工作负载的变化而作出相应调整,无须用户进行人工干预。

42、除可以使内存使用的性能最大化外,自动共享内存管理还能提升工作负载性能。在人工配置下,经过编译的 SQL 语句由于缺乏足够的容量,有可能频繁地退出共享池。这将产生频繁的、困难的语法分析,并因此降低其性能。但是,一旦使用自动管理,内部调整算法将监控工作负载的性能,并且扩充共享池(如果认为这样可以减少语法分析的数量)。这是自动共享内存管理中最值得称道的地方,因为它无须任何额外资源或是人工调整,即可方便地增强性能。由于只需处理一项参数,管理员的工作大大减轻。系统管理员只需确定一种实例可以使用的 SGA 内存数量,其他的就不用考虑了。他们不用再计算每单个组件的容量大小。此外,他们还可以放心的是,除非系统

43、全部耗完内存,否则不会出现内存出错的情况。 通过自动分配运行内存,Oracle 将提高整个数据仓库的吞吐能力。在同样的性能水平上,数据仓库将支持更多的用户,因为数据仓库现在利用内存的效率更高。每个查询被分配的内存是基于它的具体要求,并且当运行查询时,Oracle10g 会动态地调整内存分配以确保高性能。自动内存调整的特点将保证那些内存需求量多的查询能得到足够的内存,而内存需求量少的就不会分配给太多的内存。通过更有效地使用内存,Oracle 10g提高了整体查询性能。 内部测试表明,此特性能提高内存绑定系统20% 以上的性能。并且,此特性易于实现(因为它仅仅涉及改变一些初始化参数)。 l 物化视

44、图的增强 Oracle8i 中引入物化视图。作为数据仓库一个基本特性,物化视图提供了一种机制,它能够提高几乎所有类型的查询性能。物化视图应看作是一种特殊的视图,它物理地存在于数据库中,可包含连接与/或集合,并且通过预先计算查询执行前费时的连接和集合操作,能够改善查询执行时间。 物化视图的增强也减少了查询的响应时间。目前,更多的查询能使用物化视图,因为他们能够建立基于数据子集(例如只有EMEA 和Asia 地区)的一个物化视图。由于大多数视图现在能够采用快速的新方法,维护物化视图所需的时间减少。为了帮助管理和使用,可利用两个新的软件包,该软件包解释了为什么查询不使用物化视图以及软件包的功能。 从

45、Oracle9i 开始,物化视图在几个重要方面得到增强,这包括更复杂的查询改写机制如支持数据子集。 以及增强的更新机制即允许对更多的物化视图快速地、增长地更新。终端用户唯一能看到的数据库特性是性能:数据库以何速度处理某一指定查询的结果,并且将结果返回到用户所用的工具和应用程序。因此,性能对于数据仓库中的数据库极为重要。 l 对更多的SQL 语法的支持 完整外联合 Oracle10g支持完整外联合。以前,Oracle 仅支持单方外联合。Oracle 10g支持ANSI 连接语法,完全支持单方和完整外联合。这个特性既提高了复杂查询的性能,又简化了用SQL 表示复杂商业问题的任务。 WITH 句型

46、Oracle 10g 支持WITH 句型。这种新的SQL 结构能提高复杂的、在多处使用同一子查询的SQL 查询的性能。 l 适应的直接IO 操作 自Oracle7,Release7.1(1993年)以来,Oracle 就已经支持IO 操作。直接IO 操作通过绕过缓存的方式提高表扫描、索引扫描和大容量写的性能。进一步提高性能的方法是采用异步IO 操作(自Oracle7 Release 7.3 就已开始支持)。在Oracle 10g中,这些IO 操作得到了进一步的增强。通过动态调整IO 缓冲区的数量来确保异步直接IO 尽可能有效地执行,Oracle 10g 将更有效地利用异步直接IO 操作。l 自

47、动存储管理 (Automatic Storage Management,ASM)Oracle 10g 增强了自动存储管理功能, 增强了对数据仓库大数据存储的管理和性能。自动存储管理 (ASM) 使存储虚拟化,并且提供了轻松的数据库存储供应。此外,您现在能够使用标准、低成本、模块化的组件来存储所有的 Oracle 数据。您可以使用单个 ASM 来为多个 Oracle 数据库管理存储。ASM 仅要求您管理少量的磁盘组,而不是管理许多数据库文件。一个磁盘组是一组磁盘设备的集合,ASM 将其作为单个逻辑单元来管理。您可以定义一个特别的磁盘组作为数据库的默认磁盘组,Oracle 自动为该数据库分配存储资

48、源,以及创建或删除与该数据库相关的文件。 ASM 还提供了一些存储技术方面的优势 如镜像或逻辑卷管理器 (LVM)。类似于这些技术,ASM 使您能够从单独磁盘设备的集合中创建单一磁盘组。它可以跨磁盘组中的所有设备均衡到该磁盘组的 I/O。还执行条带划分和镜像存储来改善 I/O 性能和数据可靠性。无论何时当存储配置发生变化时,ASM 都将自动再均衡数据库的存储资源。 自动存储管理同样提供诸如RAID或是逻辑卷(Logical Volume Managers, LVMs)这样的存储技术的优点。Oracle可以对于多个数据库通过一个磁盘组中的所有设备来平衡I/O,并通过对数据缓冲区和镜像技术的实现来提高I/O的性能和数据的可靠性。同时,Oracle可以在节点和节点、集群和集群之间重新分配磁盘,自动重新配置磁盘组。因为自动

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 建筑/施工/环境 > 项目建议


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号