1
00:00:06,720 --> 00:00:08,700
- [Instructor] There
are many types of RAID

2
00:00:08,700 --> 00:00:12,363
as shown by the myriad versions available,

3
00:00:13,350 --> 00:00:18,350
RAID zero, RAID one,
five, six, one plus zero,

4
00:00:19,290 --> 00:00:21,240
and on and on and on.

5
00:00:21,240 --> 00:00:24,300
You rarely see two through four.

6
00:00:24,300 --> 00:00:27,990
Those are parity types of
RAID that have been completely

7
00:00:27,990 --> 00:00:31,743
eclipsed by five and six
so you rarely see those.

8
00:00:32,700 --> 00:00:35,550
And while they are all redundant,

9
00:00:35,550 --> 00:00:39,330
not all are truly fault tolerant.

10
00:00:39,330 --> 00:00:42,270
Redundant means that
you have more than one.

11
00:00:42,270 --> 00:00:47,160
Fault tolerant means that
you can survive a failure

12
00:00:47,160 --> 00:00:49,260
and still get access to your data.

13
00:00:49,260 --> 00:00:51,060
And that's what you want.

14
00:00:51,060 --> 00:00:55,050
For example, RAID zero
is not fault tolerant.

15
00:00:55,050 --> 00:00:57,390
RAID zero is just known as striping.

16
00:00:57,390 --> 00:01:00,390
You Stripe data across multiple drives

17
00:01:00,390 --> 00:01:03,300
to increase speed and performance.

18
00:01:03,300 --> 00:01:05,040
So we don't really use RAID zero

19
00:01:05,040 --> 00:01:07,260
if we want something fault tolerant,

20
00:01:07,260 --> 00:01:09,840
because if one drive was to fail,

21
00:01:09,840 --> 00:01:11,820
we would lose all of the data.

22
00:01:11,820 --> 00:01:15,240
Instead, we'll go for RAID
types such as RAID one,

23
00:01:15,240 --> 00:01:18,060
which is mirroring and RAID five which

24
00:01:18,060 --> 00:01:20,130
is striping with parity.

25
00:01:20,130 --> 00:01:24,120
These are very common types
of fault tolerant RAID.

26
00:01:24,120 --> 00:01:28,410
They can survive a fault or a failure

27
00:01:28,410 --> 00:01:31,473
and keep supplying data to the users.

28
00:01:32,460 --> 00:01:35,463
Let's describe those two
in a little detail now.

29
00:01:37,380 --> 00:01:41,010
RAID one is known as mirroring.

30
00:01:41,010 --> 00:01:43,350
It requires two drives which should be

31
00:01:43,350 --> 00:01:45,810
of the same make and model.

32
00:01:45,810 --> 00:01:50,250
For example, you would want the
same Western digital drives,

33
00:01:50,250 --> 00:01:52,563
within the same blue series.

34
00:01:53,670 --> 00:01:57,420
All data is written to both of the drives.

35
00:01:57,420 --> 00:01:58,563
It's mirrored.

36
00:01:59,580 --> 00:02:02,220
If one drive fails,
then the other continues

37
00:02:02,220 --> 00:02:05,583
to function offering that
fault tolerance that you want.

38
00:02:07,260 --> 00:02:11,250
Data is normally read from only one drive.

39
00:02:11,250 --> 00:02:14,190
So in that respect, you
get the same performance

40
00:02:14,190 --> 00:02:17,130
as you would in a single drive system,

41
00:02:17,130 --> 00:02:19,710
but when you write the data to the mirror,

42
00:02:19,710 --> 00:02:22,080
it takes a little longer
'cause you're writing

43
00:02:22,080 --> 00:02:24,243
to two drives at the same time.

44
00:02:25,380 --> 00:02:27,690
Let's show an illustration of this.

45
00:02:27,690 --> 00:02:31,290
Here, we have two discs,
disc one and disc two each

46
00:02:31,290 --> 00:02:34,470
of which are 500 gigabytes
and they're connected

47
00:02:34,470 --> 00:02:37,170
to a RAID controller.

48
00:02:37,170 --> 00:02:41,130
And quite often the controller
is just an adapter card,

