【正确答案】从Oracle9i版本开始就支持RAC了,可以支持7*24有效的数据库应用系统,在低成本服务器上构建高可用性数据库系统,并且自由部署应用,无需修改代码。在Oracle9i之前,RAC称为OPS (Oracle Parallel Server)。RAC与OPS之间的一个较大区别是,RAC采用了Cache Fusion(缓存融合)技术,节点已经取出的数据块更新后没有写入磁盘前,可以被另外一个节点更新,然后以最后的版本写入磁盘。在OPS中,节点间的数据请求需要先将数据写入磁盘,然后发出请求的节点才可以读取该数据。使用Cache Fusion时,RAC的各个节点间数据缓冲区通过高速、低延迟的内部网络进行数据块的传输。在Oracle RAC环境下,Oracle提供了集群软件和存储管理软件,为用户降低了应用成本。当应用规模需要扩充时,用户可以按需扩展系统,以保证系统的性能。
1)优点
①RAC是一种双机并行模式,并非主备模式。也就是说,RAC集群的所有成员都可以同时接收客户端的请求。所以,RAC实现了容错、单点故障解决(如果有节点挂掉,那么其他节点可以继续提供服务)和多节点负载均衡(不同节点可以相互配合,分担负载)。
②提供高可用:故障容错和无缝切换功能,将硬件和软件错误造成的影响最小化,能够保证在集群中只要有一个节点存活,就能正常对外提供服务。
③通过并行执行技术提高事务响应时间,通常被用于OLAP系统。
④通过横向扩展提高每秒交易数和连接数,通常被用于OLTP系统。
⑤扩展了机器的负载能力,节约了硬件成本,可以用多个廉价PC (Personal Computer)服务器代替昂贵的小型机或大型机,同时节约相应维护成本。
⑥易伸缩、可扩展性好,可以方便添加、删除节点,扩展硬件资源。
⑦实现了业务分割处理。
⑧低成本。能使用较低廉的服务器来实现高可用性、高吞吐量的集群环境,这要比通过对某台高端服务器增加硬件实现高可用性、高吞吐量花费的成本低很多。
⑨高吞吐量。随着节点数的增加,整个RAC的吞吐量也在不断增长。
2)缺点
①相对单机,由于底层技术复杂,所以,管理更复杂,对DBA的技术要求更高。
②可能会增加软件成本(如果使用高配置的PC服务器,那么Oracle一般按照CPU个数收费)。
③在RAC系统规划设计较差时性能可能会不如单节点,存在资源争用(Cache Fusion)。
3)RAC的特点如下:
①每一个节点的实例都有自己的SGA。
②每一个节点的实例都有自己的后台进程。
③每一个节点的实例都有自己的Redo Log Files。
④每一个节点的实例都有自己的Undo表空间。
⑤所有节点都共享一份Data Files和Control Files。
【答案解析】