コンテンツにスキップ

RAID

出典: フリー百科事典『ウィキペディア(Wikipedia)』

RAIDRedundant Arrays of Inexpensive Disks Redundant Arrays of Independent Disks[1]1[2]RAID

RAID

概要

[編集]

1988, Garth A. Gibson, Randy H. KatzA Case for Redundant Arrays of Inexpensive Disks (RAID)[3]

 (Inexpensive Disk) RAID 1RAID 55

RAIDRAID 0[4]

6RAID 2RAID 3,4RAID[5]RAID 0RAID 1RAID 53RAID 5RAID 6RAID 5

    32

RAID使24

RAID[]

普及の要因

[編集]
  • デジタルデータの重要性が高まっているため
  • HDD(ハードディスクドライブ)が大容量化し、一般ユーザにとっても故障時に失われるデータ量を無視できなくなったため
  • HDDやRAID関連製品も低価格化、RAID機能のチップセットへの内蔵(HDDさえあれば追加投資無しでRAIDが利用できる)が進んでいるため

注意点

[編集]

RAIDは複数のHDDを用いて、ディスクアレイの可用性を高める技術である。そのため、ファイルの誤消去など人為的なもの、コンピュータウイルスによるファイルの破壊、ファイルシステムの不整合など、ソフトウェア的な障害には対応できない。またHDDが同時期に複数故障する、リビルド時に他のHDDが障害を起こす等、単体のHDDに比べれば非常に低いがディスクアレイも故障の可能性を持つ。

バックアップは、データを静的な状態で、一定期間、複数世代、保存するものであり、RAIDとは役割が異なる。データはRAIDとバックアップの両者を組みあわせて運用することにより、サービスの継続性を保証しつつ、高い安全性を持って保全することができる。

RAIDの方式

[編集]

RAIDを実装する方法としては、ハードウェアで実現する方法(ハードウェア方式)とソフトウェアで実現する方法(ソフトウェア方式)がある。この2方式は明確に分類できるものではなく、中間的な方式がいくつか存在する。

ハードウェア方式

[編集]

コントローラカード

[編集]
シリアルATA RAIDカード

RAIDRAID[6]

RAIDCPU[7]OSRAID

RAIDRAID[8]OSRAID使CPUOS

ディスクアレイユニット

[編集]

複数のディスクを搭載出来るケースにRAIDを搭載したハードウェア。コンピュータやOS側からは単なるSCSIファイバーチャネルのドライブとして見えるため、特別なドライバが必要なく、CPUへの負荷が全くない。ディスクアレイユニットを接続したい装置に必要な外部接続インタフェースがすでにあれば装置の筐体を開けることもなく、ケーブルをつなぐだけで使えるようになる。

ソフトウェア方式

[編集]

OSIDESCSIFC CPU[7]OSCPURAID

WindowsRAID[9]Linux2.4RAID0/1/4/5/6[10]FreeBSDgmirror[11]ZFSRAIDRAID5RAID6RAID-ZRAID-Z2RAID[12]RAIDAdaptecRAIDHostRAIDRAID[13]

RAID0/1/0+1/5MUX/DEMUXCPUI/OI/OI/O[]

電源問題

[編集]

ハードディスクの必要台数が増えるため、特にRAIDコントローラカードを用いて装置内部にハードディスクを取り付けている場合、電源がハードディスク台数分の負担に耐えられるか注意すべきである。

ハードディスクは突入電流等により起動時に最も電力を必要とするため、スタッガードスピンアップ(各ディスクに時間差を置いて起動する)機能を搭載しているRAIDコントローラもある[14]

ライトホール問題

[編集]

RAID 5HDD1RAID RAID 2RAIDHDDRAID HDDHDDRAID

2RAID 1RAIDHDD AHDD BHDDHDD AHDD B() HDD AHDD BHDD AHDD B HDD RAIDHDD

HDDHDD RAIDRAID

RAID 1HDDHDD BBHDD AHDD BHDD A' RAID 3456 )

NVRAMRAID HDD RAIDRAID

RAID 2 RAID-ZCopyOnWrite

