一个帖子:硬盘可靠性排行背后的真实故事
Paul Alcorn 发表于:14年01月28日 11:46 [翻译] 存储在线
日前,国外云备份服务公司Backblaze根据他们手中的历史数据,对不同品牌、容量的机械硬盘进行了一番对比,得出结论称无论故障率还是寿命,日立最好,西数其次,希捷第三,同时还宣称企业级硬盘反而不如消费级产品更可靠。
这自然引发了极大的争论,那么各大硬盘品牌真的可以如此排序么?是否能公正地反映客观情况?国外科技媒体TweakTown撰文详谈了他们的看法,这里我们原文编译出来和大家分享。至于他们的结论,那是相当的明显……
我们在本文中详细记录了Backblaze在提供可信的硬盘可靠性数据方面的失败尝试。阅读之后你就了解为什么你根本不用在意这些测试结果了。
企业都有一个有趣的倾向,即无所不用其极地为公司做宣传。作为一个存储类产品的作者,我需要随时关注最新的消息。在一周的时间里我看到有些公司每天都在吵闹着要求获取关注。他们的尝试包罗万象,有的平凡、有的热闹、有的甚至惹人生疑。有些公司会做任何事情以使自己从成千上万其他公司的喧嚣中脱颖而出。
就个人而言,我很高兴我并没有被分配任务去宣传某些公司或其产品。在过去的几天里我们观察到,Backblaze的新闻头条铺天盖地。
Backblaze借助其硬盘可靠性测试的博客,已经在本周占据了所有高科技网站的首页。Backblaze在不断更新他们的博客,并努力为用户提供每月不到5美元的无限在线备份服务。你读到这条新闻的时候就使得Backblaze做这一切都值得了——他们已经将信息传达了出去。
这条最新的帖子起源于他们讨论硬盘能用多久的博客,测试的结果是企业级硬盘还不如消费级硬盘可靠。毫无疑问,我们可以确信这种测试方法存在漏洞,而且漏洞大的足以开辆卡车通过了。然而,博客标题诱导公众关注更详细的硬盘故障率,而Backblaze总结成了最新的帖子: “我应该买什么硬盘?”
然而Backblaze或许清楚这个测试结果,但他们并没有说明测试的环境,也没有很好地解释其测试数据对于典型消费者没有过多价值的原因。既然大家的目的都是为了获取硬盘可靠性数据,那就应当对一些有疑义的测试进行进一步调查。
Backblaze采用了开源方法在其存储架构上分享数据,甚至分享原理图,以便其用户建立自己的Backblaze服务器。这使得我们有了进一步探究其测试数据的依据。
在2011年硬盘危机时期阅读Backblaze发布的有关于硬盘方面的博客是很有帮助的,当时他们竭尽全力以符合成本效益的方式维持运营。很遗憾,这种敬业的态度并没有在其评测硬盘可靠性排名的测试中体现出来。更严重的是,目前有很多科技网站已经在其网站转载了这项测试结果,并且声称这个测试结果可以作为评估硬盘可靠性的最终标准。
Backblaze使用很好看的图表发布了测试结果,并评选出了获胜者。从该图表看,日立和西部数据的硬盘可靠性最高,分居前两位,而希捷以较大劣势位于第三位。
然而,在这种情况下,获胜者并不是真正意义上的获胜。让我们发动卡车,穿过测试中的巨大漏洞,并阐述为何这份结果不应该影响消费者的购买信心。
硬盘采购
Backblaze毫不掩饰地尽可能采购最为廉价的消费级硬盘,以存储客户的数据。他们的目标是提供尽可能便宜的存储服务,为客户节约资金。他们并非不分青红皂白地使用这些硬盘,每种硬盘型号均须经过短期测试,以确保它能够满足上述目标。将这些廉价的硬盘和各种RAID以及复制方案结合在一起,就能够安全地存储数据。
在2011年10月份发生的泰国洪灾期间,Backblaze不得不全力以赴,希望能够采购到足够的硬盘以维持运营。硬盘价格暴涨,但仍然供不应求,于是他们直接走上街头四处采购,用这种极端的方式来控制损失。他们将这种做法称为“硬盘包收(drive farming)”。
首先,他们发现购买外置硬盘非常经济有效。市场情况说明,外置硬盘通常比内置台式机硬盘便宜。外置硬盘的外壳比较小,一般通过USB或eSATA连接。于是,Backblaze采购外置硬盘,去掉外壳,并把这个过程亲切地称为“剥壳”。就像剥玉米一样,他们将外壳拆下来,就能够得到可用的硬盘。
起初,他们到Fry's和Costco疯狂抢购,直到部分员工最终被这些商店禁止继续购买硬盘。于是他们进一步扩大范围,召集朋友和家人帮忙继续采购硬盘,甚至制定出复杂的硬盘采购方案,以避开各种硬盘采购限制。
当这种方法开始在局部地区失去效力时,他们甚至考虑从雷德(Ryder)汽车租赁公司租来卡车,到全国各地沿途收购硬盘。
最终他们采用了众包(crowdsourcing)的方式。只要在Costco销售硬盘时购买到产品并发送给公司,Backblaze便为他们额外提供每块硬盘5美元的奖金 。
这种做法显示出惊人的创造力,其目的也是为客户实现最大的利益,值得称道。不幸的是,这种做法没有很好地创建出一个用于判断硬盘可靠性的稳定的样品池。Backblaze也承认样品池中的部分硬盘为返修产品(RMA)。
Backblaze的故障大多数发生在这些硬盘投入使用的最初几周时间里,若考虑一下它的硬盘采购方法,便能够理解为什么是这种情况。一般的故障涉及到大量的存储设备,故障最有可能发生在产品生命周期的初期和末期阶段,但可以断言的是,他们的硬盘采购方法导致了其结果。
很有趣的是,Backblaze获得了500万美元的风险投资。不久,Costco规定每人限购买五块外置硬盘。即便有了大规模的投资,Backblaze仍然采用其老办法来采购硬盘。正如他们自己所说,积习难改。
不幸的是,他们采购的这些硬盘被纳入了故障率的计算之中。
机箱
Backblaze还把自己的创造力延伸到了服务器机架领域。他们设计了专门的storage pod enclosures,并在网络上共享其原理图。这种值得称赞的信息共享做法也有助于解读他们的“故障率”数据。
上述storage pod目前已升级到3.0版本,前两个版本进行升级都是为了解决大量的设计问题,其中最显著的问题就是震动。
震动是硬盘的大敌,会导致各种组件出现严重的磨损,甚至会影响性能。一般的台式机硬盘在稳定的环境中基本不存在震动,因此在设计的时候抗震性也稍差。企业级硬盘设计的主要差别之一就是抗震技术。抗震技术使得硬盘能够抵抗服务器机箱和机架的磨损,并良好地运行。
一个机箱中安装太多的硬盘会增大震动量。Backblaze在每个机箱中安装了45块硬盘,以便将存储密度最大化。硬盘最初都是遭受服务器内部邻近硬盘震动的影响,而一旦放置于机架中,硬盘还会遭受其它服务器震动的影响。这样就会产生震动的“完美风暴”,使用消费级硬盘就会导致可怕的故障率,Backblaze的数据便是最好的证明。
难怪Backblaze不断地改善其机箱,以便更好地抗震:早期型号仅采用尼龙垫片减震。进一步分析其数据,我们可以发现,最早投入使用的硬盘,其故障率最高。原因很简单:这些硬盘安装在1.0版本的存储机箱里,震动问题非常严重。
不幸的是,这些硬盘绝大部分来自于希捷的产品线。由于机箱问题导致这些硬盘的年故障率高达25.4%,如果真是这样,那么希捷就不用做生意了。
Backblaze披露的故障率数据没有考虑大量的信息。将所有硬盘按照不同的机箱版本进行分组,才是负责任的传递信息方法。我们确信,较早的硬盘没有安装在最好的机箱中,3.0版本的机箱直到2013年2月份才推出。
环境
影响硬盘寿命的另外一个因素是温度。温度和湿度的变化可对硬盘寿命造成影响。通读Backblaze博客,有一条关于服务器机架温度的评论吸引了我的注意;
……过去三年,我们观察到:1)机架顶部pod中的硬盘温度相比较低层硬盘平均高出三度;2)Pod中心的硬盘温度相比边界硬盘高出五度;3)各pod无需所有六部风扇——只用两部风扇,硬盘便可维持建议的运行温度;4)热量与硬盘故障无关(至少在storage pod中是这样)。
Backblaze声称硬盘温度不影响硬盘寿命。这与硬盘制造商等许多其他人的观察相悖。硬盘运行需保持在一定的温度范围内是有原因的。尽管Backblaze的硬盘可能在这些范围之内,但若温度不同则无法直接进行比较,不在温度范围之内的硬盘就更不用说了。
再次重申,缺乏有针对性的信息就不可能做出真实的结论,测试环境的参差不齐毁掉了Backblaze的数据。
工作负载
每块硬盘均经过精心设计,以便在目标使用环境中提供严格规定的服务水平。这种指导原则不仅决定着硬盘的设计,而且还决定着采用的组件类型。最经济有效的硬盘设计目的是在目标环境中提供适当的性能和寿命,仅此而已。采用超出硬盘工作负载需求的强大组件是一种浪费,并且会增加不必要的成本。这种设计效率还意味着硬盘在非目标环境下更加容易发生故障。
Backblaze始终在市场上采购最便宜的硬盘,而不管其额定的工作负载,然后将它们应用于最严酷的环境之中,这样势必会破坏硬盘,导致故障率比自然状态下更高。这只能说明这些硬盘的工程设计精准地满足既定目的,仅此而已。
另外一个问题就是:即使工作负载不同,也强行在硬盘之间进行直接的比较。实际上,若没有实施同样的工作负载,则无法将同型号的硬盘进行比较,而比较不同的型号和制造商更是荒谬绝伦。没有办法计算硬盘旋转了多少次,也没有办法计算硬盘处理了多少次不同类型的数据请求。
随机数据需要硬盘磁头更多的运动,因此会给精密的硬盘磁头造成更多的磨损。旋转加速减速,进入以及从各种休眠状态恢复,时间长了也会给硬盘造成不同程度的磨损。工作负载的分配没有真正的逻辑性,更不用说环境了,所以直接比较硬盘是行不通的。
只有一件事是确定的,那就是:硬盘处理的工作负载远远超过了它们的设计极限。
最终思考
Backblaze的数据不应该影响任何消费者的购买决策,无论他们购买什么类型的硬盘。无数的变量,以及缺少证明文件,导致其结果不可靠。即使对于获胜者来说,测试结果也是不利的,故障率远远超出了实际的观察情况。大家应该置疑,若在实际的情形中质保返修率如此高,那么这些公司怎么能够生存下来?
我们论及了Backblaze比较方法的一些最显而易见的漏洞,但实际上还有更多的漏洞存在,比如样本数量。每种型号的硬盘数量各不相同,而部分坏的批次可能进入了样本池,进一步扭曲了评测数据。
最好的例子来自于他们自己的博客帖子“企业级硬盘:事实还是虚构?”这篇博客帖子显示,Backblaze将可能是同一批次采购的368块企业级硬盘与14719块消费级硬盘进行了比较。除了坏的批次可能扭曲了测试数据之外,Backblaze还承认他们将硬盘用于不同的机箱、温度和工作负载。这样导致他们的数据基本上是毫无价值的比较,不过配上一个引人注目的标题之后,这些数据确实达到了哗众取宠的目的。
我十分欣赏Backblaze的发展历程。他们决心为客户提供卓越的价值,并为此目标而竭尽全力。他们的博客帖子详细说明了他们采取的各种极端措施,读起来真是引人入胜,我相信他们享受挑战。他们的storage pod设计新颖,经过了广泛的现场测试和改善,能够提供有吸引力的每GB价格。
但是,他们用简单的图表进行虚假的展示,这样发布的数据刺激到了坚守原则的我。
硬盘制造商在研发方面花费了数十亿美元,他们的实验室就是为了打造和测量其存储解决方案的可靠性和耐用性。Backblaze的环境则刚好相反。我做梦都想不到能够在这样差的条件下开展硬盘的可靠性研究和比较。
很难相信他们开展策划、召集会议、制定流程,通过各种可笑的途径采购最便宜的硬盘,把它们安装在各种不同(有时还存在缺陷)的机箱里,堆垛起来,让它们来应付完全不同的工作负载和环境条件……而做这些都是为了测试硬盘的可靠性。
这当然不是目的,但有些人会这样解读这些数据。在我看来,媒体宣传的魅力战胜了常识,Backblaze发布了这些数据,用花哨的标题吸引了众多眼球。