暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

IBM AIX Oracle 9i RAC 性能因素 - udp及其他

原创 eygle 2009-07-15
1558
原文链接: http://www-01.ibm.com/support/docview.wss?uid=csc179c2d650f71a939248256df800234bb9

内容提要:




Oracle 9i RAC (Real Application Cluster)
提供比单一实例更好的可用性和可扩展性,当前用户越来越多的开始采用RAC
的系统,用户在传统单一实例上的监视和调整系统CPU
,内存和硬盘的技能和经验,通常在RAC
环境中同样适用。然而在RAC
环境中有更多需要用户考虑的问题。

Oracle 9i RAC

多节点的结构引入了一个新的硬件模块 -- RAC
节点间的互联网络,用于协调各个节点的运行,包括全局锁(global locking)
,队列(enqueue)
和缓存管理(buffer cache management)
RAC
是一种较新的技术,对于节点间互联的方式和性能的资料还很少,本文将对此进行一些分析,这些分析基于IBM pSeries
服务器和用户的实际工作负载.




    说明:




    1. RAC
    互联配置

    IBM pSeries
    环境下RAC
    支持以下的互联选项,基于UDP
    协议的100Mbps
    或千兆的以太网,基于IBM
    专利技术的SP Switch
    SP Switch 2
    。大多是RAC
    的环境使用千兆以太网,因为千兆以太网能够在相对低的成本下,为大多数商业应用提供足够的带宽和可忍受的网络延迟。100Mbps
    的以太网更适合于低负载的测试环境,而SP Swith 2
    则适用于大型、高负载和对反应时间要求严格的复杂应用环境。


    通常RAC
    的环境下,在公用网络的基础上,需要配置两条专用的网络用于节点间的互联,在HACMP/ES
    资源的定义中,这两条专用的网络应该被定义为"private"
    。在实例启动的过程中,RAC
    会自动识别和使用这两条专用的网络,并且如果存在公用"public"
    的网络,RAC
    会再识别一条公用网络。当RAC
    识别到多条网络时,RAC
    会使用TNFF (Transparent Network Failvoer Failback)
    功能,在TNFF
    下所有的节点间通信都通过第一条专用的网络进行,第二条(
    或第三条等)
    作为在第一条专用的网络失效后的备份。



    CLUSTER_INTERCONNECTS
    是在Oracle RAC
    中的一个可选的初始化(init.ora)
    参数。此参数可以指定使用哪一条网络用于节点间互联通信,如果指定多条网络,RAC
    会在这些网络上自动进行负载均衡。然而,当CLUSTER_INTERCONNECTS
    设置时,TNFF
    不起作用,这将降低RAC
    的可用性,任何一条节点间互联网络的失效,都会造成RAC
    一个或多个节点的失效。


    AIX
    环境中Oracle
    数据库在单一实例下的性能调整方法(
    :
    异步I/O
    VMM
    )
    Oracle RAC
    环境仍然有效。但在Oracle RAC
    环境下,需要考虑其他一些问题。RAC
    采用UDP
    协议进行节点间的互联通信,因此与UDP
    有关的一些参数需要调整。建议udp_sendspace
    的起始值为db_block_size * db_file_multiblock_read_count
    udp_recvspace
    设为udp_sendspace
    4
    倍,上限为1048576
    。如果发生socket
    缓存溢出(
    可通过 netstat -s | grep "socket buffer overflows"
    命令察看) udp_recvspace
    参数值需要增加。

    Oracle STATSPACK
    报告包含很多对于节点间互联性能的信息。首先应该查看的是"Top 5 Timed Events
    ",在RAC
    的环境中,"global cache cr request
    "通常会出现在这里,如果这个事件(event)
    在整个"Total Elapsed Time
    "中只占很小的比例 (
    如下例所示)
    表示RAC
    中节点间通信工作正常,否则,如果占的比例较大,表示节点间通信有问题。



    "Cluster Statistics"
    部分包含了很多关于节点间通信性能的信息,如Global Cache Service (GCS)
    的平均响应时间 (average response times)
    尤其是关于get
    reveive
    相关的事件。下面所示的是RAC
    Switch 2
    环境下的数据,其带宽和网络延迟都大大好于千兆以太网。







    小结:

    对于Oracle RAC
    来说,节点间通信的性能是需要特殊考虑的。节点间互联的网络提供"global cache coherency"
    "global locking"
    和其他RAC
    管理的功能。工业标准的千兆以太网为大都数基于RAC
    商业应用提供令人满意的性能,如果对于性能有更高的要求就需要选用IBM
    SP Switch2

「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论