RAIDレベル

[編集]

RAID 0RAID 67RAID 0RAID 1RAID 5RAID 6RAID使

RAID

RAID 1RAID 5RAID 0RAID 0

RAID

RAID 1RAID 5RAID 0

RAID 0

[編集]
RAID 0の概念図。一つのファイルをA1からA8に分割して、これを複数のディスクに同時に分散して書き込む。

RAID 0RAIDRAID2

11%2RAID 02% (1-0.99*0.99=0.0199) 2

RAID 0RAID 15









調

RAID 1

[編集]
RAID 1の概念図。データをA1-4に分割して同じデータを同時に書き込む。

RAID 1RAID2



1%2RAID 10.01% (0.01*0.01=0.0001) 1/100

RAID 5



OSNetware 2.x3.x[]

Windows NTRAID 1Windows Server 2003[]


OSRAID/使




N1/N




RAID 01 (0+1) および RAID 10 (1+0)

[編集]
RAID 0+1 (RAID 01)
RAID 1+0 (RAID 10)

RAID 0RAID 1RAID 0+1 (RAID 01) RAID 1+0 (RAID 10) RAID 0RAID 14

RAID 0RAID 1 RAID 1RAID 0RAID 1使2

RAID 0RAID 101

RAID 0+1 : 

RAID 1+0 : 

RAID 1+0RAID 0+1RAID 1RAID 01RAID 1+0RAID 0RAID 12[15]RAID 1+0[16]RAID 0+1[17]RAID 1+0

RAID 2

[編集]

RAID 21[5]HDDRAID 2

5


RAID53[5]


[18]

使52[18]7415113126RAID 1

RAID 3: ビット/バイト単位での専用パリティドライブ

[編集]
RAID 3

RAID 3RAID 2

31

RAID 3RAID 3
  • 長所
    • パリティを訂正符号として用いているためRAID 2に比較して計算コストが低い。
    • 構成ドライブ数-1個の容量が確保できるため、ディスク容量の無駄を最小限に押さえられる。
  • 短所
    • ビット/バイト単位でアクセスを行うためI/Oの効率が悪い。
    • パリティドライブが書き込み処理時のボトルネックとなる。

RAID 4: ブロック単位での専用パリティドライブ

[編集]
RAID 4

RAID 4RAID 3I/OI/O3RAID5RAID4


RAID 3I/O


寿RAID5

RAID 5: ブロック単位でのパリティ分散記録

[編集]
RAID 5

RAID 5使RAID 3RAID 43RAID1RAID1+0使RAID0I/OI/O


RAID 3RAID 4



1


RAIDI/OI/ORAID0

RAID 5RAIDRAIDRAID 4RAID 6RAID-Z



1

2RAID63

1RAID 01RAID 6

水平パリティによる分散記録

[編集]

RAID 5使XOR (PH) 1XOR AnBnA1 B1 A2 B2 A3 B3

A1/B1/PH1/
A2/PH2/B2/
PH3/A3/B3/


PH1=A1+B1
PH2=A2+B2
PH3=A3+B3

RAID 5を用いた組み合わせ

[編集]

RAID 5に速度面、耐障害性などでの不満がある場合、RAID 0+1や1+0と同様に、他のRAIDと組み合わせることで弱点をカバーできる。

RAID 5+0とRAID 0+5

[編集]

RAID 5使RAID 0RAID 5+0RAID 0+56

RAID 1+00+1RAID 5RAID 0RAID 5RAID 5+0
  • ドライブ故障への耐性に優れる[19]
  • 読み書きの高速性を利点とするRAID 0を外側にすることで、書き込み速度の向上効果がより強く期待できる。

RAID 5+1とRAID 1+5

[編集]

RAID 6RAID 5+0RAID 0+56

RAID 5+1RAID 1+53RAID 1+5[20]

便RAID 5

RAID 5+5

[編集]

RAID 5RAID 5RAID 5+59

RAID 5+11+53RAID 5+11+5[21]

3RAID 5+5+54RAID 5+5+5+5RAID 5+5+57RAID 5+5+5+515[22]

