こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

RAID5の書き込み速度

RAID5の書き込み速度はパリティを生成する分遅くなるということのようですが、HDD1台だけの通常の場合の書き込み速度と比べても遅いということなのでしょうか。それとも読み込みに対しては遅いという意味なのでしょうか。

投稿日時 - 2017-08-29 21:07:22

QNo.9368581

暇なときに回答ください

質問者が選んだベストアンサー

RAID5はHDD1台の場合に対して書込は遅くなります。
どれくらい遅くなるかはRAIDシステム次第です。

RAID5は3台以上のHDDで構成され、その内1台分はパリティデータが保存されます。
パリティデータは通常のデータが書き込まれるHDDのデータを XOR 演算して、その結果をパリティデータとして保存します。
XOR 演算自体は難しい計算ではありませんが、書き込むデータ全てを計算するので時間が掛かります。
ソフトウェアRAIDと呼ばれるコンシューマ向けのマザボなどに搭載されているRAIDはCPUを使って計算をするので、他の処理との兼ね合いで時間が掛かってしまいます。
ハードウェアRAIDと呼ばれる専用の拡張ボードを使ったりサーバ・ワークステーション用マザボに搭載されているRAIDはXOR計算専用のLSIが搭載されているのでソフトウェアRAIDに比べると格段に早くなりますが、単純に1台のHDDへデータを書き込むよりは時間が掛かります。

因みに、読み込み時にもデータをXOR演算してデータが壊れていないかチェックを行い、データにエラーが見つかればパリティからの修復を行うので、読み込みも決して速くはなりません。

読み書きの速さを求めるのであればRAID5は不向きです。

投稿日時 - 2017-08-30 09:51:25

ANo.4

このQ&Aは役に立ちましたか?

0人が「このQ&Aが役に立った」と投票しています

回答(6)

ANo.6

実際に、うちのmdドライバーによるソフトウェアRAIDで比較すると

RAID5ボリュームにある2GiBのファイルをRAID1のボリュームにコピーしてみると
一回目26秒、二回目27秒となりました。

RAID1のボリュームからRAID5のボリュームへのコピーは
一回目19秒 、二回目19秒となりました。

二度の結果から、ディスクキャッシュの影響はほとんど無いようです。
これ以外は、面倒くさいので、低負荷状態で一度だけの計測
(計測はtimeコマンドかddコマンド、小数点は四捨五入)

構成するHDDは全部同じWD Greenの2TB(同型とは言っていない)
ファイルシステムは両方XFS
RAID5は4wayで、古いPCIe SATAカード(Adaptec 1430SA)に繋がっていて
RAID1は2wayで、H97M Pro4の内蔵SATA端子に繋がっています。
単体のRAW読み出し速度は前者が130MB/s程度、後者は108MB/s程度

HDD個体の速度、ファイルシステムのオーバーヘッド、HDDコントローラーの速度
いろんな要因がありますが、i3-4160程度のCPUでやっても
RAID5の処理は、それほど重いものでは無く
RAID5がRAID1に比べて、極端に速度的に不利とも言えないようです。


Windows,Mac,FreeBSDなどでRAIDを利用した場合の結果は
違う傾向が出るかもしれませんし

LinuxベースのNAS製品も、総じてi3-4160よりも貧弱な
AtomやARM,MIPSなどのシステムですから
RAID5処理については、i3よりも不利になる傾向があると思います。


ちなみに、ファイルシステムを介さないで、ddコマンドでのRAWデバイスとして
読み出してみると(例によって/dev/nullに捨て)

16GB分の読み出しにRAID5では346MB/s
RAID1では、148MB程度ですから、読み出し速度としては
4wayと2wayの差で、おおむね二倍前後と考えていいと思います。

というか、CPU性能が向上したことによって
ハードウェアRAIDの優位性は低くなり
Fake RAIDやソフトウェアRAIDや、記憶域プールやZFSやBtrFSなどの
ハードウェアに依存しないHDDの応用技術が発展してきたんですよね。

投稿日時 - 2017-09-02 22:33:27

ANo.5

RAID5(6)はHDDの数次第です。
HDDの数が増えるほど早くなります。
ただし、RAID5では一度に壊れるHDDは1台のみしか対応できません。
2台同時に壊れるとリビルド(RAID5再構築)不可能となりデータが失われます。
もし2台同時故障に対応したいならRAID6が必要になります。
また、RAIDカードの能力やキャッシュの容量で違ってくる部分もあります。
RAIDカードがPCIe x1だとどうやってもその速度は超えられませんからRAID0でも2台で頭打ちになるのに対しPCIe x8だとRAID5でもそれを超えれると思われます。
中にはSSDをキャッシュにできたりキャッシュメモリが1GBなんてんのもありますからうまくキャッシュが働けばかなり早いでしょう。

高速なHDDと組み合わせるとこんな風になったりします。
hp D2700+LSI MegaRAID 9285-8e搭載時のベンチマーク
http://ottoserver.com/pcserver1/wp/archives/963
もっとも、こんな構成は個人では無理かもしれませんが・・・

