SSDを増設してSSDx1、HDDx2と内蔵ドライブが3台になったので少し遊んでみます。
異なる速度のHDDx2でRAID 0を組む
Windowsのディスク管理で2台のHDDをストライプボリュームとして構成します。
HDDのひとつは2,000年代中頃から使っていて稼働時間が15,000時間を超えているHGST製。昔のHDDらしく(?)地の底から湧き上がるような重厚なシーク音が特徴。
もう一方は現PC購入時の内蔵ドライブでSeagate製です。燃費志向の直列4気筒エンジンのようなかる〜く味気ない音。
RAIDのベンチマークでは各ドライブのランダムアクセスのいいとこ取りのような結果となりました。高スループット、かつ単一で大容量のドライブが追加費用無しで実現出来ました。RAIDの恩恵です。
ただし、RAID 0はデータが分散して書き込まれるので、1つが故障するともう一方が無事でもデータにはアクセスできなくなります。つまり2台の場合は故障率が倍。だからダメ、というのはシロートさんで、運用が肝心です。万が一の場合に備えてバックアップを取っておくなどのやり方があります。それを考えずにダメと言っているのは受け売りのように聞こえます。
SSDにデータを置く
デジタル一眼レフカメラのRAWデータをSSDに置くと編集作業はどの程度快適なのか?RAWデータは1ファイルあたり25MB前後あります。アプリケーションはキャノンのDPP4です。
やってみたところ、RAID 0のストレージと体感はほとんど変わりません。サムネイルの一覧表示速度に差があるくらいです。
アプリケーションを起動してデータフォルダを選択すると以下の処理が走ります。
- 一枚目をプレビュー表示
- 残りをサムネイル表示
- 一枚目の画面表示用の現像(高解像表示)処理
1の表示はSSDとHDDでほぼ変わらず。
2はSSDが速いけどバックグラウンドで読み込むので操作を待たされない。
3はCPUの演算処理なのでディスクI/Oは関係ない。
転送速度を見ていると確かにSSDは速いのですが、ベンチマークの結果から計算すると、25Mの写真一枚を読み込むのにHDDは約0.2秒、SSDは約0.09秒です。その差は約0.1秒。
一枚目が0.1秒差、その後はアプリケーション利用者の操作には影響しないので、HDDとSSDは体感がたいして変わらないという状況です。これはアプリケーションの設計に負うところも大きいですけど。
以前にこの手の処理にSSDの効果は限定的としていましたがその通りでした。
SDカードからの読込み
公称値90MB/s、USB3.0接続で実効速度が80MB/s超のSDカードからファイルを取り込みます。このときに保存先をSSDとHDD単体とでそれぞれで試してみます。1.6GBのひとつの動画ファイルを転送したところ、以下のようになりました。
40%手前あたりまではSSDが圧倒していますが、それ以降はSSDもHDDもほぼ同じで25MB/s前後。前半の速度の差はキャッシュ容量の差のようです。 ということは、このSSDのキャッシュ(SLCキャッシュ)は600MBほどということ? 空き容量に合わせた動的キャッシュ管理なのかは分かりません。メモリセルの書き換え速度はHDDとたいして変わらないということが実証された形です。
まとめ
以上の結果から、以下の運用が良さそうです。
- システムとアプリケーション、キャッシュやtemp/tmpフォルダはSSD
- データの編集や一時保存はRAID 0のローカルドライブ
- データ保存はNAS(RAID 1で構築済) + バックアップ
写真データを例に取ると以下のように流れます。
SDカード → ローカルのRAID → NAS → バックアップディスク
SDカードをクリアするのはバックアップ正常終了を確認してから。そうすればその前に何かあってもSDカードから復旧出来ます。
運用を工夫すれば、RAID 0ならUPSを用意しないと!ということもないです。
コメント