鲜为人知的Exadata存储性能秘密

作者介绍

石云华,现就职于北京海天起点,Oracle技术二线专家成员,Exadata部门负责人。拥有十余年电信、保险、税务行业核心系统Oracle数据库运维经验,持有11gOCM、Exadata、Goldengate等证书。 擅长于Oracle/Goldengate/Exadata方面的故障诊断及疑难问题处理。

 

案例概述 
 

一个X3-2 的Exadata临时客户,Oracle原厂工程师在进行onecommand初始化的过程中,执行到第6步,calibrate检测存储节点磁盘性能时报错,后续工作无法继续。而由于一些商务上的原因,原厂的硬件工程师无法提供技术支持。

 

客户最终找到了我们,希望我们能帮着一起分析分析,存储节点磁盘的性能是否存在问题。在问题转给我之前,客户自己也做了大量的换盘和测试工作。目前存储节点使用calibrate检测的结果正常,但插槽0 或 插槽1 的MBPS偶尔比其它的磁盘低十几MB左右,但还是在可以接受的范围之内。

 

目前,客户主要有两个疑问,需要我进行解释:

  1. 测试过程中以前一些表现比较差的磁盘,为什么将这类磁盘更换到其它的存储节点后再次测试,性能又能恢复正常?
  2. 现在的插槽 0 或 插槽 1 的磁盘MBPS偶尔比其它的磁盘低十几MB左右,是否正常?

 

问题分析 
 

在分析问题之前,我让客户提供了这段时间内的测试记录,同时让客户收集了相应的一些信息。

 

 

以上信息是onecommand过程中报的错误,从错误日志可以看出,在调用CALIBRATE命令检测所有存储节点磁盘性能时,出现了错误。

 

 

以上信息是sundiag收集的日志,可以看出,存储节点cell01在访问/dev/sdq这块盘的时候出现了Medium Error。

 

 

以上图片是客户在测试过程中的截图,可以看出,MBPS为0,类似这种磁盘,需要直接更换掉。在问题转到我们这里之前,客户也已经将这种磁盘全部更换掉。 注意:客户更换的是SEAGATE ST360057SSUN600G 磁盘。而恰恰是这种磁盘,给后续的测试带来了性能问题。也即客户的问题1:为什么测试过程中以前一些表现比较差的磁盘,为什么将这类磁盘更换到其它的存储节点后再次测试,性能又能恢复原样?

 

客户的测试过程
 

11月28日晚上20:25:30开始,客户从操作系统层面直接调用CALIBRATE命令进行测试,循环执行55次。如下图,是客户截取的测试结果。

 


  

从上图可以看出,有部分磁盘的性能还是比较差的。由于这个案例是事后分析,当时的一些日志信息已经不完整,但还好CELL02节点的插槽5这块盘的日志保存完整,以下主要针对CELL02节点的插槽5这块盘进行分析:

 

 

以上信息可以看出,插槽5这块盘是2016-11-25 13:28:34刚刚更换后的SEAGATE的SAS硬盘。

 

 

以上信息可以看出,在2016-11-28 20:40:22时,对CEll02存储节点的磁盘做性能测试时,发现插槽5上的磁盘性能比较低。

 

11月29日,客户根据28日的检测结果,对一些性能偏低的硬盘进行更换,例如:将Cell07存储节点上插槽7(没有测出性能问题日立原盘)的磁盘 与Cell02存储节点上插槽5(出现性能问题的希捷硬盘)的磁盘进行互换。

 

更换后测试结果如下图:

 

 

我们仍然关注Cell02的 插槽5(希捷硬盘),发现它换到Cell07的插槽7后,Cell07没有出现性能问题了。同理,Cell07的 插槽7(日立硬盘)更换到Cell02的 插槽5后,Cell02也没有出现性能问题。

 

问题1的原因 
 

通过客户的以上测试过程来分析,我们基本可以得出结论,针对Cell02的插槽5的这块希捷硬盘,这块硬盘本身是没有问题的,但在某种情况下,会引发性能问题。但是什么的条件会引发硬盘的性能低下呢?同样,满足什么样的条件,进入性能低下的硬盘又能恢复原有的性能呢?

 

 

以上的日志是事后进行分析时,让客户抓取的信息,让客户抓取Cell02存储节点的温度历史信息。可以看到,由于是事后分析,只能看到2016-11-28 至2016-12-05 这部分的数据,对温度历史信息进行过滤,我们可以看到,Cell02存储节点在2016-11-28 20点12分 和 20点17分 这两个时间点的温度只有19度, 而客户进行性能测试的时间点为20:25:30开始。

 

 

以上是Cell02存储节点的操作系统重启信息,可以看出,11-23 至 12-2 之间,操作系统是未重启过的。

 

同样,让客户抓取Cell07存储节点的温度历史信息进行分析:

 

 

以上的日志是Cell07存储节点的温度历史信息。可以看到2016-11-28 至2016-12-05 这部分的数据,对温度历史信息进行过滤,我们可以看到,Cell07未出现过温度低于20度的情况。

 

 

以上是Cell07存储节点的操作系统重启信息,可以看出,11-23 至 12-2 之间,操作系统是重启过多次的。

 