投稿日時 - 2017-08-30 14:25:48

ANo.3

今までの回答者さんと異なる回答になるので、混乱しないように注意してください。

また、かなり長文をお許し下さい。 誤字脱字もありましたらお許し下さい。

RAID5での読み込みは、RAID5に構成するHDD数が多いほど読み込みは早くなります。
HDD数が3台より4台4台より5台と言うように早くなります。
RAID0「ストライピング」の構成HDDが多いほど読み出し速度が上がるのと同じです。
ただし書き込みは少し複雑で、RAID5でも色々な環境条件でかなり変わります。

まず、PC内蔵でRAID5対応拡張ボードが付いていない場合は、ソフトRAID(PCのCPUが処理します。)
ソフトRAIDはRAID種類に限らず、ハードRAIDよりかなり落ちます。
PC内蔵でRAID5対応マザーボード(システムボード)搭載タイプになります。
それに対して、増設RAID5対応拡張ボードのハードRAID5などのタイプは、拡張ボードに各種RAID処理をする為のCPUとキャッシュメモリーが搭載されている為に、PCのCPUに負担がかかりません。
当然その分通信速度が上がります。(読み込み/書き込み・リード/ライト)

例として仮に分り易いように、RAID5で分散するデータ容量を1MBとして構成HDDが3台とします。
HDD3台の内、2台に普通にデータ分散データが1MBずつ書き込まれて、残りHDD1台には2台分のパリティーデータが書き込まれます。
HDD2台分で2MBのデータを、残りHDD1台にはHDD2台分のパリティーデータを2MB分を1MBに圧縮して書き込まれます。
パリティーデータを圧縮する分、ソフト・ハードRAID5であろうと圧縮させる為に時間がかかり書き込み速度が遅くなります。

そこで、HDD構成を5台に増やすと、HDD4台で4MB分を残り1台のHDDにパリティとして4MB分を1MBに圧縮するので、さらに圧縮率が上がり時間がかかります。
しかし、分散HDDの数が多いのでリード/ライトのスピードは上がります。
でも、これはあくまで分り易いように書いただけで、分散データ容量は4KBとか8・16KBでの分散なので、圧縮時間はあまりかかりません。
ハードRAID5なら、体感すらしないと思います。

ただし、今販売されているハードRAID5対応拡張ボードは、種類にもよりますが5万円から10万円は覚悟して下さい。
また、HDDの選択ではRAIDで使用するなら、HDDのを選ぶにあたっては、稼働時間にも夜のですがウェスタンデジタル社で言うと、WD BLACKかWD REDを選びましょう。
家電量販店で売られているWD BLUEやWD GREENだと、HDD自体は壊れていなくても、RAIDアレーが外れやすいです。
一度外れたHDDは特殊処理(素人から見れば)をしないと、再度RAIDアレーに組み込めなくなります。
でも、単体使用で使おうとすると、なんら問題なく使えます。
これは、ウェスタンデジタル社だけでなく、各社のHDDに言えます。
なので、RAIDアレーが外れたからと言って故障しいる訳ではないので、保障期間内であっても修理や交換には応じて貰えません。


RAIDに関しての参考URL
https://note.cman.jp/server/raid/raid5/

ウェスタンデジタル社のHDD関連URL
http://www.wdj-info.com/
使用用途で選びましょう。

後は質問者さましだいです。  m(_ _)m

投稿日時 - 2017-08-30 07:12:25

ANo.2

RAID5は最低3台のドライブが必要なので、それが効果的に利用されています。書き込みは、HDD1台でも同様ですが書き込みキャッシュになるので、パリティ書き込みのオーバーヘッドは、企業のSQLログサーバーでもない限り気にならないと思います。読み込みは3台並列処理のシーケンシャルリードが有効なら単純に3倍速になります。
と、ここまでがRAIDの論理的なスペックですが、それに近付ける為にはPCでもNASでもそれなりのハードが必要です。具体的にはCPUとメモリーで、特にメモリーは最低でも8Gは欲しいですね。CPUはパリティ生成に効いてきます。

投稿日時 - 2017-08-29 22:45:18

ANo.1

RAID5の考え方って、「いろはにほ」と言う一つのデータを、「い」「ろ」「は」「に」「ほ」と言うような形でバラして、それぞれの記憶装置に分散させる方式だったように思いますが・・・。ですので、記憶装置が多ければ、1データを構築する為のアクセスが少なくなるので、高速にはなっていくはずです。

なので、RAID5で組む場合、3台の記憶装置と、6台の記憶装置で比べるとデータによっては3台の記憶装置で組んだほうが遅くなる可能性はありますね。

もちろん、1台で素の状態を記憶するよりも3台に分散させたほうが、書き込む量も読み込む量も少なくなるので、同一条件のパーツで見た場合、早くなると思いますよ。

一つのデータとしては、下記の様な物がありましたね。
https://hikaku.cman.jp/raid/

投稿日時 - 2017-08-29 22:41:09

あなたにオススメの質問