1つの大きなRAID 10と複数の小さなアレイを比較しますか?


10

私の質問は、特定のアプリケーション用に小さなアレイを作成するのではなく、RAID 10などの高速な読み取りと書き込みのパフォーマンスを備えた1つの大きなアレイを単に作成することが適切なのはいつですか?

全体的なI / O要件がそれほど大きくない場合、優れた読み取りおよび書き込みパフォーマンスを持つ単一のアレイは、さまざまなアクセスパターンを持つアプリケーションがピークに達した(おそらくまれな)時間を除いて、すべてのアプリケーションに全体的に優れたパフォーマンスを提供できるようです同時に(データベースが非難されている間に大量の大きなファイルをコピーする)。

ペアスピンドルをトランザクションログなどの特定のタスク専用にしていて、ワークロードで汗をかいてさえいない場合...そのワークロードをより大きなRAID 10に配置しないのはなぜですか?これらのスピンドルは、時間の60%をかき回すのではなく、他のワークロードに寄与することができます。

PS、私の特定のケースでは、RAID 10のコストオーバーヘッドは要因ではありません。これは、複数のRAID 1アレイと1つの小さめのRAID 5を作成することを考えているためです。

回答:


10

ストレージのセットアップ方法を知ることは、すべてIOPSと帯域幅を測定して予算を立てることに関するものです。(ここでは、読み取り/書き込み、平均IO、RAIDストライプサイズ、およびキャッシュヒットの割合の割合の割合のサイズが非常に重要であるため、ここでは単純化しています。これらの数値を取得できれば、計算をさらに正確にすることができます。)

ここには、ストレージの計画を立てるときに頻繁に使用する非常に優れた小さなIO計算機がありますwmarowのストレージディレクトリは、かなり現代的なディスクパフォ​​ーマンスの数値を取得するのにも適しています。

ペアスピンドルをトランザクションログなどの特定のタスク専用にしていて、ワークロードで汗をかいてさえいない場合...そのワークロードをより大きなRAID 10に配置しないのはなぜですか?

ランダムIOのスピンドルに順次IOを配置すると、その順次IOがランダムになることに注意してください。トランザクションログディスクは、シーケンシャルIO操作が発生しているため、問題が発生しているように見えます。RAID-1ボリュームへのシーケンシャルな読み取りと書き込みは非常に高速であるため、たとえば、ディスクキューの長さに「汗をかかない」ことを基本にしている場合、全体の話は得られません。

目的のデスティネーションボリュームの最大可能ランダムIOPSを測定または計算し、そのボリュームの現在のワークロードのベースラインを取り、それらのトランザクションログIOPSをデスティネーションボリュームの残りのランダムIOに配置するのに十分なヘッドルームがあるかどうかを決定します。また、(明らかに)ワークロードに必要なスペースを確保するようにしてください。必要に応じて、IOワークロード/スペース割り当てに追加の「ヘッドルーム」の割合を組み込みます。

宛先RAID-10ボリュームに配置する他のすべてのワークロードについて、この方法を続行します。ランダムなIOPSが不足すると、ボリュームに過剰に蓄積されます。ディスクを追加するか、ワークロードの一部を専用ボリュームに割り当てます。スペースが不足している場合は、ディスクを追加してください。


問題の1つは、現在の構成では、合計IOPSで十分な測定値しか得られないことです。これは、転送あたり平均14Kバイトで約300(60%読み取り)にすぎません。私が検討している大規模なRAID 10アレイは、758個のランダムな16k IOPS(60%およびキャッシュの因数分解)を実行できるはずです。ただし、この計算では混合ワークロードは考慮されておらず、それが私が取り組んでいることです。
Boden

4

最近、RAID 5は信頼性を得るための悪い方法であると言っている記事をもっと読んでいます。RAID 5アレイでディスクが不良になり、ドライブを交換した後、2つ目のディスクに潜在的な回復不能な読み取りエラーがあり、バックアップからの再フォーマットと復元を余儀なくされたため、回復できなかったと思います。

ドライブが大きくなるにつれて、これらの巨大なディスクで未検出の回復不可能な読み取りエラーが発生する可能性も高まっており、RAID 5では、信頼性がそれをもはやカットしていません。ミラーリングを行わない場合は、RAID 10を使用することをお勧めします。

速度の問題に非常に敏感なことをしているのでない限り、物事を小さな配列などに分割することについて心配する必要はありません。RAID 10に入れて、パフォーマンスが十分かどうかを確認します。システムに適切なキャッシュとメモリがあれば、問題ないはずです。ベンチマークの数値は、実際の使用状況、実際の負荷、ディスクドライブのパフォーマンス、コントローラーキャッシング、ディスクキャッシング、断片化などに依存するため、実際に実際に得られる数値にはなりません。

最良の経験則は、構成をできる限り単純化することです。1〜2週間でこの設定に汗を流して1日または1週間沈めたとしても、このサーバーで発生する問題のトラブルシューティングを行う必要があるためです。構成に不必要な複雑さを加えた場合、なぜあなたがそれをあなたがした方法でセットアップしたのか疑問に思います。


1
ええ、私はRAID 5からRAID 6に移動しましたが、書き込みペナルティが私を殺しています。1つの大きなRAID 10のアイデアが気に入っています。さまざまなタイプの同時I / O負荷のベンチマークに何を使用できますか?
Boden

1
ストップウォッチが最も正確です:-)
Bart Silverstrim

1
ドライブとコントローラーの重要性を過小評価しないでください。RAID 5を搭載したDell NASがあり、ユーザーがログインしてそこからプロファイルをプルしているときに詰まっています。パフォーマンスモニターの数値を少し調べたところ、ドライブが10,000 RPMではないことが原因であると結論付けました。特定のデータを別のサーバーに移動して、ワークロードの一部をオフロードすることになりました。
Bart Silverstrim

2
正直なところ、なぜ企業環境でRAID 5を使用するのか理解できません。私たちはずっとRAID 10です。
ビープ音

2
であるため、時間 RAID 5悪ではなかった:-) RAID 10は、ビジネスの私達のレベルで不必要な贅沢と考えられていた、私はあなたが言うことができると仮定します。価格は本当に下がって、時代は変わりました、そして我々はまだサーバールームで何が「働いている」かをサポートします。
Bart Silverstrim、

2

アプリケーションのレイテンシをどの程度予測可能にしますか?

たとえば、実際にレイテンシの影響を受けやすいアプリが1つあり、それが金融データベースとファイルシステムを共有しているとします。会計年度末に、レイテンシの影響を受けやすいアプリのタイムアウトについて突然電話がかかります。どのようにそれを理解しますか?

一方、私はすべてを単純化することの大ファンなので、例外的な要件がないことを確認し、要件が奇妙な特別なケースに該当しない場合は、構成を統合して単純化します。


0

もちろん。大事なことは、大きなマルチディスクアレイを正しく構築することを忘れないでください。それを間違えると、再構築に時間がかかります。

RAID 10には2つのフレーバーがあります。

  • 2つのRAID 1アレイを構築し、それらをストライプ化するRAID 1 + 0。
  • 2つのRAID 0アレイを構築し、それらをミラーリングするRAID 0 + 1。

ディスクが死んだら、1つのraid1アレイを再構築する必要があります。もう一方では、raid0アレイ全体を再構築する必要があります。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.