大規模分散システムにおけるストレージの集約

将来の大規模分散システムでは、ストレージは集約してRAIDで並列化+ネットワークで繋げた方が、ローカルに単発のHDD(やSSD)を持つサーバを分散して設置するより有利、なのか?
34
Sadayuki Furuhashi @frsyuki

将来の大規模分散システムでは、ストレージは集約してRAIDで並列化+ネットワークで繋げた方が、ローカルに単発のHDD(やSSD)を持つサーバを分散して設置するより、管理コストも勘案すると十分有利、という主張をしてみたいのだけども、ちょぃと厳しいかなぁ。

2011-02-21 19:13:45
イスラエルエリカちゃん @syuu1228

SATA 3.0: 6Gbps, USB 3.0: 5Gbpsですか。10GbEはたしかに帯域幅大きいけど、例の記事を読む限りじゃレイテンシもでっかいんじゃないかな http://bit.ly/gCG8PJ

2011-02-21 19:09:22
Sadayuki Furuhashi @frsyuki

10GbEというか10GBASE-Tは遅延がアレな感じなので、CEEとかInfiniBandとかも含めて将来の(ストレージ)ネットワーク全般。

2011-02-21 19:15:44
東雲 翡陽@442hz.tokyo @H_Shinonome

@frsyuki ハードが壊れることが前提になっている分散システムにおいてはその主張が通ると個人的には考えます。実際、現在うちのシステムをその方向へ持って行こうと画策しています。

2011-02-21 19:16:18
Sadayuki Furuhashi @frsyuki

@H_Shinonome なるほど。ありがとうございます。必要なスケーラビリティとアプリケーションによっては、キャッシュ用にローカルにSSDを載せた方が良さそうな気がしていて(or 大量のメモリを積む:これはコスト高)、故障率でメリットがあるかどうかは…微妙な線である気もします。

2011-02-21 19:24:11
akuwano @kuwa_tw

@frsyuki むむ。ボトルネックがどこに来がちなプロダクトかにはよりますが、kumofsの様にメモリ処理が殆どなシステムであればアリかもです。運用コストは運用の形が変わるだけかと。壊れたら捨てる+一括管理の仕組みがあればノードが分かれてる以上管理コストは同等だと思います。

2011-02-21 19:30:13
ruy @team_eririn

@kuwa_tw @frsyuki この場合、システムディスクの再セットアップコストを省けるのが一番大きいと思うけど。違うのかな。

2011-02-21 19:35:20
Sadayuki Furuhashi @frsyuki

@kuwa_tw ふむなるほど。メモリに全部載るケースだと、ディスクレス化すれば故障率が低下してハードウェアコストの削減に繋がりそうなのですが(そうでもない?)、管理コストは同じだし、そもそもメモリに載らないケース(ローカルにもSSDやHDDを積む)では効果が薄いのも事実ですね…

2011-02-21 19:35:55
akuwano @kuwa_tw

@frsyuki @team_eririn 故障率は明確なメリットですね!そことさっきありましたが、NetworkFSでのコストやらパフォーマンスやらとの兼ね合いで、infinibandやら10Gがこなれてきたらよりメリットが強まるかと。構築はほぼ自動化できると思っているので。

2011-02-21 19:40:11
Sadayuki Furuhashi @frsyuki

ioDriveの読み込み速度は6Gbpsくらいらしい。 http://bit.ly/hHgKov

2011-02-21 19:40:16
東雲 翡陽@442hz.tokyo @H_Shinonome

@frsyuki キャッシュ用にローカルでストレージを持つのはありだと思います。システムが何らかのSANでまとめられていれば、システムイメージの再配布が効きますし、IOの速度と容量をそれほど必要としないシステムに対してはSAN化が有効だと思います。(続く

2011-02-21 19:40:46
東雲 翡陽@442hz.tokyo @H_Shinonome

@frsyuki 続き)HWの仮想化技術も同じような形で物理モデルが構成されていることが多いかと思います。その上でサービスを動かすよりオーバーヘッドやHWの制約がなくなる為、管理費対性能コストはうまく管理出来れば仮想化よりも下げられるんじゃないでしょうか。

