人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

ハードウエアRAIDでは、writeキャッシュ、readキャッシュなどがRAIDコントローラで設定でき、書き込みであれば、ファイルキャッシュ→RAIDコントローラのキャッシュ→DISKといった順序で書き込みがおこなわれていると考えています。
ライトバックにするとファイルキャッシュ→RAIDコントローラのキャッシュまでで処理が完了するので性能向上ができるようになると認識しています。

一方、ソフトウエアRAIDでは、ハードウエアRAIDであるようなキャッシュというものは存在しないのでしょうか?
ソフトウエアRAIDのキャッシュはファイルキャッシュをつかっているのでしょうか?
つまり、ファイルキャッシュ→DISKの流れのみでしょうか?
ソフトウエアRAIDで書き込み性能を向上させる方法はあるのでしょうか。

カーネル2.6系Linuxです。



●質問者: user2864
●カテゴリ:コンピュータ
✍キーワード:Linux RAID Write カーネル キャッシュ
○ 状態 :終了
└ 回答数 : 2/2件

▽最新の回答へ

1 ● randk
●30ポイント

一般論ですが・・・。

ライトキャッシュは、キャッシュされた内容がディスクに書き出される前に消えてしまうと、データロストしてしまうので、不意の故障に耐えられるようにバッテリバックアップなどの保護機構が必要になります。

そのため、特殊な機器なしの純粋なS/W RAIDでライトキャッシュは困難です。

#ディスク書き込み性能を増すための遅延書き込みの仕組みなどはありますが、それはまたちょっと別のお話・・・。

ただし、S/W RAIDでもライトキャッシュを持つものもあります。

たとえば、SolarisのZFSというファイルシステムはライトキャッシュにSSD等の高速な不揮発デバイスを割り当ててファイルの読み書きを高速化することが可能です(まあこれもSSDなどのハードが必要です)。

http://jp.sun.com/communities/0612/feature01.html

Linuxのファイルシステムでは・・・寡聞にして聞いたことがないです・・・すいません。

消えてもいいデータ(作業用のデータなど)なら、ramfsでメモリ上ファイルシステムを作れば超高速になりますけど・・・。

◎質問者からの返答

回答ありがとうございます。

>Linuxのファイルシステムでは・・・寡聞にして聞いたことがないです・・・すいません。

なるほど・・・

>消えてもいいデータ(作業用のデータなど)なら、ramfsでメモリ上ファイルシステムを作れば超高速になりますけど・・・

それはそうですけど・・・^^;


2 ● morethanjustase
●40ポイント

> 一方、ソフトウエアRAIDでは、ハードウエアRAIDであるようなキャッシュというものは存在しないのでしょうか?

> ソフトウエアRAIDのキャッシュはファイルキャッシュをつかっているのでしょうか?

ソフトウェアRAIDの機能自体はキャッシュを持っていないと思います。

書き込み性能に効くキャッシュは、OSのバッファキャッシュでしょう。


> ソフトウエアRAIDで書き込み性能を向上させる方法はあるのでしょうか。

RAID5をお使いであれば、RAID1、RAID0、RAID1+0への変更で書き込み性能を向上できます。

他にはちょっと思いつきませんね。。。


RAIDレベルによる性能差については次のページが参考になります。

1つ目で紹介されている計測結果は、ハードウェアRAIDのRAIDレベルによる性能差ですが、

ソフトウェアRAIDでも同様の傾向になります。


HDDベンチマーク手順+性能測定結果一覧

http://plaza18.mbn.or.jp/~moriban/linux/HardDiskPerformance.html


HDDの実効速度測定

http://www.hpc.co.jp/hit/Bench/bench-HDD-2.htm

◎質問者からの返答

回答ありがとうございます。

>ソフトウェアRAIDの機能自体はキャッシュを持っていないと思います。

なるほど、そうなのですね。

>書き込み性能に効くキャッシュは、OSのバッファキャッシュでしょう。

カーネル2.6では,バッファ・キャッシュを完全に廃止され、

ディスク・キャッシュは全てページ・キャッシュに統合されているようです。

ページキャッシュ=ファイルキャッシュという認識でファイルキャッシュと書きました。

>RAID5をお使いであれば、RAID1、RAID0、RAID1+0への変更で書き込み性能を向上できます。

>他にはちょっと思いつきませんね。。。

そうですね・・・

ソフトウエアRAIDのキャッシュの仕組みが知りたかったという意図で質問を投げたので

RAIDレベルは別の話になりますが、普通に考えてRAID5はwriteペナルティがあるので書き込みは遅くなりますね。RAID1はミラーリングだけなので(DISKを分散できないので)読み書き合わせたRAIDによる性能向上をさせたいと考えている場合は対象外になりそうですね。

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