サーバーやネットワークについて勉強したことをまとめます。
1.サーバーとは何か
2.サーバーの種類
3.パーミッションについて
4.RAIDについて
5.TCP/IPについて
長くなるので、投稿を分けます。
この記事では、4.RAIDについてを記載していきます。
##RAIDとは
RAIDとは、サーバー用のハードディスクに使われる技術です。
具体的には、ハードディスクを複数台用意し、1台が故障してもサーバーの技術を止めないように
する技術のことをいいます。
また、この技術により、容量や速度の向上ができるメリットもあります。
※ハードディスクとは
PCやサーバーの部品のひとつで、電源を切ってからも保持し続ける情報を記憶する装置。
(メモリは電源を切ると情報が消える。)
サーバーは、複数の人が利用しています。
そのため、ハードディスクが故障してデータを紛失してしまったり、停電などでサーバーがダウンしたりすると多大な迷惑が掛かってしまいます。
そこで、データを消失せずにサーバーを継続稼働させるため、複数台のハードディスクを用意しておき、1台が故障しても問題ない状態にしておく技術を備えています。
このように、安全性のために機器を多重化しておくことを、「冗長化」といいます。
##RAIDの種類
- ● RAID0 (ストライピング)
- 高速化と大容量化に特化したRAIDです。
複数台のハードディスクをRAIDコントローラーで束ね、1台のハードディスクのように見せかけることで、データの読み書きを分散します(分散処理)。
データを細切れにして、ハードディスクの台数分に分割して書き込むため、高速な処理が可能となります。
このように、データを分散して複数台のハードディスクに書き込む操作を「ストライピング」といいます。
また、複数のハードディスクを連結して1台のように扱うため、
1台の容量xハードディスク台数=合計容量
として利用できるため、大容量化できます。デメリットは、複数台のハードディスクのうち、1台でも故障すると全てのデータが失われることです。
(複数のハードディスクを連結しているため) - ● RAID1(ミラーリング)
- 安全第一のRAIDです。
1台のハードディスクの複製を丸ごともう1台用意することで、1台が壊れてもデータが消失することはありませんが、人間が使用できるのは1台だけのため、容量も速度も変わりません。
このように、データ対のディスクに複写する動作を「ミラーリング」といいます。
- ● RAID5(パリティ付きストライピング)
- 速度、大容量化向上+最低限の保証対策をもったRAIDです。
RAID0やRAID1は、最低2台のハードディスクで構成できますが、RAID5は最低3台のハードディスクが必要です。
3台のうち、1台が故障してもデータは損失せず、2台めの故障でデータが全損します。
ハードディスクが故障した場合に、故障したハードディスクのデータを修復するための「パリティ」というデータを分散処理の過程で生成します。
ハードディスクの台数分分散処理するので、処理速度は高まりますが、パリティデータを書き込む分、RAID0より速度は低下します。RAID0と同様にハードディスクを連結し、1台のハードディスクとして扱うため容量は増えますが、パリティデータを書き込む分、RAID0よりは少なくなります。
- ● RAID6(ダブルパリティ)
- RAID5の安全性が増したバージョンのRAIDです。
RAID6は最低**4**台のハードディスクを必要とします。
4台のうち、2台が故障してもデータは損失せず、3台めの故障でデータが全損します。
安全性はRAID5よりも高いですが、RAID0と同様にハードディスクを連結し、1台のハードディスクとして扱うため容量は増えますが、安全対策用にディスクの容量を多く使うため、人間が使える容量はRAID5よりも少なくなります。
- ● RAID10(RAID01)
- RAID1とRAID0を組み合わせたRAIDです。
RAID10は最低4台のハードディスクを必要とします。
そのうちの2台ずつを1つのペアにしてRAID1でミラーリングします。
この2つのペアをRAID0でストライピングすることで、安全性と高速化を両立しています。
各ペアの中で1台ずつ、計2台が故障してもデータは損失せず、1つのぺア内で2台が故障すると、
データが全損します。
RAID6がどのディスクでも2台までの故障は耐えられるのに対し、RAID10は故障するディスクを選ぶため、安全性は少し劣ります。2つのペアが連結されて1つのハードディスクとして扱うため、容量は増加しますが、
分散データをミラーリングするため、容量はRAID0の半分しか使用できません。
安全性・容量はRAID6に劣りますが、復旧の際にはRAID5やRAID6よりもサーバーやハードディスクの
負担が少なくすみます。※RAID5、RAID6はパリティデータを利用しますが、RAID10は使用しません。
パリティデータを取り扱う際は、「パリティ計算」という作業を行って復旧データを書き戻すことになり、復旧時には、それがサーバーやハードディスクの負担となります。
(故障したハードディスクを交換し、復旧させることを「リビルド」といいます。)ハードディスクの台数が増える分費用がかさむので、RAID6、RAID10はこの中では最も高額になります。
<各RAIDの比較>
大容量化 | 高速化 | 安全性 | 復旧の負荷の少なさ | 費用 | |
---|---|---|---|---|---|
RAID0 | ◎ | ◎ | × | 〇 | ◎ |
RAID1 | × | × | ◎ | 〇 | ◎ |
RAID5 | 〇 | 〇 | 〇 | △ | 〇 |
RAID6 | △ | △ | ◎ | △ | △ |
RAID10 | △ | ◎ | ◎ | ◎ | △ |
※比較のために中間のものを△で表していますが、向上が見込めないわけではありません。
価格は◎が安いものを表しています。
##参考資料
・「おうちで学べるサーバのきほん」著:木下肇 翔泳社出版 2017年