質より量部門より。
あるAnonymous Coward 曰く、
Googleのデータセンターは全世界に36あると言われているが、その一部を同社のJeff Dean氏がサンフランシスコで開催された同社のI/Oカンファレンスで明らかにしてくれた(本家/.記事より)。
Dean氏は「より信頼できるハードウェアを一定数揃えるより、それより信頼性は劣るかもしれないハードウェアを2倍の数揃える方がよいと我々は考えている」と発言し、「信頼性はソフトウェアのレベルで提供するべきである」との考えを明かした。「1万台のマシンが動いているとすれば、毎日何かがダウンするに決まっている」からである。
(つづく...)
ハードウェアを当てにできないのは、新規にクラスタを稼働させるときの状況をみれば明らかだそうで、Googleのクラスタはおよそ1800台のサーバから構成されているが、稼働開始年度の典型的なケースでは、1,000件の個別のマシン障害が発生し、ハードディスクドライブの障害は何千件という単位になるそうだ。もし配電ユニットが1つダウンすることにより500~1000台のマシンが6時間ほど落ち、20台のラックが駄目になり、40~80台程のマシンがダウン毎にネットワークから消える。5台程のラックは「不安定」になり、ネットワークパケットが半分ほど消滅したりする。クラスタを再配線する必要が1回は発生し、2日間に渡って5%のマシンに影響を及ぼす。また、約50%の可能性でクラスタのオーバーヒートが発生し、発生の際はほぼ全てのサーバが5分以内ダウン、リカバリに1~2日かかるという事態が発生するとのこと。
Googleはサーバのハードウェア・コンポーネントには汎用のものを使用しているが、パッケージに関しては独自なものを採用しているそうだ。回路基盤はIntelがGoogleのためにカスタム設計したものを使用しており、各サーバのケースは使用せず、サーバが40台設置されたラックを覆う独自のケースを設計・採用している。Cnet News Blogの元記事にてGoogleデータセンター内の写真が数点紹介されている。
平均故障率の試算 (スコア:5, 参考になる)
ひとまず、MTTRがどちらも1日、信頼性の高いサーバのMTBFが300日であると仮定します。
このとき、信頼性の高いサーバ10台の故障率は1.63808E-25となります。
サーバ20台で上記と同等かそれ以下の故障率を実現する場合に、信頼性の低いサーバに必要なMBFTは
16.4日
になります。
つまり、この場合、ハード台数が2倍確保できるのであれば、信頼度は1/18でよいということになりますね。
#なお、同じ条件でMTTRが2日だったとすると、必要MTBFは22.5日に、逆にMTTRが0.5日だと、11.8日になりました。
//ソリッドファイター完全版 [fukkan.com]復刊賛同者募集中/
なるほど... (スコア:3, おもしろおかしい)
Re:なるほど... (スコア:5, すばらしい洞察)
親コメント
Re:なるほど... (スコア:2, 興味深い)
人集めという点では成功している様に見えますけど、やっぱり化け物クラスの人間でも集めると怠け者と働き者に分かれるんでしょうか。
(ついでにいうと怠け者が弾かれるかどうかについても)
#知っている人に飛び込んでいったけど弾かれた人連れ去られた人飛び込もうとはしなかった人がいるけど、
#あえて各個人の実際の能力がどうかは触れないでおこう…。
##Googleスゲェよ、やっぱり
=-=-= The Inelegance(無粋な人) =-=-=
親コメント
Re:なるほど... (スコア:5, おもしろおかしい)
親コメント
Re:なるほど... (スコア:5, すばらしい洞察)
ソフトウェアのソースコードのうち10%がバグだらけの状態は「このソフトウェアは使い物になりません」としか形容できないわけですよ。
親コメント
Re:なるほど... (スコア:4, 興味深い)
って言ってるし、それらを束ねる上役の力量が問題になるんじゃないかな?
#結論は非現実的
親コメント
Re:なるほど... (スコア:4, おもしろおかしい)
つまり、技能が同じで離職率の異なる(離職率に応じて初期投資も異なる前提で)技術者を用意するなら、離職率の高い技術者を安く大量に用意したほうがよい、という話になるのでは?
というわけで、ハードほど技術者は離職率によってお値段が違うとは思えないので、あまり良い例えではないような気もします。
(逆に、凄く良い例えだ、と思ってる人もいたりして…)
Leshade Entis
親コメント
Re:なるほど... (スコア:2, すばらしい洞察)
ほかの業界だと、国内に量産工場を1棟建てるより、同じコストで中国に2棟建てた方が、
不良品を除いてもたくさん作れますね。ってところでしょうか。
親コメント
アプリに依るでしょ (スコア:2, すばらしい洞察)
そういう「ゆるい」アプリがGoogleのコアビジネスを占めているから、
Googleはそれで成り立つし、他の業界ではそうはいかない。
そのころ東郷提督は (スコア:2)
Re:大規模でなければ間違いでは無い (スコア:2, 興味深い)
百発百中なんて未だにどこも実現出来てませんよ。
ってか、そもそもは兵站で既にボロボロ状態で有るのを糊塗してただけだし。
何となく司馬遼太郎がチハ車を褒めてたのを思い出した。
機械としては天下一品で世界中の何処に出しても恥ずかしくない。
問題はたった一つ「戦争に使えないだけ」ってのを。
同様に日本陸軍自体も戦争さえしなきゃあ、それなりの物だとは思う。
精神論もボーイスカウトだと思えば好ましい向上心とも思える。
親コメント
スラド編集者曰く (スコア:2, おもしろおかしい)
3の倍数 (スコア:2)
当たり前じゃん…ではない。 (スコア:1)
障害対応要員が倍になるようでは話にならんでしょうけど、そんなことにはならない、ってことなんだろうね。
Re:当たり前じゃん…ではない。 (スコア:2, 興味深い)
どうなんでしょう?? Googleを支える技術 [amazon.co.jp]によると、何台かをまとめたクラスターを作っているようです。
ざくざくと壊れるようならば、とりあえずの信頼性はクラスターで確保しておいて、クラスターが動けなくなったら、障害対策要員はどこが壊れているかなど無視してクラスター単位で生成・撤去すればよいだけ。
結局、台数に物を言わせて、ソフトで信頼性を確保すると、障害対応要員はそんなに必要ないよ、必要な技術レベルも決して高くないよ…ということに落ち着くのかもしれません。
.
しまった。
それってうちの商売からみて敵だ。
(大抵の大手計算機メーカーにとってもそうでしょうが)。
fjの教祖様
親コメント
まあ市場原理的にも合ってるかも (スコア:1)
信頼性というよりは性能の話ですが。
=-=-= The Inelegance(無粋な人) =-=-=
人も・・ (スコア:1, おもしろおかしい)
「○○人の技術者が働いているとすれば、毎日何人かがダウンするに決まっている」
一定数の二倍 (スコア:1)
現実はそう行かないのでしょうし、そうできるようにソフトウェアの改善も行っているでしょうけど^^;
// 初期予算、だけでなく保管とか管理の問題があるんですね・・・(:>^
電気代が無駄な気がする (スコア:1)
どっかで聞いたことがあるな~とおもったら(もしかしたら余計なもの) (スコア:1)
丸山先生のレクチャーシリーズ Podcasting
http://satellite.wakhok.ac.jp/podcast/xml/maruyamalecture.xml [wakhok.ac.jp]
ここでした。たしか「Googleの分散処理技術」とかのトピックだったとおもうのですが。
上記のPodcastでは、その内容を時間を割いてわりと詳しく説明してました。
Podcastなんで、写真とか現物を見たわけじゃないですし、話だけ出だと「?」な部分もありますけど。
最初は「見える化」のトピックで聞き始めて、色々面白い内容があるので、たまに聞いてる。
#すでに紹介されていたら失礼いたしました・・・
信頼できるソフトウェア。 (スコア:1)
障害、エラー、誤操作などなど、こういった事象に対して対処することを避けていないソフトウェアを生産することに「対価」を支払わないことが問題の根源かもしれません。
信頼や品質は作りこんでいくもので、なにか良さそうなものをカタログ閲覧して購入・配備すればすむ「保険」ではありませんし、大事なことについては昔と変わらずに作りこんでいくことでこそ利用者は満足を得るものでしょう(一番いいのは、利用者も作りこみのために手と頭を働かせるケースでしょうか)。
企業や公共が使用しているシステムたちは、損失・損害を保険でカバーすれば許してもらえるような周辺的な存在ではなくなっていますよね?であるならば、利用者がまず作りこみの為に手を動かすのでなければ、ナニをもって「信頼に足る」とするのでしょうか?
作りこむことの大事さ・高い価値を、ユーザに得心させる(教育する)ことが大切になってきているように思います。
(そして、システム開発を土木工事同様のフォーマットやフローで管理したいなどという怠惰さ(思い上がりか?)を駆逐できれば…とも)
Re:信頼できるソフトウェア。 (スコア:2, 興味深い)
はて、そうでしょうか??
Googleはハードウェアを動かせる限り連続して動かしているとは思えません。各機械は、定期的に止めて、ヘルスチェックをかけているはずです。全体がいっせいに停止することはない、というだけで。
と言うことは、ソフトウェアもその「一定期間」さえ動作すればよい、という風に作っているはずです。ジョブのtakeoverがきちんとデザインされているだけで。つまり長期間運用しないと発生しないようなエラーについては、最初からエラー処理など書いていないはずです。
その分を分散処理と、冗長化を実装するのに割いているのだと思いますよ。
fjの教祖様
親コメント
みんな勘違いしているっぽいですが (スコア:1)
信頼性が低いというのはその逆です。
信頼性と計算結果は何の関係も無いですが、
コスト(要するに値段)は概ね桁違いになります。
そしてPCはいつどの程度かは判りませんが、でも確実にどこかが故障します。
なので台数が多くなるほど、全体としての稼働率はどんどん下がります。
その稼働率をどうやったら高くできるか、というのが話の筋ですよね。
日本ではまだまだ言葉だけで馴染みの無いリスクマネジメントの観点から言えば
至極当然な事を言っているなあと思いましたが、
あれ?と思うことをおっしゃる方が多いのに驚きました。
製造業に関わった事がある方なら99.9%がどれだけ途方も無い数字なのか感覚的にわかると思いますが。
ソフトウェアのレベルで (スコア:1)
フェールオーバー仕込むの自体に四苦八苦してる局面を、あちらこちらで見かけるような・・・
身近で体感している事例 (スコア:1)
ゲーム用デスクトップPC、インターネット/メール用PC、外出用PC、
仕事用PC、OS検証用PC1,2,…、おもちゃ用Eee-PC。
と言うことですね。わかります。
クラスタ化すればそれなりの性能は出るかもしれません。
…ラックマウントサーバをガンガン買ってる猛者もいますけど…。
ハードウェアはコストパフォーマンスで選択すれば良いという話? (スコア:1)
でもそんな事改めて言われなくてもPCパーツの値段、及びそれらの
ベンチマークスコアを照らし合わすのに慣れっこの聴衆ばかりでは・・・
#そして解ってても高い方に惹かれてしまうのが僕等さ!
#そしてハードにのみ金を掛けソフトには一切金を払わないのがDSゆーうわなにをするやめr
Re:よし、じゃあ (スコア:1)
親コメント
Re:2の倍数でよくって (スコア:1)
ぬるぽで落ちるとか?
Just a whisper. I hear it in my ghost.
親コメント
Re:2の倍数でよくって (スコア:5, おもしろおかしい)
いえ、最近書いてるプログラムって、ほぼこれと同等なことばっかりやってるので、
つい。
親コメント
Re:信頼性..? (スコア:1)
真空管時代の計算機みたいですなあ。
親コメント
Re:2の倍数でよくって (スコア:2, おもしろおかしい)
4文字目でアホになってますが……?
親コメント
Re:普遍化しすぎ (スコア:5, すばらしい洞察)
なぜ、信頼性が 1/2 って話になったのでしょうか?
信頼性が 99.99% のものを 1 個揃えるんだったら
信頼性が 99.9% のものを 2 個揃えろって話でしょう。
# 精度を求めれば、金額が跳ね上がります。
そして、至らないところは、ソフトでカバーするという話だと思います。
> たとえば銃器の場合に命中率で、狙撃用と制圧用ではそれぞれ要求されるレベルは違って当然と私は思いますが?
下記のライフルがあるとして、
命中精度が 90% のライフル A
命中精度が 80% のライフル B
命中精度が 80% のライフルを 2 倍揃え、
命中精度が低い事を補える作戦を用意する方が、
目的を達成し易いという事でしょう。
親コメント
Re:普遍化しすぎ (スコア:3, 興味深い)
世の中には価格1/5故障率20%ダウンなんて代物は山のようにある。
しかも重量が1/3だったりすると、安い方を2台付ける、というのはありだと思うのだが、
日本ではこれが通らない。
昔は、放送局もそうだった。
12年ほど前に米国のNBC本社の見学に日本のプロダクションや放送局の
ツアーで行った。
入る前は、日本にないような最新の設備を期待して入ったのだが、
副調整室の一部には驚くような機器もあるが、
大半は日本ではもう見られなくなったような機器もごろごろ。
同行の面々は、日本の機器は米国を超えている!と自信満々だったが・・・
信頼性とコストをバランスにかけているだけだと思った。
現在も日本の医療はそう。
おかげで海外の数倍の価格の物が今だ横行している。
もちろん定価はそのX倍。
ここ数年でずいぶんまともになったが、
商習慣の違いを割り引いても、日本の信頼性信仰は高すぎ。
もちろん安かろう悪かろうが世の中には多いわけで、
予め充分選別しての話だが。
親コメント
Re:信頼性..? (スコア:1)
フォルトトレラントサーバというものがあります。中身にPCサーバ二個分の部品を抱え込んで、障害に備える仕組みがあらかじめ備わっているような代物だったりします。
もちろん、値段は倍ではききませんし、Googleのようにそもそも膨大な台数でクラスタにする前提なら、そんなところにコストをかけるよりも、その分台数を増やして、自前で対処した方がよいというのは当然ですね。
親コメント
Re:わかりやすく言うと (スコア:1)
オールドタイプの乗ったガンダム一機より、ニュータイプの乗ったザク3機のほうが強いって事ですよ。
親コメント
Re:よし、じゃあ (スコア:1)
日本やギリシャ・ローマあたりだと安心して神はふやせますが、エルサレム近辺出身の神だと、ハルマゲドンになりかねないので、やめましょう。
親コメント