下面,我来归纳下客户所做的性能测试:

 

Cell02存储节点在2016-11-28 20点17分时,温度低下20摄氏度,并且操作系统未重启过,同时未出现连续30分钟以上的24度高温,客户在20点25分,开始做性能测试,此时的希捷SAS盘性能表现比较差;接着,在11-29日,这块希捷SAS磁盘换到了Cell07,由于Cell07从未出现过低于20摄氏度的情况,并且操作系统于11-28 18:17重启过,所以这块希捷SAS在CELL07上又表现良好。

 

结合Cell02与Cell07的历史温度信息和操作系统重启情况,正好验证了Exadata上SAS盘的一个小秘密:

Exadata上的希捷SAS硬盘,当温度低于20摄氏度时,性能会出现下降,并且这种性能下降的现象一直存在。有两种情况才能让这种希捷SAS硬盘恢复原有的性能:

  1. 希捷SAS的温度必须连续30分钟以上保持在24摄氏度。 
  2. 希捷SAS的温度在20摄氏度以上,并重启操作系统。

 

问题2的原因 
 

对于问题1,前面已经进行了完整的阐述,下面来看看问题2:现在的插槽 0 或 插槽 1 的MBPS偶尔比其它的磁盘低十几MB左右,是否正常?

 

1、批量运行CALIBRATE命令对所有存储节点硬盘整体测试

 

测试结果如下图:

 

 

从以上测试结果可以看出:插槽0和插槽1的磁盘性能下降问题是偶尔出现,同时也只是提示信息,且CALIBRATE测试结果在ORACLE的接受范围之内, 并不像以前直接报ERROR错误。

 

2、批量运行CALIBRATE命令单独对插槽0和插槽1硬盘进行性能测试

 

测试结果如下图:

 

 

从以上测试结果可以看出:单独对所有存储节点的插槽0和插槽1硬盘进行性能测试,没有发现性能降低情况,说明硬盘没有问题。

 

3、通过hdparm工具对插槽0和插槽1硬盘以及其他硬盘进行性能测试

 

其实,在诊断Exadata上的磁盘是否出现性能问题时,可以使用hdparm工具来进行分析,其中对每个盘单独测试5次,对Timing buffered disk reads取其平均值后,进行比对。

 

以下,还是拿cell02来进行测试。

 

存储节点二插槽0 盘测试结果:

 

 

平均值为:(177.06+178.58+175.69+178.64+177.31)/5=177.456 MB/sec

存储节点二插槽1 盘测试结果:

 

 

平均值为:(189.09+176.97+174.36+173.54+176.77)/5=178.146 MB/sec

存储节点二其他盘测试结果

 

 

平均值为:(189.25+189.66+189.72+189.80+189.53)/5=189.592 MB/sec

以上测试可以看出,插槽 0 和 插槽1 上的磁盘性能与其它盘基本一致,无太大差别,但比其它盘还是要低一些。这是由于Exadata上的插槽0和 插槽1上安装了操作系统,必然会消耗部分性能。

 

后续思考 
 

至此,客户提出的两个问题,基本上已经进行了解答。

 

在处理这个案例的过程中,客户也透露了一个信息,在3年前,他们刚买这台X3-2时,Oracle原厂曾经一次性将7台存储节点的84块硬盘全部换过,理由是这批硬盘有性能问题,更换前是什么硬盘我不得而知,但更换后的是日立的硬盘。我猜测更换前,应该是希捷硬盘,因为Exadata以前的版本一直用希捷硬盘,后来发现了温度引发硬盘性能低下这个问题后,基本上就放弃了希捷硬盘,而改用日立硬盘,而日立硬盘是不是就不存在这种温度影响性能的问题呢,其实也是存在的,只不过触发的条件更加极限,只有当温度低于15摄氏度时,才会引发性能问题。

 

那以后,Exadata会不会永远放弃希捷硬盘呢,这个也不好说,低于20摄氏度触发性能低下,这个特性是希捷特意设计的,不能简单称之为BUG,Oracle硬件部门目前与希捷也在共同合作,希望在以后的firmware中进行修正这个问题。

原文发布时间为:2016-12-15

时间: 2024-09-22 07:53:59

鲜为人知的Exadata存储性能秘密的相关文章

收集并存储性能监控器数据到SQL Server表

server|监控|数据|性能 收集并存储性能监控器数据到SQL Server表 ? ? 当我们需要监控数据库SQL Server服务器性能的时候,有些数据库管理人员可能会选择Windows为我们提供的'性能'监控器来操作(开始菜单à管理工具à性能). 如果可以将性能监控器采集到的数据记录到SQL Server 的数据库表中去,很多工作对我们来说也许方便得多.开启性能监控器点击开始菜单à运行à执行(perfmon) 或者 开始菜单à管理工具à性能 ? 就可以看到下面的画面了 ?定义性能监控器LO

提升存储性能