RAID 6: ブロック単位・複数パリティ分散記録

[編集]
RAID 6

RAID 62RAID222241RAID51P+QRAID 132RAID 6


RAID 5
RAID 3RAID 4



RAID 51RAID 5


RAID 5

RAID 5

RAID 5

3

EMC CLARiX/CLARiiON RAID6 EVENODD使X86XOR

RAID 6RAIDRAID 5

RAID 6+0RAID 0+6

RAID 682

RAID 6+1RAID 1+6

RAID 685

RAID 6+5RAID 5+6

RAID 6125

RAID 6+6

RAID 6168

対角線パリティの計算方法

[編集]

RAID 6RAID 5 (PH)  (PD) 使

4RAID6

PH1/B1 /C1 /PD1
A2 /PH2/C2 /PD2
A3 /B3 /PH3/PD3


PD1=PH1+C2+B3
PD2=B1+A2+PH3
PD3=C1+PH2+A3

P+Qパリティの計算方法

[編集]

PRAID5XORQGF(2) 8CRC8CRC255+2

CRC



ABCDPQ便

P=A+B+C+D RAID5

Q=CRC(A+B*2+C*4+D*8)

AA1BCDPQ1CRC(x) xCRCCRC== (+)  (*) 



ABCDRAID5PQABCD

ABCDQPRAID5Q

ABCDPQ8

ABCDPQ

BD

P=A+B+C+D

P-(A+C)=B+D

P+A+C=B+D XOR

Q=CRC(A+B*2+C*4+D*8)

Q=CRC(A+C*4)+CRC(B*2+D*8) CRC (XOR) 

Q-CRC(A+C*4)=CRC(B*2+D*8)

Q+CRC(A+C*4)=CRC(B*2+D*8) XOR



P+A+C=B+D

P+A+C-B=D

P+A+C+B=D



Q+CRC(A+C*4)=CRC(B*2+D*8)

Q+CRC(A+C*4)=CRC(B*2+(P+A+C+B)*8)

Q+CRC(A+C*4)=CRC(B*2+(P+A+C)*8+B*8)

Q+CRC(A+C*4)=CRC(B*2+B*8+(P+A+C)*8)

Q+CRC(A+C*4)=CRC(B*(2+8)+(P+A+C)*8)

Q+CRC(A+C*4)=CRC(B*10+(P+A+C)*8)

Q+CRC(A+C*4)=CRC(B*10+(P+A+C)*8)

Q+CRC(A+C*4)=CRC(B*10)+CRC((P+A+C)*8)

Q+CRC(A+C*4)-CRC((P+A+C)*8)=CRC(B*10)

Q+CRC(A+C*4)+CRC((P+A+C)*8)=CRC(B*10)

CRC10B101010

P+A+C+B=D

D

RAID Z

[編集]

RAID ZはRAID 5やRAID 6と似た機構を持ち、速度と耐障害性を向上させたもの。 Oracle社のSolarisFreeBSDにおいて、ZFSとしてRAID Z1,Z2,Z3が実用化されている。

RAID 5やRAID 6ではパリティ更新時に何らかの障害が発生するとデータとパリティが一致しなくなり、システム上では正常に見えても内部ではデータ破壊が進んでいるという状態(サイレントクラッシュ)に陥るという致命的な欠点がある。またストライプ幅より小さいデータを書き込む際にも、全体のデータとパリティを読み込んで再計算をする必要があるため、パフォーマンスが著しく低下するという弱点も持っている。

RAID Zでは常にストライプ全体への書き込みを行い、コピーオンライトと組み合わせることでRAID 5やRAID 6が持つサイレントクラッシュの問題を完全に回避できる。

計算方法(RAID0, 1, 10, 5, 6)

[編集]
RAID容量計算式
RAIDの名前 RAIDの計算式 RAIDの最低必要台数
RAID0 HDDの台数xHDDの容量 2台以上
RAID1 HDDの台数xHDDの容量/2 2台
RAID10 HDDの台数xHDDの容量/2 2台以上
RAID5 (HDDの台数-1)xHDDの容量 3台以上
RAID6 (HDDの台数-2)xHDDの容量 4台以上
Option Explicit

