ORACLE RAC原理

想起之前面试遇到过的问题,介绍一下rac的基本原理。自己果断哑咳,就懂了,技术做多了,有种只可意会不可言传的无奈。


 oracle RAC,全称real application clusters,译为“实时应用集群”,由2台或以上具有相同硬件和软件配置的服务器(通常是性能比较高的机器,可以是微机、小机或者更高级别的机器)通过光纤连接到共享存储,节点之间一般也通过光纤实现互连和通信。
通过RAC软件(三方的或者是oracle自己的cluster软件)将所有节点在逻辑上构成一个群集,即一个数据库对应多个实例,各个节点通过各自public ip同时对外提供服务,通过private ip进行内部通信(如心跳判断等),在通过缓存融合技术将所有节点的数据库缓存虚拟成一个整体,数据在虚拟的缓存中为各个节点提供一致性访问,在保证各个节点访问到数据的一致性的同时又充分利用了所有节点的cpu资源。从整体上来看,RAC对外提供单台服务器的N倍内存和N倍cpu资源的数据处理服务,只要整个RAC中还有一个节点未宕机,整个数据库就能持续对外提供服务。 oracle HA,即狭义上的双机热备,一般由两台具有相同硬件和软件配置的服务器,通过光纤连接到共享存储以及各个节点之间的通信,通过操作系统的群集软件或者其他三方双机切换软件组成逻辑上的整体。在某一时刻,群集中只能有一个节点作为主服务节点能访问共享存储并提供对外服务。当主服务节点宕机,群集软件将其他节点切换为主服务节点,保证最大限度的降低整体的服务中断时间。原则上只要群集中还有一个节点未宕机,整个数据库还能对外提供服务,但是由于节点之间的切换和接管会造成整体出现短暂的服务中断。 同样做为高可用性具体实现技术的HA和RAC,既有共同性又有差异性,以下就分别从这两方面进行比较: 相同点: 首先在目的上,HA和RAC都是为了尽可能保证数据库能持续运行而不间断或者最大程度缩短宕机时间,从而最大程度减少或者降低企业的损失。 其次在硬件上,无论是HA还是RAC都使用共享存储来存储数据,都是通过多台具有相同硬件结构的机器构成一个群集,各个机器和存储之间都使用光纤进行通信,每台机器都需要2个或者2个以上的网卡分别用于提供public和private连接,在IO上都要受到共享存储IO的限制。 在软件上HA和RAC环境中的所有机器都要装相同的操作系统(可以是Windows、Linux、Unix或者是AIX等等),相同版本的oracle软件和补丁等等。 差异性: rac中每个节点都有自己实例,自己undo表空间,自己的一套redo文件,自己的SGA,共享控制文件和其他数据文件;而HA每个节点都有自己的实例,共享redo文件,undo表空间和控制文件和其他数据文件。 在同一时刻,RAC 的所有节点都能分别对外提供服务,如果设置了负载均衡,群集软件还能根据各个节点的负载情况选择负载最小的节点为新的请求提供服务;而HA在同一时刻只能有一个节点对外提供服务,即使是群集中的其他节点都未发生宕机也是如此。 rac环境中,只要存在一个节点未宕机,则整体仍能持续对外提供服务,不会出现服务中断的情况;而HA原则上虽然只要存在一个节点未宕机,群集仍能将其切换为主服务节点,但是切换服务的过程由于群集软件的切换操作和节点的接管操作会造成短时间的服务中断。 在同一时刻,HA对外所能提供的最大IO为共享存储的IO,最大的内存和cpu资源均为当前主服务节点的资源;而在同一时刻rac对外所能提供的最大IO为共享存储的IO,最大内存和cpu资源为当前活着的节点的总和,在数据处理并发服务方面比HA有了硬件上的绝对优势。 结论: 在至少有一个节点存活的基础上,rac能持续对外提供服务,而HA可能会出现短暂的服务中断,因此rac在持续服务方面要优于HA; 由于在同一时刻rac能通过所以节点对外提供服务而HA只能由主服务节点提供对外服务,因此在并发服务和硬件资源上rac要明显优于HA; 由于rac还需要rac软件的license,而且一般rac的节点会比HA多,硬件资源配置一般也比较高,所以在成本投入方面rac要比HA高; 由于rac需要在多个节点之间进行数据同步和通信,原理和构成比HA更复杂,因此在维护性方面rac要比HA更复杂,一旦出现问题,需要投入更多的资源。

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/25911813/viewspace-2130270/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/25911813/viewspace-2130270/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值