去年的一天,有位互联网公司的朋友向我咨询了一个问题:他们目前服务器大部分都是戴尔PowerEdgeR510和R720xd,现在需要采购硬盘用于数据备份。每块硬盘平均每天会写入不到1TB的数据。这种场景下,每天都会有大量的数据写入、读取,对盘的寿命影响大吗?
由于是企业级应用,按照365天来计算,硬盘的全年的读写负载大约在360TB以内,我认为原厂配件中的Nearline硬盘就比较合适。那么这一结论是怎么得出呢?
案例2:视频监控存储可以用“云盘”吗?
某公司接到用户一个视频监控存储的项目,一开始按照NearlineSATA企业级硬盘计算了成本,发现价格与竞争对手相比不占优势。由于对方使用了价格相对较低的监控专用硬盘,该公司于是考虑是否可以采用也属于企业级但成本更低的“云盘”(即希捷ConstellationCS)?
案例3:便宜的代价——云盘故障率我曾经听说国内某互联网公司使用过一批“云盘”,但后来遇到故障率较高。“云盘”的价格仅比桌面硬盘稍高,在多种细分的低转速(7200rpm及以下)企业级硬盘中具有成本优势。那么,它的故障率在什么范围内是正常的?
企业级vs.桌面:性能、可靠性差距
引用自一份来自Intel的文档《Enterprise-classversusDesktopclassHardDrives》,2008年4月
上图是一份比较早的对比资料,不过这些年来机械硬盘技术发展不算快,所以仍有一定参考价值。其中“Enterprise”在这里代指15K高转速企业级硬盘;而7200转企业级硬盘衍生自“Desktop”,所以性能方面指标是接近的。
1:振动对硬盘的影响及防范
15K硬盘能够达到21rad/sec/sec,这里的Radian应该是一种弧度单位,我不是这方面的专家,就不不展开讨论了。而桌面硬盘该指标只有5-12
正如有位专家所说的,如果把硬盘固定在一个足够稳定的基座上,它就不会受到自身以及外界产生振动的影响,能够发挥出最佳性能和寿命。但真实环境往往不是如此,在存储服务器/磁盘阵列机箱中通常会有多块硬盘,同时工作时难免会产生共振现象。这里面涉及的因素主要有硬盘的转速、数量以及箱体结构设计。
许多朋友应该都知道,磁盘阵列的空箱重量往往要比同等尺寸的服务器大不少,采用较厚的钢板能够“吸收”一部分振动。尽管不只一家厂商号称可以混插不同转速的硬盘,但实际上都不推荐这样做。
超标的振动会影响磁头定位,导致硬盘性能下降乃至寿命降低。抗旋转振动大致就是伺服电路根据传感器信息对振动进行相应的补偿,10K、15K高转速硬盘由于自身产生的振动大一些,因此在设计上“耐受力”也更强。如上表,在旋转振动20rad/sec/sec的条件下,15K硬盘IOPS只有少量下降;而桌面(7200转)硬盘的性能则下降了10倍以上,可见磁头定位困难的程度。
下面一项“双工模式”,SAS支持全双工,SATA是半双工,这就在于SCSI和ATA协议之间的差别。SAS硬盘提供双端口可同时连接到2个控制器,实现故障切换。关于可变扇区大小,我们在后文中会有讨论。
2:可靠性前提条件和NL硬盘的由来
这里容易被忽视的还有MTBF的先决条件。高转速企业级硬盘是在45℃的环境温度下,7x24小时100%工作负载;而桌面硬盘则是25℃环境,5x8小时10-20%工作负载。
同样为7200转速,但定位企业级应用的Nearline(近线)硬盘比桌面硬盘的可靠性要强不少。首先是MTBF和AFR(平均故障率),目前Nearline盘大都能达到140-200万小时MTBF,并且这个数字是在40℃、7x24小时全年连续开机条件下得出。
注:我们会在后文中介绍MTBF与AFR的换算关系。
当然,10K/15K高转速硬盘在质保期内没有这些限制,所以说它们的等级不同,单盘容量、单位容量的价格也有着显著差距。
3:环境规格——温湿度范围
这里引用一份HGST硬盘资料中的环境规格。其中有两个类似梯形(右边不是直线)嵌套在一起,大的范围是硬盘的非操作温湿度范围,而里面的小块区域则是工作温湿度。可以看出在5-31℃之间可以支持90%相对湿度,而到60℃时只能支持到10%的湿度了。
只有少数的低转速(10K以下)企业级硬盘带有湿度传感器,本文中包括归档、ENAS和EnterpriseCapacity三个针对数据中心的系列。
4:MTBF不是虚标:换算出年均故障率
可用性一项,除了Video3.5是AFR数值之外,其它列出的都是MTBF。利用MTBF来计算AFR的公式如下:
年平均故障率AFR=1/(MTBF/365/24)
MTBF看上去很高,前面表格中最长的200万小时(8TB型号,目前希捷6TB及以下Nearline硬盘为140万小时)折合228年,最短的75万小时也有85年,其实它们的设计寿命都没有那么长(通常为8-10年),从温彻斯特硬盘发明到现在也没有这么多年。这些可靠性不是针对单一硬盘,而是根据质保期内大量样本计算和统计出来的。记得十多年前,我当时就职的公司有一位孙老师,她主持的10万小时PCMTBF测试就是拿若干套设备集中进行的。根据上面公式,EnterpriseCapacity的AFR计算得出0.44%,也就是说100块盘每年平均损坏0.44块,如果10,000块盘就是44块。
读写负载、使用率和支持盘位数量,桌面硬盘都是最低,表格中除此之外都支持7x24连续开机,并且桌面硬盘官方只建议部署1-2块。也就是说它没有抗旋转振动方面的优化,如果您实际使用3块盘以上做RAID,可能会遇到性能降低、寿命下降的问题。
EnterpriseCapacity(ES)的年读写负载在这里最高为550TB,ENAS为300TB,余下4款都是180TB——也比桌面硬盘的55TB高不少。或许这些数字还不够直观,后面我们还会用它们简单计算出平均每天、每秒的读写负载。
关于硬盘转速,两款7200转/分钟的性能相对较好;希捷目前主流的桌面硬盘应该都是7200转,早期低转速的BarracudaLP应该已经退出市场;Video3.5由原来的PipelineHD发展而来,一直是5900转;监控盘由7200转的SV35发展而来,不过现在4TB及以下应该都降到5900转,5-8TB型号为7200转。
5:视频监控写入负载是否会超标
如果超出建议负载较多其故障率会高于标称的AFR(监控盘为0.88%),而且EnterpriseCapacity(ES)的AFR设计标准本身就低至0.44(8TB)~0.63%,可以降低后期维护的成本和数据丢失风险。
至于“云盘”,其平均故障率监控盘还要高些,只要不在意也可以用吧
当然这里面还有成本的因素,EnterpriseCapacity的公开报价是7200转盘里面比较高的。由于视频监控在国内的市场巨大,像海康、大华这样的厂商在监控硬盘上估计有较大的议价能力。
6:盘位数支持与箱体结构
要求在每个机箱支持的盘位数上,最新资料4TB及以上写的都是“8+”,在视频监控环境中,非RAID应用顺序(I/O)使用模型下盘数不限。(取决于箱体结构)而监控硬盘在RAID应用中建议≤16盘位。究其原因,如果做了RAID,硬盘磁头容易按照同样的轨迹来运动。这时共振的影响应该会有所加大。
根据我的理解,ENAS系列虽然抗旋转振动能力与EnterpriseCapacity相同,但由于其主要定位中小型设备,只建议配置不超过16盘位,对机箱结构要求相应放松。经济型ConstellationCS主要针对互联网等大型分布式环境,其中定制系统相对偏多,需要适应各种不同需求,因此抗旋转振动也达到了12.5rad/sec/sec。
7:不可恢复读错误:
NL盘表现居中不可恢复读错误可以理解为磁介质上静态数据损坏的比率,由于这个数值比较固定,随着单盘容量增大在一块盘上遇到错误的几率也越来越高。我们注意到,EnterpriseCapacity和ENAS的该项指标比10K、15K高转速SAS硬盘高一个数量级,但比桌面和其它“准企业级”硬盘还是要低一个数量级的。
对于监控硬盘,资料显示目前只有8TB型号可以达到1per10E15。由于目前桌面硬盘的容量只达到6TB,那么8TB监控盘有可能与EnterpriseCapacity出自同一平台。
由于不可恢复读错误可能在RAIDRebuild时才暴露出来,RAID卡、磁盘阵列控制器普遍设计了后台介质扫描的功能,而有些廉价视频监控设备使用的软RAID就不好说了。此外,EMC等存储厂商还使用非标准扇区(从传统512byte增大到520byte)加入校验实现容错。
8NL-SAS并不只是“假SAS”硬盘主机接口方面,7200转硬盘中只有Nearline(EnterpriseCapacity)系列具备SAS版本。除了SCSI协议的完整性之外,最重要的是提供双端口支持,在那些双控磁盘阵列中SATA驱动器还得加个转接板就不划算了。而且,也只有SAS接口硬盘才能兼容520/528这些非标准扇区大小。
至此,我们看出ENAS系列应该是由EnterpriseCapacity近线硬盘“降级”而来,它们之间的定位可以从开头表格中的组件级差别上看出来。比如:两者都使用了相对较好的高通量密度音圈磁头,而读写头和盘片ENAS为Performance而EnterpriseCapacity采用HighPerformance等级。总之结构决定性质,只是我们在本文中并不都需要深挖。
9性能增强新技术:Flash缓存、掉电保护在硬盘上添加少量闪存的固态混合硬盘(SSHD),希捷最早推出消费级产品,并于后来引入到企业级市场(只限10K高转速SAS盘)。客观地说其市场空间不大,因为在混合阵列上可以做SSD+HDD之间的分层存储,混合硬盘用于服务器也要看应用能否发挥其优势。
不过加入Flash之后带来了另外一个用途——掉电保护。我们知道早期硬盘上DRAM缓存中的数据断电就会丢失,所以对数据一致性要求高的应用通常会选择在RAID卡/阵列控制器上关闭硬盘自身的写缓存。如今则可以利用电容和盘片旋转的势能将DRAM写缓存区的数据写到闪存中。
对于没有Flash缓存的EnterpriseCapacity,希捷在最新一代8TB型号上内置了2MBNOR闪存,用于掉电时备份写缓存数据,因此可以打开WCE(WriteCacheEnable),大幅提升随机写性能——IOPS342明显超出读IOPS164(队列深度16)。
据了解,HGST企业级硬盘采用了另一种技术来达到同样的目的——开辟一小块磁道做为将随机写I/O变成顺序写入的缓冲区。
10硬盘厂商怎么说
11更多选购要点:系统设计和兼容性以上写了这么多硬盘自身的特性,其实同样的盘用在不同系统上其可靠性表现也可能会有不小的差距。
比如散热设计,我认为正规一些的服务器、存储厂商,测试每个盘位上承载最大功耗硬盘时的满负载工作温度,应该是比较基本的要求。对于一线品牌,安装各种转速硬盘时产生的线性、旋转振动值是否超标,估计也在结构方面的测试项目中。用软件仿真和实测可以做为互补,通过这些评估工作可以看出机箱、硬盘托架等有无改良空间,能够支持的硬盘范围等。
举例来说,像4U60盘位及更高密度的机箱,我看各家基本都不支持15K高转速硬盘。如果支持2.5寸10K硬盘,在这里也是不应该按经验“拍脑袋”决定的。
另一方面,从EMC、戴尔等厂商采购的硬盘,与渠道市场中的相同型号也有些区别。定制的Firmware版本只是一个表象,兼容性测试也是很重要的工作。因此大家最好还是按照系统厂商的建议来选购硬盘,如果一时贪图便宜导致数据丢失就得不偿失了。
我们建议,如果您没有条件计算读写负载,或者不确定服务器/存储机箱本身消减振动的能力,选择一款规格较高、有裕量的硬盘相对比较保险。比如本文对比中的Nearline硬盘EnterpriseCapacity(ES)系列或者其他品牌的同级产品。