Dim ans, m, p
Dim raid0, raid1, raid1e, raid10, raid5, raid50, raid6, gb

m = InputBox("HDD(SSD)の容量を入力してください。(GB)", "入力")
p = InputBox("HDDの本数を入力してください。", "入力")
MsgBox("RAIDの容量を計算できます。")

raid0 = Round(m * p)
raid1 = Round(m * p / 2)
raid1e = Round(m * p / 2)
raid10 = Round(m * p / 2)
raid5 = Round(m * p - m)
raid6 = Round(m * p - (m * 2))
gb = Round(m *p)

ans =『raid0:』& raid0 &『GB 1本から』& vbCr _
    &『raid1:』& raid1 & "GB 2本から2本まで" & vbCr _
    &『raid1E:』& raid1e &『GB 3本から』& vbCr _
    &『raid10:』& raid10 & "GB 2本から 偶数本"&vbCr _
    &『raid5:』& raid5 & "GB 3本から"&vbCr _
    &『raid6:』& raid6 & "GB 4本から"&vbCr _
    &『最大容量:』& gb & "GB"&vbCr _
    &『HDDの容量:』& m & "GB"&vbCr _
    &『HDDの本数:』& p & "本"
MsgBox ans, , "答え"

(.vbs)RAID

RAID0,1,1e,10,5,6

Defunct Disk Drive

[編集]

無効ディスクドライブ (DDDDefunct Disk Drive) とは、RAIDを構成するディスクにおいて何らかの障害が発生し、RAIDの構成ディスクから外されたディスクないしその状態を示す[23]

Spare Disk Drive

[編集]

 (Spare Disk Drive) RAID使使

43RAID 5RAID 5RAID 5

4RAID 6

: RAID 5RAID 6寿

: resync20131TB10

43RAID 1

RAID

非RAID設計

[編集]

RAID使RAID使

JBOD (Just a Bunch Of Disks) [24]

 (SPANNING) [25]

参考文献

[編集]

脚注

[編集]


(一)^ Redundant Arrays of Inexpensive DisksRedundant Array of Inexpensive DisksRedundant Arrays of Independent Disks: EX-word XD-SF6200NE

(二)^ & p.530

(三)^ Patterson(1988)

(四)^ & () p.530

(五)^ abc使RAID. 201817

(六)^ RAID  WHAT IS RAID? AND SETUP GUIDE FOR FIRST TIMERS. 201818

(七)^ abRAIDRAID. 201817

(八)^ DELLPERC S

(九)^   (RAID 0) . 201817

(十)^ The Software-RAID HOWTO. 201817

(11)^ FreeBSD Manual Pages. 201817

(12)^ Intel Matrix Storage Manager 8.x User's Manual. 201817

(13)^ RAIDHostRAIDAdaptec Support Knowledgebase[]

(14)^ Enabling and Setting Up Staggered Spin-up. 201817

(15)^ RAID 0+1RAID 1+042RAID 0+12/3RAID 1+01/3

(16)^ 1682RAID 0+11+02RAID 0+18/15RAID 1+01/15

(17)^ RAID 1+01RAID 0+1RAID 0

(18)^ ab2RAID 2RAID 3RAID 4. 201818

(19)^ 84RAID 5×2RAID 0RAID 0+55+02RAID 0+56/7RAID 5+03/7

(20)^ 84RAID 5×2RAID 1RAID 1+55+14RAID 1+53/35RAID 5+118/35

(21)^ 16RAID 1+55+18RAID 5×2RAID 1RAID 5+54RAID 5×4RAID 5RAID 1+55+175+594RAID 5+1196/455RAID 1+57/455RAID 5+557/455

(22)^ RAID 6+6RAID 5+5+58644RAID 5×4RAID 5×4RAID 5RAID 5+5+5278RAID 6×8RAID 6RAID 6+636

(23)^ ServeRAID - Recovery Procedures for DDD Drives. 201817

(24)^ RAID (2/3). 201817

(25)^ RAID. 201817

関連項目

[編集]

外部リンク

[編集]