49
00:02:41,130 --> 00:02:44,460
could be a PCI express by one card

50
00:02:44,460 --> 00:02:48,570
or it could be an integrated
device within your motherboard.

51
00:02:48,570 --> 00:02:52,230
When the mirror is created, the two drives

52
00:02:52,230 --> 00:02:54,060
basically become one.

53
00:02:54,060 --> 00:02:58,050
They're collectively known
as a single volume letter.

54
00:02:58,050 --> 00:03:01,020
In this case, we chose M, M for mirror,

55
00:03:01,020 --> 00:03:02,670
but you can choose
whatever letter you want

56
00:03:02,670 --> 00:03:04,980
as long as it's not been used yet.

57
00:03:04,980 --> 00:03:08,430
One of the issues you might
find with RAID one arrays,

58
00:03:08,430 --> 00:03:12,210
is that the controller acts
as a single point of failure.

59
00:03:12,210 --> 00:03:17,210
And so you could create a new
configuration where each disc

60
00:03:17,340 --> 00:03:20,760
is connected to a separate controller.

61
00:03:20,760 --> 00:03:23,940
And this is known as disc duplexing.

62
00:03:23,940 --> 00:03:26,860
So you have even more fault
tolerance at this point

63
00:03:28,650 --> 00:03:32,010
RAID arrays can be
controlled through hardware

64
00:03:32,010 --> 00:03:33,453
or through software.

65
00:03:34,500 --> 00:03:38,730
An example of hardware would
be using a RAID adapter card

66
00:03:38,730 --> 00:03:42,900
as we mentioned before, where
a RAID enabled motherboard

67
00:03:42,900 --> 00:03:45,600
and the array is created within the card

68
00:03:45,600 --> 00:03:47,610
or the motherboard's firmware.

69
00:03:47,610 --> 00:03:50,913
This is done outside of
the operating system.

70
00:03:52,020 --> 00:03:54,510
An example of software would be to create

71
00:03:54,510 --> 00:03:57,600
the array in compliant
versions of Windows,

72
00:03:57,600 --> 00:04:00,693
say within the disc
management console Window.

73
00:04:02,520 --> 00:04:05,550
Let's show an actual RAID one array

74
00:04:05,550 --> 00:04:07,380
that was created within Windows

75
00:04:07,380 --> 00:04:08,880
and then we'll show one that's created

76
00:04:08,880 --> 00:04:11,163
in firmware on a separate system.

77
00:04:14,400 --> 00:04:18,240
Here's an example of a
RAID one array controlled

78
00:04:18,240 --> 00:04:20,670
by software in Windows.

79
00:04:20,670 --> 00:04:22,380
And it's controlled within the disc

80
00:04:22,380 --> 00:04:24,540
management console Window.

81
00:04:24,540 --> 00:04:27,330
Here, we have our list
of volumes, for example,

82
00:04:27,330 --> 00:04:30,930
the C volume which is
on its own hard drive.

83
00:04:30,930 --> 00:04:33,303
And that's where the
operating system lives.

84
00:04:34,170 --> 00:04:37,380
And then we have the M
volume which is the mirror

85
00:04:37,380 --> 00:04:41,010
and that is comprised of two other discs,

86
00:04:41,010 --> 00:04:43,260
disc two and disc three.

87
00:04:43,260 --> 00:04:46,230
And you can see here,
the reddish brown header,

88
00:04:46,230 --> 00:04:48,960
indicates a mirrored volume.

89
00:04:48,960 --> 00:04:51,090
So M is the mirrored volume.

90
00:04:51,090 --> 00:04:54,630
Any data that is written
to this volume is written

91
00:04:54,630 --> 00:04:57,303
to both drives simultaneously.

92
00:04:58,530 --> 00:05:00,120
When it's read from the volume,

93
00:05:00,120 --> 00:05:03,840
it just reads from the first
volume in the mirror, disc two.

94
00:05:03,840 --> 00:05:06,450
If one disc was to fail and most likely

95
00:05:06,450 --> 00:05:09,300
that's the lower number in the mirror,

96
00:05:09,300 --> 00:05:11,610
disc two would probably
be the first to fail,

