web-dev-qa-db-ja.com

MongoDBドキュメントがEBSでRAID10を実行することを推奨するのはなぜですか?

彼らはパフォーマンスについてのみ話しているようですが、他のハイブリッドRAIDタイプと比較するとそうではないと私は信じています。

ここを参照してください: http://www.mongodb.org/display/DOCS/Amazon+EC2#AmazonEC2-EBSvs.LocalDrives

2
Claudio Poli

「MongoDBがローカルディスクよりもEBSを推奨する理由」または「MongoDBが単一のEBSではなくRAID-10を推奨する理由」について何を求めていますか?私はあなたが与えたリンクで両方の質問がかなりよく答えられていると思いますが、要約すると:

  • EBSとローカルディスク:MongoDBデータをインスタンスのクラッシュまたは再起動後も存続させたい場合、これは簡単です。インスタンスが停止すると、ローカルディスクが削除されます。
  • EBSのRAID-10:簡単に言えば、EBSのパフォーマンスは驚くほど劣っています(さらに悪いことに、変動します)。 RAID-10は、少なくとも多くのボリュームに負荷を分散します。

編集:では、3番目の質問があります。コメント内のリンクからリンクされている実際のベンチマークデータがなくなったため、コメントしかありませんが、関連するロジックが間違っているため、悪いベンチマークだと思います。さまざまなRAIDレベルに必要なブロックごとのI/Oは次のとおりです。

  • RAID1:N個のディスクにまたがるN個の書き込み
  • RAID5:N-2読み取り(ストライプ内の既存の変更されていないデータを収集します-運が良ければキャッシュされる可能性があります)、Nディスク間で2書き込み
  • RAID10:N個のディスクにまたがる2回の書き込み

データがなくなったため、ベンチマークが結果を得た理由を説明することはできませんが、十分なテスト実行が行われなかったと思います共有リソースのテストに固有の変動を滑らかにします。私はHerokuのためにこの種の作業をたくさん行っていましたが、時間の経過(およびボリューム)の実行の変動は衝撃的でした。

あなたが引用しているウィキペディアの記事に関しては、ハイエンドのRAID-5に関するものであるため、この場合は関係ありませんSANアプライアンス; VM内でRAID-5を実行していますが、 「ビッグアスSAN」と「ソフトウェアRAID」のさまざまな違いの中で、「バックエンドプロセスとして実行されるパリティの再計算と再配布のタスク[...]をホストに対して透過的にする」機能。

3
womble

10genは、AWSでのMongoDBの使用について、少し前にウェビナーを行いました。これは、(1)パフォーマンスと(2)単一のアベイラビリティーゾーンでの最近のAWSの数日間の停止後のフォールトトレランスの2つの問題を扱います。彼らのソリューションは、多くのノードにわたるRAID10です。

スライドは、SFの投稿よりもはるかによく説明できるので、スライドを確認することをお勧めします。

http://www.10gen.com/presentations/mongodb-austin/2012/mongodb-on-Amazon-ec2http://www.10gen.com/presentations/webinar- best-practices-mongodb-aws

0