【Day26】RAIDと信頼性設計をやさしく解説!

投稿者: | 2025年8月21日

こんにちは!今日は RAIDと信頼性設計 について勉強していきます。
難しそうに見えるけど、「壊れにくくする工夫」「安全に動かす工夫」と考えるとスッと理解できます。


RAID(レイド)とは?

RAIDとは「たくさんのハードディスクをうまく組み合わせて、速くしたり、安全にしたりする技術」です。
パソコンやサーバーでよく使われています。

  • RAID 0(ストライピング)
     速いけど安全ではない。
     例:お菓子を2人で手分けして袋に入れる → 早い!でも1人が落とすと全部ダメ。
  • RAID 1(ミラーリング)
     同じデータを2台にコピーする。
     例:大事な絵を2枚同じように描いておく → 1枚が破れても大丈夫!
  • RAID 3(バイトレベルのパリティ)
    • 仕組み:データをバイトごとに分散して複数のディスクに書き込み、1台をパリティ(誤り検出用)のディスクにする。
    • 長所
      • 連続データ(動画や大容量ファイル)の読み書きが速い。
      • 1台の故障なら復元可能。
    • 短所
      • 小さいデータの読み書きが苦手(全ディスクが同時に動くため)。
      • パリティディスクが1台に集中するので負荷が偏る。
    • 例え:3人で絵本を少しずつ分けて読む。最後の1人が「計算役」で答え合わせをしている。
  • RAID 5
     データを分けて書き込み、「お助け情報(パリティ)」も保存。
     例:3人でブロックを分けて持つ。1人がなくしても、残りとヒントで復元できる。

👉 過去問例
「RAID 1 の特徴はどれか?」
ア. 処理速度を上げるためにデータを分散して記録する
イ. 同じデータを複数のディスクに記録する
ウ. パリティを利用してデータを復元する
エ. すべてのディスクをまとめて一つの容量にする

正解:イ


信頼性設計の考え方

「コンピュータはいつか壊れる」→だからこそ、安心して使えるように工夫することが大事です。

ここでいろんな設計思想が出てきます👇

① フェールセーフ(Fail Safe)

「壊れても安全」
例:信号機が壊れたら赤になる → 事故を防げる。


② フールプルーフ(Fool Proof)

「使う人が間違えても安全」
例:おもちゃのブロックは違う形だと入らない → 間違えても安心。


③ フェールソフト(Fail Soft)

「壊れても一部だけ止めて、全体は動かす」
例:電車が壊れても、一部の車両を外して走れる。


④ フォールトトレランス(Fault Tolerance)

「壊れても問題なく続けられる」
例:遊具で片方のロープが切れても、もう一本が支えて遊び続けられる。


⑤ フォールトアボイダンス(Fault Avoidance)

「そもそも壊れないように作る」
例:おもちゃを丈夫なプラスチックで作って、壊れにくくする。


RAIDと信頼性設計のつながり

RAIDは データを守る仕組み の一つ。
例えば、RAID 1 は「フェールセーフ的な考え方」だし、RAID 5 は「フォールトトレランスに近い設計」です。

システム全体を考えると、

  • RAIDでデータを守る
  • フェールセーフで安全を確保
  • フールプルーフで人のミスを防ぐ
  • フォールトトレランスで壊れても続けられる
  • フォールトアボイダンスでそもそも壊れにくくする

👉 これらを組み合わせることで「信頼できるシステム」が作られるのです。


まとめ

  • RAID … データを速く&安全に扱う工夫
  • フェールセーフ … 壊れても安全
  • フールプルーフ … 人が間違えても安全
  • フェールソフト … 一部壊れても全体は動く
  • フォールトトレランス … 壊れても続けられる
  • フォールトアボイダンス … そもそも壊れないようにする

過去問チェック

「フェールセーフの例はどれか?」
ア. エレベーターが停電時に最寄りの階で停止する
イ. 信号機が停電時に点滅する
ウ. 自動販売機が硬貨を間違えても返却する
エ. RAID 0 によるディスク分散

👉 正解:イ


💡 幼稚園で遊ぶときの「安全対策」を思い浮かべると、信頼性設計の考え方がグッと分かりやすくなります!