97
00:05:11,610 --> 00:05:14,970
but if that was to fail, then
the mirror would be broken.

98
00:05:14,970 --> 00:05:18,450
However, users would still be able to read

99
00:05:18,450 --> 00:05:21,120
and write data from disc three.

100
00:05:21,120 --> 00:05:23,620
The M volume would continue to function

101
00:05:24,600 --> 00:05:28,410
and that is the fault
tolerant portion of RAID one,

102
00:05:28,410 --> 00:05:29,670
but we would need to fix it.

103
00:05:29,670 --> 00:05:34,470
We'd need to replace
that disc two physically

104
00:05:34,470 --> 00:05:38,370
and then rebuild the mirror
which would then copy all

105
00:05:38,370 --> 00:05:42,750
the data from disc three to disc two

106
00:05:42,750 --> 00:05:44,790
and then it would resynchronize

107
00:05:44,790 --> 00:05:46,740
and then we would have our mirror back.

108
00:05:48,300 --> 00:05:51,180
Now, here's an example of a RAID one array

109
00:05:51,180 --> 00:05:53,550
controlled by firmware.

110
00:05:53,550 --> 00:05:56,640
This is Intel Rapid Storage Technology.

111
00:05:56,640 --> 00:06:01,640
It's a built in RAID controller
within the motherboard.

112
00:06:01,860 --> 00:06:05,240
This motherboard can handle
RAID one and can do RAID five.

113
00:06:05,240 --> 00:06:08,340
In this case, I have a RAID one array.

114
00:06:08,340 --> 00:06:13,340
There's two Western digital
drives working in concert.

115
00:06:13,680 --> 00:06:16,860
Each one is one terabyte
that shows up here

116
00:06:16,860 --> 00:06:19,290
as 931 gigabytes.

117
00:06:19,290 --> 00:06:22,563
And it shows you that it is
indeed a RAID one mirror.

118
00:06:23,460 --> 00:06:28,460
If this mirror was to
break, if it was to fail,

119
00:06:29,010 --> 00:06:31,320
we would have to fix it here.

120
00:06:31,320 --> 00:06:34,890
We would have to do recovery
here and not in Windows.

121
00:06:34,890 --> 00:06:38,520
If we were to take a look at
the volume that was created

122
00:06:38,520 --> 00:06:43,410
for this RAID one mirror in
Windows in disc management,

123
00:06:43,410 --> 00:06:46,770
we would see it would just be one drive.

124
00:06:46,770 --> 00:06:50,340
It would show up as one disc, not as two

125
00:06:50,340 --> 00:06:51,597
as you can see here.

126
00:06:51,597 --> 00:06:54,480
And this is the disc
management Window again.

127
00:06:54,480 --> 00:06:59,480
Data E is that mirror, but
it only shows as one disc.

128
00:07:00,720 --> 00:07:03,330
So you don't actually know that you have a

129
00:07:03,330 --> 00:07:05,100
mirror running here.

130
00:07:05,100 --> 00:07:07,560
If you look at it from Windows,

131
00:07:07,560 --> 00:07:11,100
you would have to look
at the discs individually

132
00:07:11,100 --> 00:07:14,010
within the BIOS or within the firmware.

133
00:07:14,010 --> 00:07:16,290
And again, if it was to fail, you'd have

134
00:07:16,290 --> 00:07:19,323
to rebuild it within the firmware itself.

135
00:07:20,190 --> 00:07:22,950
And to get into that firmware for Intel,

136
00:07:22,950 --> 00:07:25,560
it's usually Control + I, and you press

137
00:07:25,560 --> 00:07:28,500
that before you would
even get into the BIOS.

138
00:07:28,500 --> 00:07:31,050
Your F2 to get into an Intel BIOS.

139
00:07:31,050 --> 00:07:35,640
You press the Control + I
to get into the firmware

140
00:07:35,640 --> 00:07:39,030
for the RAID adapter before that.

141
00:07:39,030 --> 00:07:41,220
And that's again, Control + I.

142
00:07:41,220 --> 00:07:42,813
So that's RAID one.

