人生エクソダスしてなにものからも自由になりたかった

遁世したい。でもできない中年男の独白。

今更ながら階層記憶域の導入の是非を検討する

 普通に考えれば、ハードウェアRAIDパリティを組んだ方が圧倒的に良コスパである。

 RAIDカードやエンクロージャーで組むハードウェアRAIDは単体でRAIDを組めるので便利である。というのもマザーボードでもRAIDモードがあるものの、マザーボードに刺したディスク全部がRAIDの対象になってしまうため、シングルで使いたいディスクを混在できないためだ。

 今まで記事で書いてきた”階層記憶域”とか”ミラー高速パリティ”とかはソフトウェアRAIDというものであり、これはWindows上でしか機能しない。これのメリットはマザボRAIDカードをシングルの状態(RAIDなし)の状態で接続しても、「記憶域の管理」で自由に導入するディスクを決められることである。

 しかしながら考えたいのは、果たして記憶域は普段使いしやすいのかということだ。

 記憶域スペースは手持ちのディスクを組み合わせて自由に仮想ストレージを組める。これは事実である。安くて高速なストレージを組める。これは嘘である。

 

 これを考えるきっかけになったのは、そもそも導入にあたって結構HDDとSSD/電源ケーブル/SATAケーブルを買った&買い直したからである。

 記事で書いてきた構成からすると、

[元々あったもの]525GB,500GB/SSD/各1台・8TB/HDD/3台

