作者:Adam Miller戴尔Linux/Oracle解决方案系统工程师

与数据库打交道时,速度和延迟极其重要。虽然目前的趋势是不断追求更高的速度和更短的延迟,其成本却有时令人望而却步。随着系统性能随着时间的推移而降低,情况变得更加复杂,需要耗费更多的资源才能将之拉回预期的范围。这是不争的事实,但我们仍能有所作为:通过更高效地利用硬件,从系统层面减轻不良影响。

关于提高系统性能并维持预算,涉及到很多个主题,但本文中我们集中讨论以下变量:操作系统设置和EqualLogic存储架构。

首先,我们需要考虑基本系统设置;在新安装红帽企业级Linux(这里指第5版Update 5或5.5)的情况下,您将获得一套默认的设置文件,并附带些有帮助的评议作为指导资料。虽然这些默认值如预期的一样能提供功能性,但是它们需要进行微调方可实现最优的性能。戴尔EqualLogic团队的工程师们已建起一个值得借鉴的白皮书文库,提供最佳实践系统设置参数,这些参数正是他们在一系列参考架构测试中发现为有效的。利用这些资料,您可以通过调优操作系统来提高EqualLogic存储阵列的性能。

接下来,我们需要了解与传统存储环境形成对比的EqualLogic存储群组的架构。在传统的SAN(存储区域网)中,存储控制器直接连接到众多磁盘托架上,并且控制器可访问SAN中的每一个磁盘。而EqualLogic则具有更为动态的架构,每个节点都有一堆托架的磁盘和一个控制器安置在单一的机箱中,多个机箱之间的控制器彼此通信和协作,形成单一的逻辑实体。在传统的SAN架构中,每条数据路径连接到一个可访问全部直接附加磁盘的控制器上,非常适合原生“设备—映射器—多路径”(device-mapper-multipath)机制。但对我们的动态架构来说,情况并不如此,因为访问的中央地点不止一个。全新的EqualLogic HITKit(1.0.0版)被设计来解决这个问题,并使操作系统能够高效利用这个独特的架构。

本文所涉及的测试中,比较了不同的操作系统设置参数并聚焦于它们的IOPS(每秒IO);其中利用Oracle Orion工具,对一个双节点EqualLogic PS6010存储群组模拟一个联机事务处理数据库工作负载。确切的硬件并不重要,因为我们仅仅关注修改不同操作系统设置所带来的性能提升,而不是我们设置所能生成的IOPS值。应注意:该架构设计中的交换机设置遵循EqualLogic工程团队最佳技术实践,不会在不同的测试运行中加以更改。总体架构如下图所示。

戴尔EqualLogic HIT程序包使Oracle工作负载实现更高的IOPS_休闲

图中蓝线为10GigE 万兆位以太网

测试包含三种设置:

第一种设置为“基线”设置,采用原生device-mapper-multipath机制和红帽企业版Linux5.5基本安装,从而为我们提供MPIO(多路径IO)功能和连接iSCSI卷的原生iSCSI daemon,适用的话采用全部默认值。

第二种设置为“最佳实践”设置,除一个细节外,与第一种设置完全相同:引入EqualLogic工程团队的最佳实践发现(来自白皮书)以调优iSCSI daemon设置。

第三种设置为“EQL HITKit”设置,采用EqualLogic HITKit自带的dm-switch驱动程序来提供MPIO功能,而不是采用原生device-mapper-multipath机制,并且采取eqltune(HITKit工具程序)iSCSI推荐设置。

 

 

下图显示了三种设置提升性能的百分比。

戴尔EqualLogic HIT程序包使Oracle工作负载实现更高的IOPS_Oracle_02

图中:

Oracle Orion小型随机IO(25%写入,75%读取)

EqualLogic PS6010(2个节点)

上图中,可以看到:采用操作系统可调属性默认值的“基线”设置,达到100%性能标准。从“最佳实践”设置看到的结果,显示IOPS比基线设置提高30.5%。当运行一次Oracle Orion联机事务处理模拟来开展75%读取和25%写入时,“EQL HITKit”设置显示了醒目的性能跳跃——高于基线设置44.9%。

虽然这种测试方法可能并不对跨所有数据库和应用程序的所有类型工作负载放之皆准,但可以在确定您的特定数据库环境的性能与规模时,用作一个基准。我当然鼓励系统管理员和数据库管理员一样花时间在其(采用了EqualLogic阵列的)系统上研究EqualLogic HITKit,以确保真正从系统设置中赢得最大利益。

声明:目前戴尔官方还不支持在配置有ASM的Oracle RAC上使用EqualLogic HITKits。我们的工程部还在努力使其变成支持的配置,但目前还没实现。

更多精彩文章请关注:

戴尔技术社区