143
00:07:44,220 --> 00:07:47,010
Now, we move into RAID
five, which is known

144
00:07:47,010 --> 00:07:49,860
as striping with parity.

145
00:07:49,860 --> 00:07:54,540
With RAID zero, you Stripe
data across multiple drives

146
00:07:54,540 --> 00:07:56,310
to increase performance.

147
00:07:56,310 --> 00:07:58,860
And you do this with RAID five as well,

148
00:07:58,860 --> 00:08:03,450
but now we also use parity
so that in the event

149
00:08:03,450 --> 00:08:06,870
of data failure we can
use the parity information

150
00:08:06,870 --> 00:08:08,883
to recreate that data.

151
00:08:11,100 --> 00:08:14,010
It requires a minimum of three drives,

152
00:08:14,010 --> 00:08:16,590
which should be of the
same make and model.

153
00:08:16,590 --> 00:08:21,060
RAID five arrays often have
three, four or five drives,

154
00:08:21,060 --> 00:08:22,650
but you're not limited to that.

155
00:08:22,650 --> 00:08:24,660
I believe the normal maximum for hardware

156
00:08:24,660 --> 00:08:26,943
and software is 32 drives.

157
00:08:28,650 --> 00:08:32,670
Data is striped across
all drives regardless

158
00:08:32,670 --> 00:08:34,770
of how many drives you have.

159
00:08:34,770 --> 00:08:38,553
Again, it's done in an effort
to increase performance.

160
00:08:40,140 --> 00:08:43,950
Parity information is
distributed across drives

161
00:08:43,950 --> 00:08:46,680
in a staggered format.

162
00:08:46,680 --> 00:08:50,580
This is known as
distributed parity blocks.

163
00:08:50,580 --> 00:08:54,570
Any block of data also
has a calculated amount

164
00:08:54,570 --> 00:08:57,960
of parity and that's
for repairing the data

165
00:08:57,960 --> 00:09:00,543
if that particular drive fails.

166
00:09:01,560 --> 00:09:04,200
This parity information
is distributed among all

167
00:09:04,200 --> 00:09:07,200
the other drives, except for the one where

168
00:09:07,200 --> 00:09:09,303
the data was written to.

169
00:09:11,730 --> 00:09:15,690
So in this scenario, the data
is divided into three parts,

170
00:09:15,690 --> 00:09:17,850
A, B and C.

171
00:09:17,850 --> 00:09:22,200
Let's imagine that we
have a 384 kilobyte file

172
00:09:22,200 --> 00:09:24,603
that we want to write to the array.

173
00:09:25,530 --> 00:09:27,870
Well, that's going to be written in blocks

174
00:09:27,870 --> 00:09:30,810
to each drive one at a time.

175
00:09:30,810 --> 00:09:34,413
And each of these blocks
would be 64 kilobytes.

176
00:09:36,330 --> 00:09:41,110
So for example, drive one and
drive two will be written to

177
00:09:41,970 --> 00:09:46,650
and A1 is a 64 kilobyte block.

178
00:09:46,650 --> 00:09:50,820
A2 is another 64 kilobyte block.

179
00:09:50,820 --> 00:09:54,450
And these are also sometimes
referred to as chunks.

180
00:09:54,450 --> 00:09:57,273
Together, they are a Stripe of data.

181
00:09:58,920 --> 00:10:01,260
And it continues in that manner.

182
00:10:01,260 --> 00:10:06,000
The next 64 kilobyte
block would be B1 and B2,

183
00:10:06,000 --> 00:10:09,063
but this time they're written
to drive one and drive three.

184
00:10:10,500 --> 00:10:14,580
And then the C block of data,
C1 and C2 which are written

185
00:10:14,580 --> 00:10:16,983
to drive two and drive three.

186
00:10:17,970 --> 00:10:21,120
In total, we have six blocks of data.

187
00:10:21,120 --> 00:10:24,360
And if you multiply that
by 64 kilobytes each,

188
00:10:24,360 --> 00:10:28,680
that gives us our total of 384 kilobytes,

189
00:10:28,680 --> 00:10:31,050
which is the size of the file.

190
00:10:31,050 --> 00:10:33,270
The parity for each Stripe of data