[買い足したもの]512GB/SSD/2台・8TB/HDD/1台

 である。この内HDDが1台臨終したのでSSD4台・HDD3台で構成した合計したストレージで出来上がった仮想ストレージは[811GBまでは高速の13TBの記憶容量]である。

 追加で掛かった費用も6000円/SSD/2台・14800円/HDD/1台で、合計36800円。これなら普通なら14TB(12.7TB)のHDDを1台買えば済む。そもそも速度は人並みでいいなら記憶域は要らない。

 階層記憶域にするメリットは、”容量はパリティで確保しつつSSDのアクセス速度の恩恵を受ける”ことであり、デメリットは”必要台数が多くなりコストも嵩む”ことである。

 また階層記憶域にはいくつか注文があり、「SSD:HDD=20:80の構成比」「パリティデータが複雑なので1~2割余裕つくって」というものがある

 上のストレージでは25%どころが10%もいってないし、そもそも10TBのキャパシティなら2.5TBキャッシュを作らないといけない計算になる。これは1TBのSSDなら5台、2TBなら2台じゃ足りないので3台必要になる。これにかかる費用は11880円x5台=59400円あるいは22880円x3台=68640円で、個人で試しに導入する金額ではない。

 こういうあたりも階層記憶域がサーバー向けの技術である所以でもあるのだろう。デュアルパリティなら安全・高速というのも導入HDDが8台とか12台なら速度出るのも当たり前だろうと。

 ちなみにHDDを3台でパリティ構成するのはシングル1台よりアクセス速度が劣るのは記憶域だろうがRAIDだろうが一緒だが、記憶域のパリティは本当に遅く、読み300MB/s・書き80MB/sみたいなベンチが良い方で、酷いものだと書き込み10MB/sみたいなレベルもある。

 HDDだけで記憶域をパリティ構成するくらいなら記憶域を使うべきではない。


 とデメリットを書き連ねてみたところで本題である。

 まっさらな状態で階層記憶域を導入するなら、SSD2台・HDD3台構成は本当に本当の最低限であり、SSDの容量確保しづらい部分とHDDのパリティの書き込みがクソ遅いところの悪いところ取りであることを念頭に置いてほしい。

 

 なので、もったいない気分になるがSSD3台(分散ミラー)・HDD3台(パリティ)で想定してみようと思う。

 SSDの500GB台は480GB/500GB/512GBの3種類あるので、計算式 X*3/2*0.83で考えると、各々597.6GB/622.5GB/637.4GBである(※windows上では0.9315倍になるのでここからさらに減る)。0.83の根拠は、1割引かないとそもそも作れないので0.9、最低7%除外すれば性能微増するので0.07、それぞれ引いた結果が0.83である。

 480GBだろうと512GBだろうと価格は6200円台であり、480GBならまだ5980円かなあというところだ。これで考えると、5980*3~6200*3=17940円~18600円となるので3台SSDを買うだけで結構金がかかる。

 ちなみに1TBのSSD2台で考えるなら、960GBのSSDが9480円(キオクシア)、1TBなら10800円というあたりで見れば9480*2~10800*2=18960~21600円となる。この場合、960*0.5*0.83=894GBあるいは1000*0.5*0.83=931.5GBになる。

 HDDの8TBと言えばSeagateのST8000DM004がメジャーだが、これはSMRなのでランダム読み書きとの相性が致命的に悪い。ちょうどWesternDigitalがWD80EAZZというCMR形式のHDDを出してくれたのでこれで計算すると14800*3=44400円となる。

 つまりSSDとHDDを3台ずつ購入すると18600+44400=63000円となり、これは18TBどころが20TBのHDDとかと同レベル(HGST東芝の18TBが5万円台)である。ここまでして手に入れたストレージが[600GB前後は高速、以降80MB/sくらいまで遅くなる13TB]の仮想ストレージである。

 

 正直StoreMIがもてはやされる理由が安価で導入が楽なところにあるのが理解できる。一方StoreMIと違ってCrystalDiskInfoに悪さしないので各々のHDDやSSDのSMART値の情報はチェックできる。

 

 またSSDの導入コストがインパクトがありすぎて印象が薄いが、「パリティでは10~20%のバッファを作ってほしい」という使用不可部分の量が結構バカにならない

 8TBのHDDはwindows上だと8/1.024^4=7.275957614、大体7.27TBだが、ここから15%使わない部分を作ると考えるとその実数は1.09TBである。

 これがHDD3台とかなら3.27TBで、4TBのHDDといい勝負(3.64TB)。外付けHDDの4TBなんか1万円するので結構大きい数字である。パリティの組めるRAIDケースで主流はだいたい4本、多くて8本である。挿入HDDが8TBなら台数*1.09TBぶん階層記憶域の方が目減りするのでRAIDケースで組んだパリティと比べると最大7TB減る

 そして台数が多いほど早くなるのがRAIDである。8台構成のRAID5はシーケンシャルでリード783.9MB/s・ライト951.7MB/s(参考https://note.cman.jp/server/raid/speed/raid5/)である。階層記憶域のミラーSSDは確かに速いが、SSDの切れ目が速度の切れ目である。対してハードウェアRAIDはその心配はしなくていい。

 確かにRAIDケースで大容量のものは値段もビッグだ。しかし仮にRAIDケースが10万円だとしても、記憶域用に2TBのSSDを5枚買っても結局一緒である。しかもSATAポートは困窮しディスク容量も目減りしている。

 そう考えると3.5インチHDDを12台以上使うような構成でもなければ素直にRAIDケースを買って運用した方が良い気がしてくる。


 階層記憶域は個人利用として考えれば本当に高級志向である。速度と容量を両立させようとした結果、パソコンの中を配線まみれにして、しかも長所と短所が裏表に存在する

 14~16TBのHDDが現実的に買いやすい値段(14TB・32800円、16TB・40980円)まで下がってきたことで、大容量といえばRAIDで合体しなければ存在しがたい非現実的だったものが、別にHDD1台買えば完結するという選択の余地があることで勿体ない気分にさせられている。

 ちなみにソフトウェア”RAID”なのでSSDもHDDも導入台数を増やすことで速度を上げることができる。なので大容量ストレージで台数を減らすことは必ずしもメリットではなく、SATAポートの空きを考慮して速度重視にするか空き確保にするか決めることになる。

 もし大容量SSD(4TB/4.5万円、8TB/10万円)なんて高くて買えないし、しかし容量もある程度確保したいという欲張りな願望を持っているなら階層記憶域の導入は…お金と相談して決めてほしい。

 

 

 ちなみにMicrosoftではパリティの利用をおすすめしていない。これは元がWindows”Server”とかAzureとかのサーバー利用だから当然といえば当然だが、要は1台壊れたHDDを変えるためにリペアしてる間に他のディスクが逝けばストレージ自体が臨終するためだ。

 そういうあたりでデュアルパリティの利用を推奨している。が記憶域スペースの言う「デュアルパリティ」というのは3台分パリティデータ要員にする(トリプルじゃねえか)ものなので恐ろしく利用効率が悪い。そういうところも階層記憶域が個人利用でないところでもある。普通に考えれば8TBのHDDを5台使えばミラーリングですら20TBは使えるのに記憶域のデュアルパリティでは16TBしか使えないのだから。

 なお他にもHDDティアを作るときに構文に「-PhysicalDiskRedundancy 2」を追加することが条件だが、この悪条件でデュアルパリティを作りたい数寄者でもない限りどうでもいい話だろう。

 戯れにコストの思考実験をしてみたが、ウンTBのSSDを導入することが如何に虚無的で金が掛かることなのか理解してもらえることと思う。

 

 朗報があるとすれば、SSDミラー部分はキャッシュではなく高速部位であるということだ。例えばSSDミラー1TBHDDパリティ18TBでつくった記憶域プールは19TBである。

 容量的にSSDが必ずしも無駄にならないのは微かな幸せを感じるが、例えば10TBぶんSSDを突っ込んでも使えるのは5TBである。これだけのSSDを用意できるならミラーストライプでもパリティでも組んで単独運用してもいい。おまけのHDD部位も合わせて巨大ストレージを作りたいがために贅を尽くしていると言っても過言ではない。

 そしてそれだとVVAULTの方がJBOD的にSSDを使えるので容量1/2の憂き目もないパリティでHDD部分をー1台ぶんで計算する必要もないし、10%~20%減らす必要もない。容量の事を考えるとつくづくVVAULTの方が得である。基本足し算的に容量を確保できる。ただドライブレターが増えすぎて鬱陶しいだけだ。

 RAIDが構成できるエンクロージャーは数万円(4ベイで3万円、5ベイ以上だと10万円がちらほら見えてくる)する代物であり、ある意味この箱を買う金でSSDを買えばそれらしいものが作れるから記憶域を活用しているところもあるかもしれない。

 VVAULTが他と劣っている部分があるなら「パーティションを組めない」ということぐらいかもしれない。記憶域プールは一応パーティションの作成が可能である。ただしパーティションソフトでボリュームの移動をする時に恐ろしく時間がかかるため、普通のHDDのように考えていると無駄な時間を費やすことになる。新規作成したボリュームにデータを引っ越して、引っ越し元を削除し、ボリュームをリサイズし調節するという手間が必要だ。