
RAC(Oracle格线计算技术)
Oracle RAC是Oracle Real Application Cluster的简写,官方中文文档一般翻译为“真正套用集群”,它一般有两台或者两台以上同构计算机及共享存储设备构成,可提供强大的资料库处理能力,现在是Oracle 10g Grid套用的重要组成部分。
2.1 基本介绍
Oracle RAC是Oracle9i新版资料库中採用的一项新技术,也是Oracle资料库支持格线计算环境的核心技术。它的出现解决了传统资料库套用中面临的一个重要问题:高性能、高可伸缩性与低价格之间的矛盾!
RAC的结构图

它一般有两台或者两台以上同构计算机及共享存储设备构成,可提供强大的资料库处理能力,现在是Oracle 10g Grid套用的重要组成部分。
Oracle RAC主要支持Oracle9i、10g、11g版本,可以支持24 x 7 有效的资料库套用 系统,在低成本伺服器上构建高可用性资料库系统,并且自由部署套用,无需修改代码。
在Oracle RAC环境下,Oracle集成提供了集群软体和存储管理软体,为用户降低了套用成本。当套用规模需要扩充时,用户可以按需扩展系统,以保证系统的性能。
Oracle RAC一般也可构建于大型SMP主机,IBM的AIX系列伺服器往往是其中高端平台,Intel Linux往往作为其低端平台。当AIX UNIX用来运行Oracle RAC作为大型资料库系统平台时,其集群系统构建、实施、运维、高可用设定,有其平台特点。可以参照《Oracle大型资料库系统在AIX/UNIX上的实战详解》,该书以AIX UNIX平台为主线,以其他UNIX系统为参照,描述了资料库系统Oracle 10g、Oracle 11g的RAC的构架方法和过程。在Linux平台,则《大话OracleRAC集群、高可用性、备份与恢复》有着很好的论述。
2.2 关键特性
高可用性
Oracle Real Application Clusters 提供一个高性能低成本的套用平台,支持所有类型的套用系统,无论是事务处理型套用还是分析型套用。所有套用共享同样的伺服器和存储资源。出现任何的伺服器或磁碟故障,系统会自动重新接管发生故障的功能。这些对前端用户的完全透明的。同样,如果您需要增加伺服器或改变其他组件的配置也不会影响到套用系统。
高性能
Oracle Real Application Clusters保持着TPC-C的记录,达到每分钟 118万个事务的处理能力,和仅仅 $5.52 每tpmC的成本。在3,000 GB的 TPC-H数据仓库Benchmark 测试中, Oracle RAC同样保持性价比的领先地位,保证我们的用户能够达到更好更快的 ROI。这仅仅是Oracle 保持的多项Benchmark 记录中的最 近的一些指标。
按需扩充
您现有的系统可能是基于当前的工作负载而构建的,当 套用规模需要扩充时(支持更多的数据、用户或套用),您就需要扩展您的系统以保证系统的性能。当您的套用是构建于大型的SMP主机时,您可能需要购买另一 台昂贵的主机,但可能只能使用到其处理能力的很小一部分。但是如果您使用Oracle RAC的话,您可以通过增加一台或多台低成本的伺服器来扩充您的套用系统的处理能力,满足套用需求。
第三方套用支持
Oracle RAC资料库伺服器象一个单一镜像的资料库服务 器,所有的套用无需任何改动都可以直接部署 (例如Oracle EBS, SAP, Siebel, 您自己的套用), 同时可以提高套用性能和可靠性。 Oracle和SAP的套用在RAC上完成了一系列的benchmarks性能测试,获 得了非常优异的测试结果, 象ABB 和Colgate一些大客户都是在Oracle RAC上运行他们的 SAP 套用软体。
2.3 技术应答
我听说RAC无法证明其在超过4个处理器的集群上的伸缩性 – 您有什幺证据来证明RAC 的高可用性、高伸缩性和高可靠性?
标準的benchmark 性能测试表 明 SAP 运 行于RAC上可以达到80%的伸缩性。一个明显的例证是最近在HP上所作的标準 TPC-C测试。第一个测试是Oracle运行于有64个Intel Itanium2® CPU 的HP SuperDome SMP巨型伺服器。第二个测试是16个节点的集群系统,每个节点是4个CPU的SMP伺服器。测试结果表明RAC环境性能超过SuperDome 18% ,这两个测试使用了完全同样的 Itanium2® CPU,处理器总数都是64。所以在同样的CPU处理能力下,RAC具有更好的伸缩性。
当您再进一步考察这两种方案的成本时,您会发现RAC的成本更低。HP SuperDome 将近800万美元,而同样的集群系统的成本仅仅不到300万美元, 其成本只是大型机的1/3。
为什幺说Oracle Real Application Clusters 10g 要远远超过它的竞争对手?
最基本的不同是,Oracle Real Application Clusters 10g 中所有伺服器都可以直接访问资料库中的所有数据,其他的资料库在开放系统中都做不到这点, 正是由于这个原因,您可以非常方便地根据需求随时增加伺服器来扩充您的系统,无需重新分布数据和套用。Real Application Clusters象一个单一的系统一样工作,任何节点的故障都不会影响其他节点对数据的访问。所以说增加服 务器就增加了系统的可靠性。另外一点,对用户来说RAC是一个资料库系统,对它的维护管理如同单机一样简单方便。
Microsoft SQL Server和IBM DB2都有active-active 的故障切换方式,为什幺我要採用Oracle Real Application Cluster 10g ?
其他的资料库系统都无法 真正的支持 active-active方式的集群系统,即集群的两个节点可以支持同样的套用。实际上,他们只能支持双向的active-passive 架 构,即节点 A 运行套用A,同时节点B 运行套用B,每个节点作为另一个节点的备份节点。但是同样的套用无法同时运行在两个不同的节点。在Oracle Real Application Cluster 10g 中,同样的套用可以运行在两个或更多的节点,每一个节点都可作为所有其它节点的备份机。当 出现单点故障时,整个Real Application Clusters资料库系统的效率只会有很小的降低。
我的分散式套用系统运行非常好,为什幺我要把我的资料库进行集中?
如果您的套用系统正运行 于Oracle上,他们当然可以支持您的业务需求。但是集群的资料库可以让您管理更少的资料库,意味着更 少的管理成本。同时如果您把数据集中到Oracle Real Application Cluster 10g 上,您可以提高整个系 统的可用性,达到99.99%甚至更高。
我们已经有了集 群硬体环境,并且可以进行套用的切换,为什幺我还需要Oracle Real Application Clusters 10g?
当您在集群环境下运行您 的套用,如果不採用Oracle Real Application Clusters 10g 的话,您的套用是运行于单例程状态下。虽然您的服务 器是集群的一部分,但实际上相当于只运行在一台单机上。在硬体集群环境下,如HP ServiceGuard、 Sun Cluster 和 Microsoft Cluster Services, 您可以在集群的任何一个 节点重新启动 Oracle资料库 (因为硬碟可以共享). 这就是我们所说的 ‘cold failover’。’Cold failover’ 切 换速度依赖于相关硬体资源的切换速度,这可能需要5到 25 分钟的时间恢复。如果使用Oracle Real Application Clusters 10g, 在伺服器发生故障时,其他存活的伺服器可以自动快速的恢复故障伺服器的例程。Oracle Real Application Clusters 10g 可以提供业界最快的系统恢复,在60秒内可以对系统故障进行恢复,这至少比硬体的 ‘cold failover’方 案快5倍。
我们使用Data Guard来实现故障切换,为什幺我还需要Oracle Real Application Clusters 10g?
使用Data Guard来保护您的数 据是一个正确的选择 - Data Guard可以在各种故障情况(无论是数据坏块还是人为失误)下保护您的数据,Data Guard 也确实提供故障切换的功能,但是切换时间可能会需 要10分 钟,RAC可 以提供低于60秒的切换。同时RAC还可以提供无限的伸缩性,Data Guard 只能提供有限的伸缩性。RAC和Data Guard提供100% 技术来最大程度地保护 您的资料库套用。
为什幺选择Linux? 为什幺选择Linux 环境下的Oracle Real Application Clusters 10g?
採用SMP UNIX伺服器的原因是他 们在过去可以为您的业务系统提供高可用性和伸缩性。在今天对成本非常敏感的环境下,我们需要一种低成本的可以提供高可用性和高质量的系统。通过把您的套用 系统迁移到Linux环境下的Oracle Real Application Clusters 10g ,您可以得到比SMP伺服器更好的可用性,同时可以方便地扩充您的系统,最关键的是总体拥有成本可以控制的很 低。使用小型 Intel 伺服器构建集群成本远远低于大型的SMP 伺服器,同时可以拥有无限的伸缩性。
Oracle Real Application Clusters只是Oracle Parallel Server的新的版本, 是吗?
Real Application Clusters是一个全新的产品,10g 是它的第二个版本。在RAC中,我们有多项新的专利技术,专注于如何为套用系统创建一个高可用性、高伸缩性和高效的集 群系统,而无需修改现有的套用系统。同时,我们在RAC的易管理性上作了大量工作。 RAC系统架构把所有複杂的内部结构都封装起来,对开发人员和用 户完全透明。
您认为Oracle RAC的典型硬体配 置是什幺样的?
首先我们知道 RAC选件支持所有的Oracle资料库支持的平台,如: Windows, Linux, Solaris, HP-UX等等。所以无论您选择什幺样的系统,RAC都可以非常好的运行。如果是 系统选型,那要取决于您的套用需求。我们可以看到Windows 和Linux平台都是常用的基于Intel架构的平台,RAC 在这些平台都有很好的表现,这意味着您可以以低成本得到更高的可用性、可靠性和伸缩性。同 时,RAC可 以在任何价位上获得良好的性能,您可以在HP SuperDomes、Sun boxes或Linux/Windows Intel 伺服器上非常方便地配置RAC。