ストレージ冗長化といえばRAIDですが、「余っているSDカードでRAIDを組めば安くていいのでは?」と考える人もいるかもしれません。
実際自分もGoPROで使っていたSDが結構余っており「これRAIDくめるんじゃね?」と考えていたのです。アマゾンなんかでも「SD RAID」と調べるとそれ用の商品がでてくるんですよね。
しかしいろいろ調べてみたところ、結論から言うと、SDカードでRAIDを組むのはおすすめできそうにありませんでした…。
理由はいくつかあります。
SDカードはRAID前提で作られていない
まず大前提として、SDカードはRAID構成を想定したメディアではありません。
- 書き込み寿命が短い
- 内部構造がブラックボックス
- エラー訂正や状態報告が弱い
RAIDは「ディスクの状態を正しく把握できる」ことが前提になりますが、SDカードはこの点がかなり弱いとのことです。
同時故障が起きやすい
RAIDの前提は「同時に壊れにくい」ことです。ですがSDカードは、
- 同じメーカー
- 同じロット
- 同じ使用履歴
になりがちです。
結果として、同じタイミングで劣化が進み、まとめて死ぬという事故が起こりやすくなります。
これはRAIDとしては致命的ですよね…。
書き込み特性がRAIDと相性が悪い
SDカードは小さなランダム書き込みが苦手です。RAIDを組むと、
- メタデータ更新
- 同期書き込み
- ジャーナリング
といった書き込みが増えます。
これがSDカードの寿命を一気に削ります。冗長化のつもりが、寿命を縮めてしまうことになってしまうのです。
障害時の復旧が地獄
RAIDで一番大事なのは「壊れたときの挙動」です。
SDカードの場合、
- ある日突然read onlyになる
- 一部のブロックだけ化ける
- OSから消えたり戻ったりする
こういう中途半端な壊れ方をします。
RAIDコントローラやOSから見ると「正常なのか異常なのか判断できない」状態になり、復旧がかなり面倒になります。
速度も大して出ない
RAIDを組めば速くなる、という期待もありますが、SDカードではあまり意味がありません。
- コントローラが弱い
- I/O待ちが多い
- USB接続がボトルネック
結果として、RAIDを組んだ割に体感速度はほぼ変わらない、ということが多いです。早さ出せないならRAID組む意味ないじゃないか…。
代替案は普通にある
もし目的が「壊れにくくしたい」なら、
- 定期バックアップ
- SSDやHDDを1台使う
- ミラー用途ならUSB-SATA変換+SSD
この方が安全で、管理も楽です。
SDカードは「消耗品」と割り切って使うのが正解です。
まとめ
SDカードでRAIDを組まない方がいい理由は、
- RAID前提の設計ではない
- 同時故障リスクが高い
- 書き込みで寿命が一気に減る
- 障害時の復旧が難しい
- 速度メリットも薄い
実験や勉強目的ならアリですが、
実運用では素直に別の構成を選んだ方が幸せになれそうですね…。

コメント