191
00:10:33,270 --> 00:10:36,480
is placed on the remaining drive.

192
00:10:36,480 --> 00:10:39,900
Now, in an effort to protect
the data in the event

193
00:10:39,900 --> 00:10:42,750
of failure, we're using this parity.

194
00:10:42,750 --> 00:10:46,230
So parity for each
Stripe of data is placed

195
00:10:46,230 --> 00:10:49,890
on that remaining drive for each letter,

196
00:10:49,890 --> 00:10:52,890
for each set of blocks, basically.

197
00:10:52,890 --> 00:10:55,350
And you can think of parity
information as a sort

198
00:10:55,350 --> 00:10:59,400
of compressed version
of the Stripe of data.

199
00:10:59,400 --> 00:11:04,400
So the A1 and A2 Stripe of
data has a parity version

200
00:11:04,710 --> 00:11:08,133
on drive three which we will call AP.

201
00:11:09,150 --> 00:11:14,150
The B1 and B2 Stripe of
data has a parity version

202
00:11:14,400 --> 00:11:17,643
on drive two, we'll call that BP.

203
00:11:18,840 --> 00:11:23,840
And the C1 and C2 Stripe of
data has parity on drive one

204
00:11:24,240 --> 00:11:26,610
and we'll call that CP.

205
00:11:26,610 --> 00:11:29,820
You'll notice that the
parity blocks are staggered.

206
00:11:29,820 --> 00:11:34,820
It starts with drive three,
then drive two, then drive one.

207
00:11:35,010 --> 00:11:38,793
You don't want to have all
of the parity on one drive.

208
00:11:39,630 --> 00:11:44,130
So this way we can recreate
any data block or portion

209
00:11:44,130 --> 00:11:49,130
of that data block if it fails
or if an entire drive fails.

210
00:11:50,280 --> 00:11:54,120
So again, in a RAID five environment,

211
00:11:54,120 --> 00:11:57,810
one hard drive can fail
and you'll still be able

212
00:11:57,810 --> 00:11:59,640
to get access to the data.

213
00:11:59,640 --> 00:12:02,250
And we could still recreate
the data once we replace

214
00:12:02,250 --> 00:12:05,550
that drive, but if a
second drive was to fail,

215
00:12:05,550 --> 00:12:06,900
you'd be in trouble.

216
00:12:06,900 --> 00:12:09,090
That's why there's RAID six.

217
00:12:09,090 --> 00:12:11,970
With RAID six, you have additional parity

218
00:12:11,970 --> 00:12:15,870
and up to two drives can fail while still

219
00:12:15,870 --> 00:12:17,610
being fault tolerant.

220
00:12:17,610 --> 00:12:20,430
So you have to decide how much
fault tolerance do we need?

221
00:12:20,430 --> 00:12:22,560
How much money do I have for hard drives?

222
00:12:22,560 --> 00:12:23,970
And that will help you decide whether

223
00:12:23,970 --> 00:12:26,403
you're gonna use RAID five or RAID six.

224
00:12:27,630 --> 00:12:30,150
Here's an example of
a RAID five array that

225
00:12:30,150 --> 00:12:31,620
is controlled by software.

226
00:12:31,620 --> 00:12:35,160
It's running in Windows in
the disc management Window

227
00:12:35,160 --> 00:12:36,870
and we have our three drives here.

228
00:12:36,870 --> 00:12:39,930
They're labeled as disc one,
disc two and disc three.

229
00:12:39,930 --> 00:12:43,440
Collectively, they make up the S volume

230
00:12:43,440 --> 00:12:46,890
and that light blue, that baby blue

231
00:12:46,890 --> 00:12:48,900
in the header means RAID five volume

232
00:12:48,900 --> 00:12:51,060
for this operating system.

233
00:12:51,060 --> 00:12:54,060
If you write data to this volume,

234
00:12:54,060 --> 00:12:57,900
it is striped across the three drives,

235
00:12:57,900 --> 00:13:00,960
but parity information is included as well

236
00:13:00,960 --> 00:13:02,820
for each data block.

237
00:13:02,820 --> 00:13:04,920
If one drive was to fail, you would need

