ZFS RAIDZのIOPSの計算とRAID5およびRAID6のIOPSの計算は異なりますか?


13

従来のRAIDアレイのIOPSを計算する場合、次の式を使用できます(Symantec ConnectでIOPS v1.3のハング取得するから借用)。

Ieffective = (n * Isingle) / (READ% + (F * WRITE%))

どこ:

  • Ieffectiveは有効なIOPSの数です
  • Isingleは、単一ドライブの平均IOPSです。
  • nはアレイ内のディスクの数です
  • READ%は、ディスクプロファイリングから取得した読み取りの割合です。
  • WRITE%は、ディスクプロファイリングから取得した書き込みの割合です
  • FはRAID書き込みペナルティです:

    RAID Level      Write Penalty
    RAID-0          1
    RAID-1          2
    RAID-5          4
    RAID-6          6
    RAID-10         2
    RAID-DP         2
    

数式は基本的に次の関数です。

  • アレイ内の個々のドライブのIOPS
  • ディスクの数。ディスクが多いほどIOPSが大きくなる
  • 各書き込み操作のRAIDペナルティ。
    • RAID5およびRAID6では、書き込みごとに4回以上のディスク操作が必要です。コントローラーは、ブロックを読み取ってからパリティデータを読み取り(2回の操作)、新しいパリティデータを計算してから、パリティブロックを更新してデータブロックを更新する必要があります(2回の操作)。RAID6には2つのパリティブロックがあるため、3つの読み取りと3つの書き込みが必要です。したがって、RAID5およびRAID6アレイは、RAID1よりも少ないIOPSを実現できます。
    • RAID1およびRAID10は、ミラー内の各ディスクに1つずつ、2回の書き込みのみを必要とします。

明確にするために、これはすべて推定値を提供します理論上の性能のを。さまざまなコントローラーとRAID方式には、この一部を高速化するためのトリックがあります。

ZFSのRAID5およびRAID6に相当するものは、RAIDZおよびRAIDZ2です。RAIDZアレイのIOPSを計算するとき、RAID5およびRAID6に使用するのと同じ式を使用できますか、またはZFSには書き込み操作に必要な操作の数を減らすための特別なトリックがあります。

RAIDZアレイのIOPSを計算するときに使用する別の式はありますか?


1
いい質問ですね。私は...答えを読んで楽しみにしています
EEAA

1
iopsは神話ですが、このドキュメントは洞察を提供するかもしれません。info.nexenta.com/rs/nexenta/images/...
トニー・ロス

IOPSは理論的かもしれませんが、同じドライブが与えられた場合、通常RAID10アレイがRAID5アレイよりも優れている理由について説明できます。
ステファンLasiewski

Nexenta docからの注目すべき引用: 「RAIDZ-2構成では、VDEVに入る単一のIOを分割してすべてのデータディスクに書き込む必要があります。その後、パリティを計算してディスクに書き込む必要があります。 IOが完了する可能性があります。すべてのディスクのレイテンシが同じ場合、ディスクに対するすべての操作が同時に完了するため、1台のディスクの速度でVDEVへのIOが完了します。 RAIDZ-2 VDEVの場合、VDEVへのIOは、最も遅いドライブのIOが完了するまで完了しません。」
ステファンLasiewski

回答:


13

これは答えやすいです...

これは、すべてここに蒸留ます:ZFSのRAIDの推奨事項:スペース、パフォーマンス、およびMTTDLZFS、Vdevsとパフォーマンスを詳しく見て

  • 1台のパリティドライブを備えたRAIDZでは、1台のディスクのIOPSパフォーマンスが得られますが、1台のディスクの合計帯域幅のn-1倍です。

したがって、スケーリングが必要な場合は、RAIDZ vdevsの数に応じてスケーリングします。たとえば、16ディスクの場合、4ディスクRAIDZの4グループは、8ディスクRAIDZの2グループよりも大きなIOPSの可能性があります。

驚いたね

私は通常、ZFSインストールでストライプミラー(RAID 1 + 0)を使用します。同じ概念が適用されます。ミラーリングされたペアが多いほど、パフォーマンスが向上します。

ZFSでは、完全なvdevの単位でのみ拡張できます。したがって、RAID 1 + 0セットの拡張はペアを追加することを意味しますが、RAIDZセットに対して同じことを行うことは、同じ構成のRAIDZグループを追加することを意味します。


良い記事ですが、非常に古いため、ZFS RAID1とRAID5のリンク比較(「単一パリティモデルの結果」と「二重パリティモデルの結果」が欠落しています)。ラット!
ステファンLasiewski

1台のパリティドライブを備えたRAIDZを使用すると、単一ディスクのIOPSパフォーマンスが得られます。これは興味深いです。読み取りと書き込みの割合に関係なく一定の値ですか?たとえば、RAID5のパフォーマンスは、読み取りと書き込みの割合によって大きく異なります。3ディスク15Kアレイは、読み取り/書き込みの比率に応じて、130IOPSと500IOPSの間で変化します。50%が読み込み&50%の書き込みはになり、その後大きな単一のディスクのIOPS性能。3本以上のスピンドルを使用すると、1本のスピンドルと比較してパフォーマンスが向上しますか?
ステファンLasiewski

vdevのスケーリングと、そのvdevの構成に関係なく、書き込みのパフォーマンスは1ディスクに等しいと思います。ミラー、RAIDZ、RAIDZ2など。vdev内のディスクは、容量を増やすためにあります。vdevの数は、ストライピングパフォーマンスを構築するために使用されます。vdevsからの読み取りは、ドライブの数に応じてスケーリングされます。
ewwhite

1
これについてはかなりの経験があり、ほとんどの場合、従来のRAID5 / 6同等のアレイに投入されたディスクの数をRAIDZが上回ることはないことを確認できます。ほとんどの従来のRAID5 / 6アレイは、RAIDセットにスピンドルを追加するとIOPSパフォーマンス(ほとんどの人が気にかけないもの)を獲得しますが、ZFSはそうしません。その代わりに、ZFSはデータを失うことはなく、「RAID書き込みホール」の問題もありません。さらに、スナップショット全体、クローン、圧縮など。そして、ARC。そして..あなたはアイデアを得る。
Nex7

2
私はただ明確にしたいだけです-ZFSはその設計上、パフォーマンス戦争に勝つつもりはありません。同じハードウェア(ext4やAdaptec RAIDカードなど)でZFSよりも優れた代替ファイルシステムとボリュームマネージャー(または組み合わせ)を見つけることができます。私が知っているこれの唯一の例外は、簡単にキャッシュされる読み取りから来ます。そこでは、ARCはほとんどの場合、ZFSにほとんどの代替手段を提供します。しかし、それは書き込みになると?いいえ。ZFSがデータの整合性と書き込みの処理に費やす努力は、スピードコンテストで勝つことはほとんどありません。トレードオフは、整合性と機能セットです。
Nex7
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.