提升存储性能 存储系统的容量是由数据库的容量需求所决定的;而存储 系统的速度往往是被忽视的指标.在SQL Server世界里,磁盘存储速度为王.SQL Serve对I/O能力的需求排在内存.网络适配器或处理器之前,成为最重要的一个 因素.让存储尽可能的快.这意味着把存储区域网络(SAN)连接到hyperfast光纤 连接的另一端,并使用诸如iSCSI之类的快速SAN协议与磁盘进行通信. 密 切关注数据库实际处理的工作负载,让存储技术(如RAID)与工作负载相匹配.例 如,RAID 5提供在一个设

VMware vSphere 4创造存储性能新纪录

全球桌面到数据中心及云计算的虚拟化解决方案领导厂商VMware公司(NYSE 交易代码:VMW)日前宣布,领先的按需供应链管理解决方案供应商--TradeBeam公司正在利用VMware vSphere 4为其SaaS(软件即服务)解决方案提供强大支持. TradeBeam的SaaS解决方案为超过6000家组织机构提供了进出口法规遵从.库存管理.货物追踪.供应链项目管理以及全球贸易金融解决方案.TradeBeam将云计算视作其IT运营的战略目标,选择VMware vSphere4作为将其数据中心

存储IO加强型实例I1+D1 ——为极致存储性能要求场景而生

企业客户广泛使用数据库.分布式缓存.ELK(Elasticsearch.Logstash和Kibana)日志分析和大数据等系统,对小IO随机读写IOPS和延时,以及大IO存储吞吐Throughput等提出了严格的要求.而当前高效云盘或SSD云盘存储在性能.成本等方面,还无法很好地满足企业客户存储严苛场景下的要求,成为制约企业客户上云的关键瓶颈. 针对此问题,阿里云ECS企业级产品线推出存储IO加强型实例I1(本地SSD型)和D1/D1NE(大数据型),为客户提供更高性价比实例,打通关键存储屏障.

10方法改善虚拟服务器的存储性能

    企业级虚拟基础架构通常都会使用共享存储.这是个不争的事实,即如果你想使用VMware vSphere和Microsoft Hyper-V的高级特性,所有的主机都需要访问虚拟机(VM)的各种文件.虽然VMware VMotion和Microsoft Live Migration的最新版本并不强制要求使用共享存储,但绝大多数的特性就需要使用,比如VMware vSphere高可用性和微软故障切换集群,可能以后也会是这样. 为了使虚拟基础架构(以及你的关键应用)运行良好,其必须配置虚拟CPU.

优化存储性能?你需要关注这些Linux I/O调度程序选项

要优化Linux性能,IT团队应该检查当前正在使用的I/O调度程序,并评估诸如deadline和完全公平队列(Completely Fair Queuing)这样的替代方案选项. 如果某台Linux服务器性能不佳,通常与存储信道有关.几十年前,还相对容易进行分析,服务器拥有RAID阵列,RAID阵列的顶层存在分区并且Ext2文件系统在分区顶层运行.然而在今天的数据中心,分析存储信道就不那么容易了. 许多现代数据中心的Linux服务器运行在VMware虚拟机管理程序的顶端,与不同类型的存储区域网络

英特尔Michael Greene:联合Ceph社区和合作伙伴,推动存储性能优化提升

 [51CTO.com原创稿件]在数字化时代的今天,高速增长的数据给企业存储带来了诸多的挑战.根据IDC预测,截至2020年,全球数据量将以每两年翻一番的速度增长至44ZB.随着数据量的增大.数据源增多,以及云计算.大数据等创新技术的日益普及,传统的专用存储设备设施已经不能满足企业数据容量迅速扩张.性能线性扩展等各方面的需求,并成为企业挖掘.利用数据的价值过程中的瓶颈.为实现高性能.低成本的存储服务模式,拥有统一存储能力,并在可扩展性.可靠性.性能.自动化维护方面具备独特优势的Ceph存储解决方

存储性能101:服务器、阵列与网络架构基础

   长期以来,数据都是一种蕴含着价值的商品,不论是在企业内部环境中部署,抑或是放到公有云端去实现,它 都是IT系统的核心所在.自上世纪50年代,磁带和磁盘发明后,我们便产生了在存储介质上持久存放数据的需要. 当然,这种持续的数据存储是要付出代价的.不论是磁盘.磁带或是闪存,存储设备的速度都无法赶上处理器和内存系统的发展.于是,为了得到良好的整体存储性能,我们必须不断尝试各种方式,使得存储介质运转得更快. 我们在外部存储介质中保留数据通常只有两种原因:长期存储和数据保护. 长期存储意味着在应用程

明明是全闪存阵列,为何存储性能仍然不够快

软件定义的超融合虽然有着诸多的优势,但对软件开发商提出了非常高的要求,他们非但要精通各种语言.系统和架构,还必须要熟悉硬件本身的性能,这样才能够保证开发出来的软件能够全部发挥硬件的性能. 软件定义基础架构,软件定义存储,软件定义存储.目前,用软件定义超融合的方式替代专用服务器.专用网络.专用存储设备等传统基础架构的方法,已经成为了行业的热点.英特尔系统架构师朱海峰先生曾在某超融合大会上公开表示,未来的大型数据中心的建设,将采用标准X86硬件构建作为整个数据中心的基础架构,通过软件厂商比较强的软件