238
00:13:04,920 --> 00:13:07,590
to replace that drive and then rebuild

239
00:13:07,590 --> 00:13:10,020
the array within disc management

240
00:13:10,020 --> 00:13:13,980
and rebuild the data on new drive,

241
00:13:13,980 --> 00:13:17,070
or you could attempt
to restore from backup.

242
00:13:17,070 --> 00:13:21,510
Now, software's great, but
hardware is always superior.

243
00:13:21,510 --> 00:13:23,610
And you're definitely
gonna see hardware based

244
00:13:23,610 --> 00:13:25,440
RAID five arrays.

245
00:13:25,440 --> 00:13:27,600
And here's an example of some hardware

246
00:13:27,600 --> 00:13:30,450
that you might see used in the array.

247
00:13:30,450 --> 00:13:33,570
There is a controller at
the top which can handle

248
00:13:33,570 --> 00:13:38,280
as many as five drives and
it's an SATA controller.

249
00:13:38,280 --> 00:13:41,430
And on the bottom, we
have three hard drives

250
00:13:41,430 --> 00:13:43,533
that will be connected to the controller.

251
00:13:44,760 --> 00:13:47,460
And again, you have to
have three drives minimum

252
00:13:47,460 --> 00:13:49,770
and they should be the
same make and model.

253
00:13:49,770 --> 00:13:54,120
The controllers firmware
could be accessed previous

254
00:13:54,120 --> 00:13:57,060
to the operating system being
booted in the same manner

255
00:13:57,060 --> 00:14:02,060
that we pressed Control + I
to get into the RAID firmware

256
00:14:02,400 --> 00:14:04,200
on the Intel motherboard.

257
00:14:04,200 --> 00:14:06,180
But again, you wanna make
sure the make and model

258
00:14:06,180 --> 00:14:08,940
of the hard drives is the same.

259
00:14:08,940 --> 00:14:12,630
And if you look closely
at these two drives,

260
00:14:12,630 --> 00:14:15,150
you'll see a slight difference.

261
00:14:15,150 --> 00:14:20,150
One, is a 1600AVBS, and
the other is a 1600AVJS.

262
00:14:23,490 --> 00:14:27,480
They're both 160 gig drives,
but they're slightly different.

263
00:14:27,480 --> 00:14:29,490
And I think the one difference with these

264
00:14:29,490 --> 00:14:32,310
is the cache memory on board.

265
00:14:32,310 --> 00:14:33,870
And that could be a big deal.

266
00:14:33,870 --> 00:14:36,540
You could try it, you
could see if it'll work,

267
00:14:36,540 --> 00:14:38,880
but it's not really a good idea.

268
00:14:38,880 --> 00:14:41,130
In addition to that, you
see the drive on the left

269
00:14:41,130 --> 00:14:44,910
has been written on, that's
always a bad sign as well.

270
00:14:44,910 --> 00:14:47,250
So when you're working with hard drives,

271
00:14:47,250 --> 00:14:51,630
work with new drives, don't
just grab anything you can find

272
00:14:51,630 --> 00:14:52,740
that's already been used.

273
00:14:52,740 --> 00:14:54,990
You don't know the
condition of that drive.

274
00:14:54,990 --> 00:14:57,540
You wanna use new drives and know

275
00:14:57,540 --> 00:14:59,850
that you're gonna have
a shelf life of say two

276
00:14:59,850 --> 00:15:02,490
or three years for those drives.

277
00:15:02,490 --> 00:15:04,890
And you want to know that they're all new,

278
00:15:04,890 --> 00:15:08,730
newly formatted and
brand new outta the box.

279
00:15:08,730 --> 00:15:11,220
So watch out for any drives
that have been written on,

280
00:15:11,220 --> 00:15:12,810
watch out for slight changes in

281
00:15:12,810 --> 00:15:15,450
the name, slight differences.

282
00:15:15,450 --> 00:15:16,950
Make sure you're using the same drive's

283
00:15:16,950 --> 00:15:18,870
manufacturer and model.

284
00:15:18,870 --> 00:15:21,070
And that's about the
end of this sub lesson.
