随着IT技术的发展,网格计算目前已经成为一个热点,它所带来的低成本、高性能以及方便的计算资源共享正是众多企业所追求的。在这一大潮下,数据库技术又将向何处发展?Oracle对此问题的回答是:未来的数据库将构筑在网格计算环境之上。而对于如果要将Oracle数据库构筑在网格计算环境之上,RAC选件技术是其支持网格计算环境的核心技术,RAC选件技术解决了传统数据库应用中面临的一个重要问题:高性能、高可伸缩性与低价格之间的矛盾。
自从1991年Oracle数据库的6.1版在DEC VAX平台中引入了Parallel Server(OPS)选件,很快该选件技术也可用于许多其他平台,不过,严格来说,尽管OPS算得上是个集群环境,但是并没有体现出集群技术应有的优点。之后随着集群技术自身的慢慢成熟,以及Oracle对这一技术的经验的不断丰富积累,在2001年,Oracle 9i数据库的release 1发布,其中就首次包含了RAC(Real Application Cluster)这个全新的全面替代OPS的集群功能选件。
过去,如果企业希望其系统具有良好的可靠性、可伸缩性和高性能,就必须选择基于价格昂贵的主机系统,这意味着企业在系统建设之初就必须投入大量资金;如果后期需要进行应用升级,企业也不得不付出高昂的升级费用。而如果采用RAC技术,对于用户来说意味着就有了更多的选择,无论是选择基于Intel架构的PC服务器、Unix工作站,还是最近颇受关注的刀片服务器;也无论是选择Unix、Windows,还是Linux操作系统,只要在这些软硬件平台上部署了Oracle的RAC系统,这些分布在各处的系统就能组成集群,实现用户所需的高性能和高可靠性。并且当系统需要进一步扩展时,无需对应用程序进行任何修改。
通过使用Oracle RAC选件技术,可以提高整个系统的高可用性、可扩展性、可伸缩性、管理性等方面,从而使整个系统更加健壮。下面就从几个方面简单的谈谈RAC选件技术的作用价值吧。
Availability
Oracle RAC系统可以配置为没有单点故障,即使是运行在低成本的硬件和存储上。Oracle RAC系统中的数据库服务器如果出现故障,应用程序仍然可以正常运行。故障切换对于应用程序来说是透明的并且只需要短短的几秒钟时间。同样,在Oracle的容在解决方案的DataGuard方案中同样可以应用Oracle的RAC系统。Oracle数据库包含需要建立高度可用的数据库系统所有的功能。这使得组织机构不再因为担心系统停机而需要分片和分发他们的IT基础设施,从而实现全球单一实例计算。
OracleRAC系统使多个服务器构成的集群以透明的方式来管理一个单一的数据库。Oracle RAC系统使整个数据库系统可以向外扩展而不是自身的扩容。这意味着以往受硬件限制的最高限额的可扩展性已被打破。集群中的的服务器可以具有线性的可扩展性的来共同透明管理一个单一的数据库。
Affordability
Oracle RAC系统允许组织机构使用低成本的电脑来管理大型数据库而不是需要购买一个大型昂贵的计算机。普通服务器上的集群现在能够满足大部分数据库的负载。例如,一个客户需要管理大型数据库可能会选择购买一组8个行业标准的4处理器的服务器,而不是去购买一台32处理器服务器。基于标准的小型机器比单一大的系统更加低廉而且没有单点故障。
Oracle RAC系统使用户能够方便地使硬件基础设施来支持他们的数据库系统。Oracle RAC系统允许用户在线的去添加额外的硬件到集群中去,Oracle RAC系统立即获得额外的处理能力。用户还可以在线的从集群中删除硬件。
用户能够添加目前最新最好的硬件到一个Oracle RAC系统中。在一个Oracle RAC系统中的服务器必须是运行同一操作系统,但是它们可以有不同数量的处理器或者不同的主频和不同数量的内存。这样使得IT基础设施具有更好的灵活性。在按比例增加的计算模型中,一旦一台服务器已经满配置CPU和内存,下一步就是一个昂贵的升级,但Oracle RAC系统的用户只要增加另外一台服务器。
Oracle RAC系统使用户能够把一组数据库服务器作为一个单一的系统来管理。Oracle企业管理器使得管理Oracle RAC系统简单,通过集群提供一个单一系统映像并确保软件的一致性。
Oracle RAC系统不要求改变现有的数据库应用。Oracle RAC系统的应用就像传统的单一实例数据库环境。因此,客户可以很容易地从单一的配置迁移到Oracle RAC系统而无需对应用做任何的改变。Oracle RAC系统还不用改变现有的数据库架构。数据不一定必须分区或按节点分布。
Oracle RAC系统允许低成本,业界标准的服务器运行Linux操作系统的集群来满足负载要求,而不是像以前使用一个单一的更大更昂贵的计算机。Oracle RAC系统通过其功能可以对对于商业应用中复杂计算的硬件和操作系统提供必要的可扩展性和高可用性。
Oracle RAC系统利用大量的低成本,业界标准的服务器来提供与大型机一样可靠的企业级计算。两个或四个处理器的英特尔和AMD服务器并不需要复杂的操作系统或硬件,Oracle RAC系统允许用户通过集群大量的使用这些系统来共同管理一个单一的数据库。
Oracle RAC系统使Linux操作系统对于关键性任务和企业级负载的系统变得更加有吸引力,甲骨文公司已经和企业Linux领先的厂商合作以确保Linux系统包含要实现Oracle RAC系统的可扩展性,高可用性和性能的所需要用到的组件。
Universal Information Management
Oracle RAC系统可以管理任意级别数据量的数据并且支持各种类型的数据库负载。Oracle RAC系统对于信息管理提供了一个单一,通用的平台。Oracle RAC系统支持交易系统,数据仓库,分析和协作应用程序。企业现在可以通过一个共同的IT架构实现的所有应用。不再需要针对不同类型的应用购买不同的硬件,软件和存储。Oracle RAC系统通过标准化的计算架构大幅降低IT的成本投入。
Oracle RAC系统可以支持混合的负载方式。举例来说吧,在一个四节点的群集中,可以把其中的两个节点可用于联机事务处理工作,剩下的两个节点决策支持工作。所有的负载在同一时间适用于同样的数据,但它们之间彼此不受影响。这比较适用于对实时性要求比较高的企业,并且能提供零延迟计算。
Oracle RAC系统是Oracle企业网格计算架构的基础,它的技术的核心是建立一个实用的计算模型,使得计算机的资源变得虚拟化并且可以按照需求变化来动态配置。
Oracle的RAC系统目前应用在很多行业的核心系统上,当然,使用这项技术也对数据库维护人员的技术水平提出了更高的要求,如何去管理和维护Oracle RAC系统一直也是摆在很多DBA面前的一个问题,Oracle当然也考虑到Oracle RAC系统维护管理的复杂性,所以也为这些DBA维护管理Oracle RAC系统提供了解决方案,这个将会在以后的文章中提及。