HDD故障データの統計分析についての議論をふわっと振り返る

ここ数年、HDDの統計データの分析結果を出して定期的に話題を振りまいていたBackBlazeが、元データの一部を公開しました。

Hard Drive Test Data - Determining Failure Rates and More

それを使った分析なんかが盛り上がっていたりして、

[R言語][統計]ハードディスクの寿命分布を比較 - gepulog

いいなーと思いつつ、とーけいのことよく分からない私はこれまでの話題を紹介してお茶を濁そうと思います。

と言って、これもまじめに議論を追ったわけじゃなくて、これネット上でよく見かけるなーくらいのものをまとめただけなので、話半分で読んでいただければ。

Google(2007)

大規模な運用データを用いてHDDの故障について分析したおそらく初めの論文は、2007年、第5回のUSENIX ConferenceにGoogleが出したものだと思われます。当時の情報を追いきれていないですが、少なくとも2つの論文が出ています。

ひとつは、今日に至るまでよく引用されている、故障傾向を分析した論文です。

Pinheiro, Eduardo, Wolf-Dietrich Weber, and Luiz André Barroso. "Failure Trends in a Large Disk Drive Population." FAST. Vol. 7. 2007.
http://research.google.com/pubs/pub32774.html

「故障傾向を分析した論文です」というと、なにか故障に寄与する要因はこれ!みたいなのが分かったのかと思っちゃいますが、内容はその逆です。アブストにはこうあります。

Our analysis identifies several parameters from the drive’s self monitoring facility (SMART) that correlate highly with failures. Despite this high correlation, we conclude that mod- els based on SMART parameters alone are unlikely to be useful for predicting individual drive failures. Surprisingly, we found that temperature and activity levels were much less correlated with drive failures than previously reported.

  • SMARTと故障率には相関関係が見られるが、いつ死ぬかという予測にSMARTを使うことはできなそう
  • 温度と故障率、ディスク負荷と故障率に相関関係はなさそう

えー!と拍子抜けしてしまいます。当然ながらこの結果は、(当時はそんなことばは有名ではなかったと思いますが)データサイエンティストの分析欲をむずむずさせるには十分なもので、今日に至るまで温度やディスク負荷というのは論点のひとつになっています。

もうひとつは、ベストポスター賞を獲ったものです。

5th USENIX Conference on File and Storage Technologies – Abstract
https://www.usenix.org/legacy/events/fast07/tech/schroeder.html

The mean time to failure (MTTF) of those drives, as specified in their datasheets, ranges from 1,000,000 to 1,500,000 hours, suggesting a nominal annual failure rate of at most 0.88%.

We find that in the field, annual disk replacement rates typically exceed 1%, with 2-4% common and up to 13% observed on some systems. This suggests that field replacement is a fairly different process than one might predict based on datasheet MTTF.

これは要は「データシートに書いてある故障率だいぶサバ読んでない? うちの記録データ的にはもっと高いんですけど?」という内容だったようです。なんか地味な感じしますけど、これがベストポスターってことは、きっとみんな心の底では「このデータシートおかしくない?」と思ってたんでしょうね。

Microsoft(2010)

2010年には、上の結果に真っ向からぶつかる分析結果をマイクロソフトが出します。

Sankar, Sriram, et al. "Datacenter scale evaluation of the impact of temperature on hard disk drive failures." ACM Transactions on Storage (TOS) 9.2 (2013): 6.
http://www.cs.virginia.edu/~gurumurthi/papers/acmtos13.pdf

We specifically establish correlation between temperatures and failures observed at different location granularities: a) in side drive locations in a server chassis, b) across server locations in a rack and c) a cross multiple racks in a data center

温度っていっても、データセンタ内の位置・ラック内の位置・サーバの内部の位置によって違うよね、その辺を分類して分析してみるとちゃんと相関あったよ、と。Googleさん、その分析は大雑把すぎませんか?というさや当てのように見えなくもないです。

ちなみに、ディスク負荷についてはあんまり有意ではない、と言ってます。

We also explore work load impacts on temperature and disk failures and show that the impact of work load is not significant

ということで、より詳細に分析すればどうやら結果が出そうだ、という希望が見えてきます。

が、詳細とはいっても、GoogleMicrosoftも、HDDのメーカーや型番といった情報には触れていないようです(私が見つけられなかっただけかもしれません)。

BackBlaze(2014)

そこに颯爽と登場するのがBackBlazeです。

BackBlazeは、これまでなんとなくタブーっぽくなっていた、メーカーごとの故障率とかモデルごとの故障率といったデータを出し始めます。某S社の故障率がずば抜けて高いという結果を見て、世界中から「やっぱりかー!」というため息とも悲鳴ともとれない声が漏れ聞こえてくるかのようでした。(これ、某S社には怒られなかったんでしょうか...)

What Hard Drive Should I Buy?
https://www.backblaze.com/blog/what-hard-drive-should-i-buy/

その後も温度論争に真っ向から挑む記事を出したりと(この結果はけっこう面白かったです。メーカーによって好ましい温度が違うっぽく見える)、HDD故障に関する話題を盛り上げ続けて今日に至ります。

Hard Drive Temperature - Does It Matter?
https://www.backblaze.com/blog/hard-drive-temperature-does-it-matter/

ちなみに、今回公開された中には温度とかディスク負荷のデータはなかったので、その辺はまだ検証できないままですね。

そもそも

でも、そもそも故障とはなんなのでしょうか。なんか哲学的ですけど。

テクニカルな解説はWikipediaに譲りますが、「故障している」のと「故障していると判定される」というのは似てるけど別の話な気がします。完全に故障してるHDDもあれば、まだ動けるのに故障とみなされて取り除かれるHDDも、逆に故障しかけなのに「俺はまだやれるんだ!」的な感じで動き続けるHDDもあるでしょう。どの挙動を「いいHDD」とするのか、私にはよく分かりません。

詳しい方、教えてください。

感想

HDDややこしい! むずい!

疲れちゃいますね。こんなときはFDDを見て心の平穏を取り戻しましょう。貼っておきますね。