Windows 10の記憶域プールのジャーナルディスクが一つ使えなくなるとどうなるか

Windows 10の記憶域プールのお試しをしています。
記憶域に追加したジャーナルディスクが壊れたとしたらどうなるか試してみました。


前回、記憶域スペースを試し始めました。
RAID1とRAID5のどちらか迷ったらWindows 10の記憶域スペースを使うのもあり

しかし記憶域パリティでの書き込み速度が遅く実用には耐えられないです。
RAID5相当のパリティでは書込み速度が遅く実用にならないと以前から文句が出ているようです。
Parity Storage Space so slow that it's unusable
Tuesday, March 13, 2012 1:13 PM
"Parity Storage Space shows performance of 80MB/sec initially but as you copy a large file the performance keeps dropping until it reaches single digits making this pool option basically unusable. Is this a bug or is it expected behaviour?"
5年前から去年まで返答があります。ですが一向に改善されていないようです。
メインメモリーのキャッシュを使い切るまでは速いのですが。

パリティの速度を少しでも改善するにはジャーナルディスクを追加すると良いようです。試しにいろいろ実験しています。
ジャーナルディスクはSSDを使うと良いようです。少し古めのSSDが一つ余っています。ですがジャーナルディスクは2台以上必要です。ハッキリと日本語で2台以上必要と書いてあるページが少ないようなのでここで書いておきます。ジャーナルディスクは2台以上必要です。(と言い切りましたが良くは知らないので間違っていたら教えてください)
一つだけでは回復性が無くなりパリティの意味も無くなるので理解できる仕様です。

記憶域の動作を見るだけならSSDでなくてもジャーナルディスクを追加すれば良いのです。古い2.5インチのHDDが余っているのでSSD1台とHDD1台を記憶域プールへ追加してジャーナルディスクにしました。
> Get-Physicaldisk | Where-Object { $_.Usage -eq "Journal" }|select-object FriendlyName,MediaType,
Usage,Size

FriendlyName        MediaType Usage           Size
------------        --------- -----           ----
Inateck USBドライブ HDD       Journal 500095254528
C400-MTFDDAC128MAM  SSD       Journal 127775277056
もうSATAポートの空きが無いのでHDDはUSB接続です。そのため、ドライブケースの名前がFriendlyNameに出ています。
USB接続のディスクは使えますが、SDメモリーカードはプールに追加できませんでした。

その後記憶域スペースをパリティで作ります。ジャーナルディスクを追加するとライトバックキャッシュが1GBにデフォルトで設定されるようです。
確認すると1GBのライトバックキャッシュが出来ています。
> Get-VirtualDisk | Select-Object FriendlyName, Size,  WriteCacheSize

FriendlyName             Size WriteCacheSize
------------             ---- --------------
記憶域ミラー    4398046511104              0
記憶域シンプル  1099511627776              0
記憶域パリティ 17592186044416     1073741824

ちなみにジャーナルディスクを1台だけプールに追加してもライトバックキャッシュのサイズは1GBで記憶域ができました。実際にライトバックキャッシュが効くのか?ジャーナルディスクは使われているのか?は判りませんでした。

ストレージのベンチマークもいろいろ取っていますが、記憶域の速度は安定せず何を見ているか全くわかりません。シーケンシャルもランダムも安定した値が出ないです。

今回はジャーナルディスクの回復性について確認してみます。ジャーナルディスクが1台使えなくなったらどうなるかを見ます。

HDD3台とジャーナルディスク2台の記憶域プール

HDD3台の記憶域プールへジャーナルディスクを2台を追加します。作成した記憶域プールはこのように表示されています。

Storage Pool with Journal DIsks
ジャーナルディスク2台を含む記憶域プール
一番下の2台はジャーナルディスクとして追加しています。GUIからはジャーナルディスクかわからないですね。

この状態でジャーナルディスクが1台使えなくなるとどうなるのでしょうか?
USB接続のジャーナルディスクを抜いてみました。

ジャーナルディスクが1台使えなくなった記憶域プール

ジャーナルディスクが1台使えなくなった記憶域プール
ジャーナルディスクが1台使えなくなった記憶域プール
警告が表示されています。
ジャーナルディスクを使っていないと思われるミラーやシンプル記憶域にも警告が出ています。どのような影響があるのかは分かりませんでした。

この状態でも記憶域パリティは普通に使えます。ファイルをコピーして追加もできました。
その後、USBのジャーナルディスクをつなぎ直すと自動的に修復され正常表示に戻りました。

あとがき

ジャーナルディスクの仕組みや役割は良く知りませんが、とにかくディスクが壊れた時にどうなるかは知っていないと使えないので試してみました。
1台壊れてもファイルにアクセスでき、修復も行えそうなのがわかりました。とても安心感があります。

記憶域スペースは便利そうな機能です。Windows 10では簡単に設定できて使えるようになります。ただし、今のところ実用的なのは双方向ミラーとシンプルの記憶域だけでね。
パリティは遅くて実用的ではありませんが、HDDの状態を常にモニターでき健全に保たれている事が判るのがメリットです。

パリティを使うならHDD3台とジャーナルディスク2台が最小限の構成になるでしょう。これはかなり敷居が高いです。SATAポートが足りません。
eSATAでのポートマルチプライヤでつなぐのも一つの手ですが、一つのポートの帯域を分けて使うためパフォーマンスは悪いです。外付け3台でプールを作り私が試したところではeSATAよりUSB3.0接続の方が良いパフォーマンスが出ました。
とにかく大量のドライブをどうやってつなぐか?個人用途では大きな問題です。

遅い遅い言ってますがベンチマークも例として紹介しないといけませんね。ですが結果が安定せずどう紹介したらいいか困っています。再現性があまり無いんですよね。
結局、数ギガバイトあるフォルダやファイルをコピーして転送時間で大まかな速度を見る方が実感と合っています。
ざっくりですがジャーナルディスクが無い時は20MB/s以下、ジャーナルディスクを追加後は40MB/s以下といった感じです。
ベンチマークについては後で別の記事にするつもりです。

SSDも追加で1台購入しますので次はSSD2台での性能を見てみます。


コメント

最近のコメント

Threaded Recent Comments will be here.