大存储厂商一直都在强调磁盘可靠性对于整个存储系统的重要性,并用各种参数来说明自己的磁盘产品的高可靠性。但事实上,相比于用户对于可靠性的需求来说,目前存储系统的可靠性技术发展已经滞后了,并且,评价可靠性的各种参数也不再适应当今用户的需求了。因此,我们需要寻找新的标准来衡量磁盘的可靠性和使用年限。
据统计,有20%到25%的存储系统故障是由于磁盘问题所引起的,而且,磁盘驱动器的实际故障率是厂商们声称的15倍甚至更高,用户更换磁盘的频率也远高于厂商的统计数字。上面这些统计数字让我们不得不更重视磁盘的可靠性,因此,用户在设计可靠性存储系统时应综合考虑更多的因素,如选择更可靠的磁盘类型和支撑架、使用冗余技术来应付组件故障、给不同的存储子系统配备独立的连接等。
在存储领域,MTBF(平均 无故障时间,mean time between failures)和AFR(年平均故障率,average failure rate)一直都是存储厂商们自我评价的标准,同时也是用户在选购时非常关注的重要参数。
那么,为什么存储厂商和用户都会如此地关注这两个参数呢?从存储厂商的角度来看,他们希望用这样的数字来表征技术的发展。现在,厂商们纷纷宣称自己的磁盘产品的MTBF已经达到了100万至150万小时的水平,相当于114年到170年,这样的年限甚至已经远超过了一般人的寿命。
MTBF是用来衡量存储产品的可靠性指标,具体来说,是指相邻两次故障之间的平均工作时间。“但现在,MTBF这个参数已经变得越来越没有意义了,因为用户越来越弄不清楚这个数字究竟代表了什么。”Data Mobility的分析师Robin Harris说:“存储厂商们都在宣称自己的磁盘产品的平均无故障时间已经达到了100万小时,甚至更长的时间,但事实上,磁盘根本就坚持不了那么久,这让很多IT主管以及数据中心中的管理员们都感到十分困惑。”
“这些被‘冠名’为MTBF或者是AFR的数字真的能够帮助用户衡量磁盘驱动器的好坏吗?”曾经是EMC员工,现在是一家咨询公司IT顾问的Steve Smith对此提出了自己的质疑。
其实,甚至连存储厂商NetApp自己也承认了这一点。当有用户在分析机构Data Mobility所运营的StorageMojo博客上发表了一篇公开信来抗议实际的平均无故障率时间要比厂商标称的高出好几倍时,NetApp的回复是:大部分有经验的用户都知道,存储领域的磁盘故障率跟汽车厂商所标称的每公里耗油数的定义有些类似。也就是说,关于磁盘故障率的问题,就好比是开同样的车、使用相同的汽油,但是跑的公里数却不一样,在平均无故障时间上出现的偏差在很大程度上是因为用户没有在最佳的环境中配置和使用磁盘。很明显,这样的解释不免有些牵强。
.
MTBF已经过时
最近,很多研究机构对MTBF和AFR等衡量存储特性的参数进行了新一轮的研究,研究结果可以用这样的一句话来总结:在磁盘的可靠性和故障率的问题上,用户和存储厂商显然是行驶在了不同的车道上。
“事实上,MTBF确实是经过了实际的压力测试和科学的统计学推断而综合得出的数据。但是,大家不要忘了,当存储厂商们宣布自己的磁盘产品的MTBF为30万小时的时候,他们实际上是在说,在经历测试的所有磁盘中,经过30万小时的运行后,只有一半出现了故障。”Harris表示,“如果是这样的话,MTBF似乎对于某个磁盘驱动器能够使用多久并没有什么参考价值。也就是说,MTBF根本无法准确地表达出某个磁盘真实的故障率分布。”
“MTBF参数就好比是某一地区女性的平均身高这类统计数据一样,我们并不知道这个身高平均值的基数以及具体某个人的身高。其实,当初MTBF成为了衡量存储性能的标准参数的原因也就在于,人们觉得其在表示了磁盘可靠性高低的同时,不用去了解那些让人弄不懂的具体细节。”Smith表示。
“但是,在今天,MTBF这种简化了的参数已经不能再适应用户的需求了。”Smith补充说。Gartner的分析师Stan Zaffos也同意Smith的观点。不过,他也表示,MTBF还是能够比较准确地反映出存储厂商的技术发展水平,只不过这个参数对于用户来说理解起来比较困难,或者说这个数字对于用户来说意义已经没有以前那么大了。“要想真正地理解MTBF并不是一件容易的事情,它需要IT管理者有很多工程方面的经验和概率统计学方面的知识。”Zaffos补充说。
不吻合的三大原因
“现在,存储业界已经逐渐开始使用AFR来代替MTBF,以达到让用户更容易理解的目的。”Harris介绍说。同时,Carnegie Mellon研究中心的Bianca Schroeder也表示:“用户或许应该更想知道,在某一年中有多少比例的磁盘会出现故障。”
不过,据Carnegie Mellon的一项调查研究结果显示,磁盘的更换率也比存储厂商所提供的AFR数值高很多。厂商们提供的资料显示,AFR一般在0.58%到0.88%之间,但调查结果却表明,实际的年平均磁盘更换率超过了1%,一般来说在2%到4%之间,更高的甚至达到了13%。“在这里需要强调的是,我们在此次调查中搜集了许多大型存储系统更换磁盘的数据,其中涉及了10万个左右的SCSI、Fiber Channel和SATA磁盘,因此数据的可靠性还是有所保障的。”Schroeder补充说。
Schroeder还介绍说,研究发现,磁盘的更换率还会随着其使用时间而逐步升高,尤其是当磁盘使用了5年以后,磁盘驱动器通常就会开始老化。这项发现与很多用户的普遍看法非常吻合,但同时却与厂商所提供的AFR出现了很大程度上的不吻合。
对于出现这种不吻合的一种解释是,此项研究结果关注的是更换了多少磁盘,而AFR描述的是有多少磁盘预计会出现故障。“的确,故障与更换并不能划等号。举个例子,用户可能会在磁盘稍有异常的情况下就将其更换掉了,而这块磁盘其实仍然还可以使用。”Schroeder也解释说。
此外,出现这种不吻合的第二个原因可能是,存储厂商的测试环境一般都是十分理想的,而用户真正的使用环境通常就无法达到这样的水平。“用户在使用磁盘时,很多情况都可能会导致磁盘的损坏,比如振动、电涌、尘土和湿度等。”Zaffos介绍说。
而第三个原因可能就在于,存储厂商和用户对于故障的定义并不同。比如,当磁盘驱动器厂商拿到一块返厂的磁盘时,他们会把磁盘插进测试设备中,如果发现没有问题,就会贴上“no trouble found”或者“NTF”的标签。事实上,据统计,有20%到30%的返厂磁盘上都被贴上了“no trouble found”的标签。但如果用户拿一个这样的磁盘插进自己的服务器中,就会发现根本不能用。那么,对于用户来说,它就还是一块需要更换的坏磁盘。当然,客观地说,在对磁盘的好与坏的判断上,厂商和用户都没有原则上的错误。
这就正如Google的一项研究发现,磁盘的故障在很多时候是由于匹配不当所造成的,比如磁盘驱动器与控制器的不匹配。有的时候,用户在认为是坏了的磁盘驱动器中更换一个控制器后,就会发现仍然可以使用。据说,在Google的研究过程中,还发生了一件很有意思的事情:有一块在用户那里无论怎样都不能使用了的磁盘,在测试人员手中却始终显示一切正常。
伊利诺斯州立大学的一项研究也证实了这个发现。在分析了39000个商业存储系统和180万个磁盘错误记录后,得出了这样的结论:虽然存储系统出现的故障有20%到25%是由于磁盘问题所引起的,但系统的其他部分,比如物理连接或是协议栈等也是引起磁盘问题的重要原因——物理连接问题导致的故障占到了27%~68%;而协议栈问题导致的故障占到了5%~10%。
.
理论上的MTDL
另一个从MTBF衍生而来的参数是MTDL(平均数据丢失时间,mean time to data loss),MTDL是指一个组件可能失败使数据不能访问的时间,其主要是存储子系统厂商所使用的参数,磁盘驱动器厂商一般不会涉及,因为这个参数主要考虑的是所使用磁盘的数量、弹性、重建时间以及系统冗余的数量和类型。
Harris认为,MTDL是个相对来说更有用的数字,不过也只是停留在了理论阶段。实际上,伊利诺斯州立大学的一项研究同样也对这个参数提出了质疑。研究发现,存储子系统的故障表现出了很强的相关性,也就是说,在某一次故障发生以后,发生同样故障的几率要增大很多,且故障发生的时间也十分接近。
“而平均数据丢失时间的前提就是故障的随机不相关性。但事实上,故障却并不是随机的,且故障之间是高度相关的,因此理论计算结果也并不能与实际相吻合。”Harris说。
也许是因为磁盘驱动器是物理设备,既然是物理设备就一定会老化,也自然就会出现这种实际与理论上的不吻合。事实上,据Google和Carnegie Mellon的一项联合调研表明,一旦磁盘驱动器使用超过了三年,AFR的值就会开始增大。
“其实,使用过大容量磁盘的用户早就已经有这样的经验了。”Harris说,“如果用户只购买了200个磁盘,那么三年后,AFR这个数字对于他们来说就非常重要了,因为这个时候就要开始考虑更换磁盘了。”当然,是否真的要更换还取决于用户对于数据的重视程度和对于系统的稳定性要求,以及用户自身备份系统的好坏。
寻找新标准
回到问题的本质,存储厂商该如何告诉用户他们所购买的磁盘究竟能够用多久?很多业内人士认为,MTBF还没有被抛弃的原因就在于,还没有找到能够替代它的参数。“其实,现在大多数用户都希望能有一种新的评价标准来表征存储产品的可靠性,但是要想找到这种新标准却并不容易。”Schroeder说。Smith也同意这个观点,不过,他也表示,总会找到一种方式可以用来区别不同磁盘驱动器的可靠性程度。
此外,Smith还认为,其实存储厂商们拥有更“确切”的数字,只是他们不愿意公布出来。“事实上,对于该如何更好地评价存储产品的可靠性,最为了解的莫过于大型磁盘阵列厂商了。但是,他们却不愿意更清楚地告诉用户,因为这样就会减少他们在‘解释这个数字’的过程中所创造出来的附加价值。”Smith说。
当然,还有一种办法就是使用实测的数据。“但是,这样也很麻烦,有研究发现,磁盘的使用时间越长,故障率就会越高。所以,从那些只使用了一年的磁盘上获得的统计数据也并不能应用到使用了多年的磁盘上。”Schroeder说。
“也许,我们应该测出磁盘驱动器每年的AFR,但即使是这样,仍然有很多因素会影响到这个数据的真实可靠性,如运行状况和工作负载等。”Schroeder补充说。的确,很多影响磁盘可靠性的因素使得存储厂商们也很难建立起符合现实的模型。
不过,Schroeder也同意Smith的观点,存储厂商们应该、也有责任提供更多的数据让用户更好地了解磁盘的真实可靠性,如实际的磁盘更换率和潜在的扇区错误等信息。目前,Carnegie Mellon就正在与Usenix合作建立一个记录不同种类、不同使用年数和不同容量的磁盘的故障信息数据库。
此外,Smith还介绍说,除了磁盘的可靠性以外,对用户影响最大的莫过于坏磁盘了,因为某个磁盘的故障可能还会牵连到其他磁盘。“这也就是为什么对磁盘的安装做物理分析非常重要的原因,因为这样会找到系统中的一些代码缺陷或是一些坏的部件。”Smith说,“当然,拥有成熟的服务和技术支持来跟踪系统运行并查找错误也非常重要。”(主要内容译自《Computerworld》)
.
评论
谁来保障可靠性?
110万小时、114年,面对这些似乎让人有些不敢相信的数字,用户是不是可以得出这样的结论——磁盘驱动器的可靠性已经很强,因此完全可以不用再在乎MTBF和AFR之类的数字了?那么,在购买磁盘时,MTBF和AFR等参数还是影响用户选购的关键因素吗?
其实,已经身经百战的用户们也明白这些存储产品的MTBF有些过高了,这些数字对于他们来说已经不那么重要了,甚至他们已经根本不在乎了。比如,两个磁盘厂商所提供的磁盘产品的MTBF相差10%,用户会觉得这是很大的差别吗?似乎100万小时与110万小时已经没有什么本质的区别了。
与此同时,用户们也开始觉得,让存储系统更可靠的途径似乎只有加固整个系统的架构,而并不是寄希望于磁盘。除非存储厂商们可以用事实证明他们的磁盘是值得信赖的,磁盘的可靠性才能真正地成为保障存储系统的关键。
但是,现在的情况是,用户对磁盘驱动器的可靠性的需求增长越来越快,但存储厂商却并不能完全达到用户的需求。25年前,2万小时的MTBF就非常不错了,而今天,虽然这个数字已经达到了百万小时,但似乎已经失去了原有的意义。因为,相比磁盘可靠性的这种进步,用户遇到的问题似乎更多,并且这一差距还越拉越大
阅读(816) | 评论(0) | 转发(0) |