考虑到现在需访问的数据仓库的用户范围,系统设计者面临着纷繁各异的需求。对数据的访问必须快捷,直观和直接。大多数用户需要直接查询和深入的能力,而另外一些需要更复杂的分析能力。同时数据仓库必须能够处理新型格式的数据,如声音,视像,文字和空间数据。而且,日益增加的用户提出大量历史性需求,往往导致超大规模数据库(VLDB)的出现。为了满足这些需求,对作为数据仓库核心的数据库系统提出了很高的要求,而ORACLE数据库核心能够完全满足这些需求。
3、任何访问需求(Any Access)
Oracle提供了基于数据仓库的范围广泛的工具集,能够帮助各种类型的用户访问数据仓库中存储的数据,我们把数据仓库的用户分为两类:第一类是对数据进行随意查询和报告,深入和旋转,这类用户需要一种直接和直观的工具,帮助他们轻松地访问数据,从而做出明智的商业决策。另外一类用户是企业的高级管理者和决策者,他们需要进行更复杂更高级更完全的分析(建摸,预测和假设分析等),以支持制定商业策略。上述两类用户体现了整个企业对于信息访问的需求。今天的数据仓库已经突破了管理人员和分析人员的范围,现在各类企业人员都在使用数据仓库,决定选用何种工具实施数据仓库,变得越来越重要。
(三)、Oracle提供完整的产品工具满足上述数据仓库的用户需求:
Oracle 8i 数据仓库核心,最新版本的数据库产品,专门针对数据仓库进行了很多的改进,包括对更大数据量的支持(PB级),对更多用户数的支持(10000+),更多数据仓库专用函数的支持等。 Oracle Warehouse Builder Oracle Warehouse Builder可以为数据仓库解决方案提供完整、集成的实施框架,以前只能由单独工具完成的功能现在能够在同一环境中实现,这些功能包括:数据建模、数据抽取、数据转移和装载、聚合、元数据的管理等。Oracle Warehouse Builder还实现了数据仓库不同部件如关系数据库、多维数据库以及前端分析工具的集成,为用户提供完整的数据仓库和商业智能系统。
Oracle Developer/Developer Server企业级的应用系统开发工具,具有面向对象和多媒体的支持能力。可同时生成Client/Server及Web下的应用。支持团队开发,具有极高的开发效率及网络伸缩性。 Oracle Discoverer是最终用户查询,报告,深入和旋转和WEB公布工具,能够帮助用户迅速访问关系型数据仓库,从而使他们做出基于充分信息的决策,因此类工具直接基于关系数据库我们也称此类工具为ROLAP型分析工具。满足分析报表功能用户的需求。 Oracle Express产品系列 是基于多维数据模型OLAP分析和WEB访问工具,能够提供复杂的分析能力,其中包括预测,建摸和假设(What-if)分析。满足高级分析用户的需求。
Oracle Data mining suite 基于数据仓库的数据挖掘工具,简单易用的图形化界面,提供决策树、神经网络等多种数据挖掘方法,支持海量数据的并行处理,分析结果可以和现有系统集成。 最近的市场调查显示,Oracle公司是目前最大的数据仓库解决方案提供者,全球有数千个数据仓库应用采用的是Oracle的解决方案,这些数据仓库的数据规模从GB到TB数量级。目前Oracle在全球数据仓库市场约占38%的市场份额(根据IDC的报告)。
三、Oracle在数据仓库市场的领先地位
(一)、 数据仓库的平台:数据库和决策分析工具 1、 Oracle8i的数据仓库新特性
实现数据仓库所有功能的基础是数据库。要想取得最佳的数据仓库性能和实时分析能力,数据库必须具有高性能和伸缩能力,既能满足当前的需要又能适应今后的发展。Oracle数据仓库解决方案的核心是Oracle8i数据库。和 Oracle以前的版本相比,Oracle8i数据库的性能,资源的管理,分析能力和操作的简单性方面都有质的飞跃。
①、汇总管理提高查询的性能
数据仓库可以通过使用汇总表(Summary Table)的方法提高数据仓库的性能。采用汇总表后,每一个查询请求是访问预先计算的结果,而不需要对数据进行动态计算。Oracle8i通过物化视图
(Materialized View)的方法实现对汇总表的自动管理。当在数据库中建立了物化视图后,对汇总数据的查询请求可以由基表自动重定向到物化视图,物化视图中的数据可以在数据装载过程中自动刷新。 ②、 数据管理
Oracle8中引进的数据分区(Partitioning)功能,分区提供了对非常大的表或索引的管理能力。Oracle8中提供了Range 分区。Oracle8i通过引入新的分区类型和选项进一步提高了这项技术,以实现更好的性能和可管理性。 Oracle8i中新的分区包括: Hash Partitioning—基于Hash算法,使用者只需要指定用作Hash 分区的关键字和分区数量,Oracle8i把每条记录均匀插入各个分区。
Composite Partitioning—是Range Partitioning和Hash Partitioning的组合,使用者可以指定先按某个关键字做Range Partitoning,然后再按另外一些关键字做Hash Partitioning。从而提供更好的并行处理能力。
2、Oracle8i在数据管理方面的其它改进包括: 直接对分区键值作更新
对索引表和索引表的二级索引进行分区
对包含大对客户的表的分区能力 ①、资源管理
资源管理的目的是使系统在同样资源情况下,为更多的用户提供服务。Oracle8i通过资源优化技术使整个数据仓库的吞吐量最大化,并且使管理者能查看系统目前的工作状况。Oracle8i的资源管理功能包括:
Database Scheduler 提供一种机制将数据仓库系统的CPU资源分配给不同类型的用户和不同类型的任务。这种分配机制可以优先级别高的用户得到最快的响应。并且这种分配方案可动态调整,例如:白天和夜间采用不同的方案。
Parallel Query Management Oracle8i简化了并行查询的优化工作,过去需要调整多个参数才能实现的功能,现在只需要调整一个参数就可以完成。
Progress Monitoring 管理者可以监控长时间操作的执行状态。这些操作包括:查询、数据装载、索引建立、备份/恢复。
Plan Stability 保存每个查询的执行计划。当系统环境变化时,例如从开发环境到生产环境,可以重用优化过的执行计划做查询。 ②、新的分析功能
Oracle8i在SQL引擎内建立了更强大的指令集,为数据仓库应用添加新的重大优势
CUBE和ROLLUP, ROLLUP是一个新的SQL关键字,它是对GROUP BY子句的扩充,允许在SELECT语句中计算不同层次的小计。CUBE是