2011-02-21 19:42:41
Sadayuki Furuhashi @frsyuki

ローカルにioDriveを1台のせるより、ストレージサーバでSSDを8台ほど並列化して 10Gbps CEE/ InfiniBand で繋げた方が速い。遅延は違うけど、実はInfiniBandは数usレベルなので、ioDriveの遅延26usを考えれば問題ない可能性も。

2011-02-21 19:46:01
東雲 翡陽@442hz.tokyo @H_Shinonome

しかし、ちょうどサーバーのSANぶら下げを考えていた俺。 キャッシュ系のサーバーはHDDレスでiSCSIブートにしようと考えている。のっけてもSSDかな。という社内向け資料をちょうどまとめていた。。。><

2011-02-21 19:48:03
東雲 翡陽@442hz.tokyo @H_Shinonome

@kuwa_tw 40Uのラックに64台+ストレージを詰め込もうかと考えてますからw

2011-02-21 19:52:15
Sadayuki Furuhashi @frsyuki

で、ioDrive 1台よりSSD 8台の方がGB単価が安い。ストレージは規模の経済が効いて、集約して並列化した方が効率的になる? 分散して並列化できればもっと速いのだろうけども、(遅延の大きい)ネットワーク上を流れるメッセージのサイズが小さくなって、効率が落ちるかな。

2011-02-21 19:54:09
syoyo.eth 🌸 レイトラ ® 🐯 5 周年 🎉 @syoyo

I built IB SDR+1GB/s SSD(4xC300) box just for $800 RT @frsyuki: ローカルにioDriveを1台のせるより、ストレージサーバでSSDを8台ほど並列化して 10Gbps CEE/ InfiniBand で繋げた方が速い.

2011-02-21 19:54:31
Kazuho Oku @kazuho

@frsyuki 同意です。長期的にも専用I/Oはなくなっていく方向だと思うし。よほど大規模なサーバ群でホモジニアスな運用をやらない限りはストレージはSANで集約する方向になるでしょうね

2011-02-21 20:09:58
Kazuho Oku @kazuho

でも多くのSANは高いしlatencyが悪いから、iSCSIイニシエータ側で直接network RAID組んじゃえってのが前職でやってた仕事のひとつだったな

2011-02-21 20:11:22
Hiromichi Itou @itoooon

@frsyuki 比較したことがありますが、SLC SSD x 8よりioDriveをお勧めします。ioDriveをCEE/IBで共有するのはありだと思います。 MellanoxのVSAとかも参考にするといいかも http://bit.ly/grdWAD

2011-02-21 21:22:31
oranie @oranie

http://togetter.com/li/103805 のやりとはなかなか興味深いっすね。「大規模分散システム」というのはまずHadoop等で元ネタと処理結果を収めるストレージという認識で合っているのかな。

2011-02-22 01:15:22
ARAKI Yasuhiro ☁ AWS Solution Architect @ar1

大規模システムにおけるストレージ集約とかいってるのにそこではレプリカを2つ持つとかいっているところにおもしろさがある

2011-02-22 00:36:53
oranie @oranie

ただ、ストレージ側はInfiniBandで高速性を担保しても、各ホストとの接続を集約させるスイッチのコストはどうなんだろ。そこがコストも含めてネックにならないかな?

2011-02-22 01:23:45
akuwano @kuwa_tw

@oranie そーそー、そういうのです。そーゆーのをがっつり話さないと各人の思ってることと結論が出ないとおもってたんすw

2011-02-22 01:25:05
oranie @oranie

@kuwa_tw やっぱそうですよねw 単純にスケールアウトさせる為の元ネタレベルなのかとか、そのストレージにどの程度高速性や信頼性等を求めるかで多少意味合いが変わっちゃいますもんねw

2011-02-22 01:27:20