1
00:00:00,150 --> 00:00:00,983
In this lesson,

2
00:00:00,983 --> 00:00:03,060
we're going to discuss data redundancy.

3
00:00:03,060 --> 00:00:04,470
Now, one of the most effective ways

4
00:00:04,470 --> 00:00:07,290
to create data redundancy is to use a RAID.

5
00:00:07,290 --> 00:00:10,080
A RAID is a redundant array of independent disks,

6
00:00:10,080 --> 00:00:11,190
which allows an organization

7
00:00:11,190 --> 00:00:13,320
to combine multiple physical storage devices

8
00:00:13,320 --> 00:00:15,150
into a single logical storage device

9
00:00:15,150 --> 00:00:17,400
that's recognized by your operating system.

10
00:00:17,400 --> 00:00:18,990
There are many types of RAIDs out there,

11
00:00:18,990 --> 00:00:20,100
but the most common ones

12
00:00:20,100 --> 00:00:21,930
and most popular ones we're going to discuss

13
00:00:21,930 --> 00:00:25,140
are RAID 0, RAID 1, RAID 5, RAID 6,

14
00:00:25,140 --> 00:00:28,230
and RAID 10.

15
00:00:28,230 --> 00:00:30,090
First, we have a RAID 0.

16
00:00:30,090 --> 00:00:33,030
A RAID 0 provides data striping across multiple disks,

17
00:00:33,030 --> 00:00:34,860
and it's used to increase your performance.

18
00:00:34,860 --> 00:00:36,090
The keyword that you need to remember

19
00:00:36,090 --> 00:00:38,250
for a RAID 0 is striping.

20
00:00:38,250 --> 00:00:40,740
Now, a RAID 0 should be used when you need performance,

21
00:00:40,740 --> 00:00:43,080
but you don't really care about fault tolerance.

22
00:00:43,080 --> 00:00:45,630
In fact, a RAID 0 is the only kind of RAID

23
00:00:45,630 --> 00:00:48,570
that does not provide you with any kind of data redundancy,

24
00:00:48,570 --> 00:00:50,760
but instead, it provides us with faster read

25
00:00:50,760 --> 00:00:51,720
and write speeds

26
00:00:51,720 --> 00:00:54,060
because your data is being split across multiple drives

27
00:00:54,060 --> 00:00:55,290
inside of that RAID

28
00:00:55,290 --> 00:00:57,120
to overcome the physical speed limitations

29
00:00:57,120 --> 00:00:58,470
of traditional hard disk drives

30
00:00:58,470 --> 00:01:00,570
and other slower storage devices.

31
00:01:00,570 --> 00:01:02,130
For example, if I was building

32
00:01:02,130 --> 00:01:04,170
a high-end video editing workstation,

33
00:01:04,170 --> 00:01:05,670
I might want to use a RAID 0

34
00:01:05,670 --> 00:01:08,040
to have two hard disk drives working together,

35
00:01:08,040 --> 00:01:09,720
so I could work on my raw video files

36
00:01:09,720 --> 00:01:12,900
faster than I could by using a single hard disk drive.

37
00:01:12,900 --> 00:01:15,570
To create a RAID 0, you need to have at least two disks

38
00:01:15,570 --> 00:01:18,330
that can be configured to work in tandem with each other.

39
00:01:18,330 --> 00:01:20,280
Second, we have a RAID 1.

40
00:01:20,280 --> 00:01:22,470
Now, a RAID 1 is going to be used to provide redundancy

41
00:01:22,470 --> 00:01:25,440
by mirroring your data identically onto two hard disk drives

42
00:01:25,440 --> 00:01:27,090
or solid state devices.

43
00:01:27,090 --> 00:01:29,640
This way, if one of those storage devices fails,

44
00:01:29,640 --> 00:01:31,470
the other one can continue to operate

45
00:01:31,470 --> 00:01:33,180
because it has a full copy of everything

46
00:01:33,180 --> 00:01:35,220
that was included on those drives.

47
00:01:35,220 --> 00:01:36,360
The key word you need to remember

48
00:01:36,360 --> 00:01:38,580
for a RAID 1 is mirroring.

49
00:01:38,580 --> 00:01:41,040
Now a RAID 1 provides the least amount of downtime

50
00:01:41,040 --> 00:01:42,690
because there's always a complete copy

51
00:01:42,690 --> 00:01:44,880
of your data ready at a moment's notice

52
00:01:44,880 --> 00:01:47,070
that can be served up to your end users.

53
00:01:47,070 --> 00:01:48,510
A RAID 1 is going to provide us

54
00:01:48,510 --> 00:01:50,010
with some great fault tolerance,

55
00:01:50,010 --> 00:01:52,740
but it can only be used with two physical storage devices,

56
00:01:52,740 --> 00:01:54,180
which, in turn, only provides you

57
00:01:54,180 --> 00:01:56,190
with one single logical storage device

58
00:01:56,190 --> 00:01:59,310
that can be read or written to by the operating system.

59
00:01:59,310 --> 00:02:01,980
For a RAID 1, you can only lose one storage device

60
00:02:01,980 --> 00:02:03,690
and still be able to operate the array

61
00:02:03,690 --> 00:02:06,630
without suffering from any data loss or downtime.

62
00:02:06,630 --> 00:02:09,479
For example, on that high-end video editing workstation

63
00:02:09,479 --> 00:02:11,460
I mentioned, I might also want to add

64
00:02:11,460 --> 00:02:13,380
two other physical storage devices

65
00:02:13,380 --> 00:02:15,240
that are configured as a RAID 1.

66
00:02:15,240 --> 00:02:16,350
This way, I can use that

67
00:02:16,350 --> 00:02:18,450
to store all of my finished videos on.

68
00:02:18,450 --> 00:02:20,160
This will ensure that I always have an online

69
00:02:20,160 --> 00:02:21,570
and on-demand backup ready

70
00:02:21,570 --> 00:02:23,460
in case one of my storage devices fails

71
00:02:23,460 --> 00:02:25,530
because both devices will have a fully mirrored

72
00:02:25,530 --> 00:02:28,170
identical copy of the data on them.

73
00:02:28,170 --> 00:02:30,090
Third, we have a RAID 5.

74
00:02:30,090 --> 00:02:32,940
Now, a RAID 5 is known as a striping disk with parity,

75
00:02:32,940 --> 00:02:33,810
and it requires the use

76
00:02:33,810 --> 00:02:35,940
of at least three physical storage devices

77
00:02:35,940 --> 00:02:37,380
in order for it to work.

78
00:02:37,380 --> 00:02:39,450
A RAID 5 will provide us with fault tolerance

79
00:02:39,450 --> 00:02:40,380
by striping the data

80
00:02:40,380 --> 00:02:42,450
across multiple physical storage devices,

81
00:02:42,450 --> 00:02:45,510
as well as writing the parity data across the disk array.

82
00:02:45,510 --> 00:02:46,800
The keywords that you need to remember

83
00:02:46,800 --> 00:02:49,500
for a RAID 5 is striping with parity.

84
00:02:49,500 --> 00:02:51,870
Now, if one disk fails, the other two are going to be able

85
00:02:51,870 --> 00:02:54,360
to reconstruct the data based on the parity,

86
00:02:54,360 --> 00:02:56,760
and that way they can continue their normal operations,

87
00:02:56,760 --> 00:02:58,110
but at a slower speed

88
00:02:58,110 --> 00:02:59,580
because the missing portions of data

89
00:02:59,580 --> 00:03:01,560
have to be calculated on the fly

90
00:03:01,560 --> 00:03:04,080
when the user's requesting the data from the server.

91
00:03:04,080 --> 00:03:06,240
So if one of those drives fails,

92
00:03:06,240 --> 00:03:07,950
you can actually remove the failed drive,

93
00:03:07,950 --> 00:03:09,810
install a new drive into the server,

94
00:03:09,810 --> 00:03:11,430
while the server continues to operate,

95
00:03:11,430 --> 00:03:12,930
which we call a hot swap,

96
00:03:12,930 --> 00:03:14,850
and then the server will rebuild the missing data

97
00:03:14,850 --> 00:03:16,470
onto the newly installed drive

98
00:03:16,470 --> 00:03:18,480
by calculating all those missing pieces

99
00:03:18,480 --> 00:03:20,040
by using the Stripe data pieces

100
00:03:20,040 --> 00:03:23,040
and the parity to calculate the missing dataset.

101
00:03:23,040 --> 00:03:26,040
Now, for a RAID 5, you can only lose one storage device

102
00:03:26,040 --> 00:03:28,050
and still be able to rebuild the data in the RAID

103
00:03:28,050 --> 00:03:29,700
without suffering from any downtime.

104
00:03:29,700 --> 00:03:31,470
So keep that in mind, too.

105
00:03:31,470 --> 00:03:33,450
Fourth, we have a RAID 6.

106
00:03:33,450 --> 00:03:36,360
Now, a RAID 6 is a modified form of a RAID 5

107
00:03:36,360 --> 00:03:37,230
that relies on the use

108
00:03:37,230 --> 00:03:39,480
of data striping across multiple storage devices,

109
00:03:39,480 --> 00:03:40,950
like a RAID 5 does,

110
00:03:40,950 --> 00:03:43,320
but instead of having a single piece of parity data,

111
00:03:43,320 --> 00:03:45,330
we're actually going to have two identical pieces

112
00:03:45,330 --> 00:03:46,590
of parity data.

113
00:03:46,590 --> 00:03:47,640
I like to joke around and say

114
00:03:47,640 --> 00:03:49,980
that "RAID 6 is one better than RAID 5,

115
00:03:49,980 --> 00:03:51,960
so instead of having one set of parity,

116
00:03:51,960 --> 00:03:53,490
we now have two sets of parity

117
00:03:53,490 --> 00:03:55,830
because it is one more than RAID 5."

118
00:03:55,830 --> 00:03:57,420
Now, to achieve this double parity,

119
00:03:57,420 --> 00:03:59,700
your RAID must have at least four storage devices

120
00:03:59,700 --> 00:04:01,830
contained within your RAID 6 array.

121
00:04:01,830 --> 00:04:03,360
Now, the benefit of using a RAID 6

122
00:04:03,360 --> 00:04:05,220
over a RAID 5 is that you can now lose

123
00:04:05,220 --> 00:04:06,480
two of your storage devices

124
00:04:06,480 --> 00:04:08,160
and still be able to rebuild the data

125
00:04:08,160 --> 00:04:10,020
without suffering from any downtime.

126
00:04:10,020 --> 00:04:13,290
So it does give you some more resiliency and redundancy.

127
00:04:13,290 --> 00:04:14,550
Now, the keywords you need to remember

128
00:04:14,550 --> 00:04:17,550
for a RAID 6 is striping with double parity.

129
00:04:17,550 --> 00:04:21,570
Fifth, we have a RAID 10, also known as a RAID 10.

130
00:04:21,570 --> 00:04:23,580
Now, a RAID 10, or a RAID 10

131
00:04:23,580 --> 00:04:25,470
will combine the advantages of a RAID 1

132
00:04:25,470 --> 00:04:28,500
and a RAID 0 into a single RAID array.

133
00:04:28,500 --> 00:04:31,590
Essentially, a RAID 10 is going to be a striped array

134
00:04:31,590 --> 00:04:34,500
that contains two sets of mirrored arrays within it.

135
00:04:34,500 --> 00:04:36,780
This is why we call it a RAID 10

136
00:04:36,780 --> 00:04:38,370
because it first mirrors the two sets

137
00:04:38,370 --> 00:04:40,380
of storage devices into a RAID 1,

138
00:04:40,380 --> 00:04:42,360
and then it stripes the data across both sets

139
00:04:42,360 --> 00:04:45,660
of mirrored storage devices using a RAID 0 configuration.

140
00:04:45,660 --> 00:04:49,440
So RAID 1 plus RAID 0 gives us RAID 10,

141
00:04:49,440 --> 00:04:51,720
or RAID 10 as we write it out.

142
00:04:51,720 --> 00:04:52,980
Now, the keywords you need to remember

143
00:04:52,980 --> 00:04:54,390
for a RAID 10 is that

144
00:04:54,390 --> 00:04:57,030
it is a striped array of mirrored arrays.

145
00:04:57,030 --> 00:04:59,880
Now, a RAID 10 or RAID 10 also supports the use

146
00:04:59,880 --> 00:05:02,190
of even numbers of physical storage devices

147
00:05:02,190 --> 00:05:03,840
to create this kind of an array,

148
00:05:03,840 --> 00:05:06,360
and you have to at least force physical storage devices

149
00:05:06,360 --> 00:05:08,730
in the RAID to create a minimum of two sets

150
00:05:08,730 --> 00:05:10,740
of mirrored RAID 1s to be able to use

151
00:05:10,740 --> 00:05:13,050
inside of your RAID 10.

152
00:05:13,050 --> 00:05:14,580
A RAID 10 will provide us

153
00:05:14,580 --> 00:05:16,500
with fault tolerance due to the mirrored arrays

154
00:05:16,500 --> 00:05:18,390
inside of the RAID 10.

155
00:05:18,390 --> 00:05:20,310
But it also provides us with faster speeds

156
00:05:20,310 --> 00:05:21,660
because of the striping of the data

157
00:05:21,660 --> 00:05:24,030
across two different sets of mirrored arrays

158
00:05:24,030 --> 00:05:25,773
inside of the RAID 10.

159
00:05:25,773 --> 00:05:28,050
Now, a RAID 10 can support the loss

160
00:05:28,050 --> 00:05:29,820
of up to two of your storage devices

161
00:05:29,820 --> 00:05:31,410
and still be able to rebuild the data

162
00:05:31,410 --> 00:05:33,300
without suffering from any downtime,

163
00:05:33,300 --> 00:05:35,220
as long as the loss of the storage devices

164
00:05:35,220 --> 00:05:38,040
are not both located in the same mirrored array.

165
00:05:38,040 --> 00:05:39,930
So if you lose one storage device

166
00:05:39,930 --> 00:05:41,910
from each mirrored set, that's fine.

167
00:05:41,910 --> 00:05:43,800
The RAID 10 will continue to operate

168
00:05:43,800 --> 00:05:44,970
without any issues,

169
00:05:44,970 --> 00:05:47,400
but you will have lost your fault tolerance capability

170
00:05:47,400 --> 00:05:49,830
if you lost a drive from each set of the mirrors.

171
00:05:49,830 --> 00:05:52,050
So you'll want to replace those failed storage devices

172
00:05:52,050 --> 00:05:53,550
as soon as possible.

173
00:05:53,550 --> 00:05:55,320
Now, when we talk about the classification

174
00:05:55,320 --> 00:05:56,970
and categorization of our RAIDs,

175
00:05:56,970 --> 00:05:59,301
we call these either failure-resistant, fault-tolerant,

176
00:05:59,301 --> 00:06:00,134
or disaster-tolerant.

177
00:06:00,134 --> 00:06:01,648
Each of these terms describes a level of resilience

178
00:06:01,648 --> 00:06:03,893
that a RAID system can provide against data loss

179
00:06:03,893 --> 00:06:07,470
and system downtime.

180
00:06:07,470 --> 00:06:09,690
When we're dealing with failure-resistant systems,

181
00:06:09,690 --> 00:06:10,890
these are systems that are designed

182
00:06:10,890 --> 00:06:12,930
to withstand certain hardware malfunctions

183
00:06:12,930 --> 00:06:14,670
without losing the associated data.

184
00:06:14,670 --> 00:06:16,470
And failure resistance is going to be achieved

185
00:06:16,470 --> 00:06:18,540
through redundancy of your storage devices

186
00:06:18,540 --> 00:06:21,480
by mirroring data across multiple storage devices.

187
00:06:21,480 --> 00:06:23,280
This means that if one device fails,

188
00:06:23,280 --> 00:06:24,750
the system can continue to operate

189
00:06:24,750 --> 00:06:26,940
using the data on the remaining devices.

190
00:06:26,940 --> 00:06:29,520
So when you think about a failure-resistant system,

191
00:06:29,520 --> 00:06:30,960
we're really talking about any of the systems

192
00:06:30,960 --> 00:06:33,090
that use mirroring, which is a RAID 1

193
00:06:33,090 --> 00:06:36,240
or a RAID 10.

194
00:06:36,240 --> 00:06:38,220
Now, a fault-tolerant system, on the other hand,

195
00:06:38,220 --> 00:06:39,660
is going to be designed to not only allow

196
00:06:39,660 --> 00:06:41,010
for the continued operation

197
00:06:41,010 --> 00:06:43,050
without any downtime being experienced,

198
00:06:43,050 --> 00:06:45,240
but also allows the system to maintain its operations

199
00:06:45,240 --> 00:06:47,070
in the event of a hardware failure

200
00:06:47,070 --> 00:06:49,500
due to either mirroring or striping with parity,

201
00:06:49,500 --> 00:06:53,880
such as in a RAID 1, RAID 5, RAID 6, or RAID 10.

202
00:06:53,880 --> 00:06:56,610
With fault tolerant systems, your system has the ability

203
00:06:56,610 --> 00:06:58,230
to quickly rebuild any lost data

204
00:06:58,230 --> 00:07:00,060
from the remaining healthy storage devices

205
00:07:00,060 --> 00:07:02,280
to ensure your systems remain resilient.

206
00:07:02,280 --> 00:07:04,050
Now, a disaster-tolerant system

207
00:07:04,050 --> 00:07:05,910
includes a broader level of protection

208
00:07:05,910 --> 00:07:08,760
by safeguarding your data against catastrophic events.

209
00:07:08,760 --> 00:07:11,880
Disaster-tolerant RAIDs utilize two independent zones

210
00:07:11,880 --> 00:07:14,400
that always have full access to all of the data.

211
00:07:14,400 --> 00:07:17,070
A RAID 1 and a RAID 10 are both examples

212
00:07:17,070 --> 00:07:18,720
of disaster-tolerant RAIDs

213
00:07:18,720 --> 00:07:20,580
because they have full mirrors of the data

214
00:07:20,580 --> 00:07:23,550
on at least one of the storage devices within the array.

215
00:07:23,550 --> 00:07:25,950
So remember, RAIDs are a great thing to use

216
00:07:25,950 --> 00:07:26,820
when you're trying to ensure

217
00:07:26,820 --> 00:07:28,770
you have a good redundancy of your data,

218
00:07:28,770 --> 00:07:31,590
both online and available at all times.

219
00:07:31,590 --> 00:07:34,050
A RAID is a redundant array of independent disks,

220
00:07:34,050 --> 00:07:35,160
which allows an organization

221
00:07:35,160 --> 00:07:37,200
to combine multiple physical storage devices

222
00:07:37,200 --> 00:07:38,543
into a single logical storage device

223
00:07:38,543 --> 00:07:41,280
that is recognized by your operating system.

224
00:07:41,280 --> 00:07:43,260
A RAID 0 is going to enhance the performance

225
00:07:43,260 --> 00:07:44,700
by striping your data evenly

226
00:07:44,700 --> 00:07:46,470
across two or more storage devices

227
00:07:46,470 --> 00:07:48,240
without any kind of redundancy

228
00:07:48,240 --> 00:07:50,340
to facilitate a high speed access,

229
00:07:50,340 --> 00:07:53,070
but you're not going to have any fault tolerance.

230
00:07:53,070 --> 00:07:56,190
A RAID 1 is going to maintain an exact copy of the data,

231
00:07:56,190 --> 00:07:57,390
which is known as a mirror,

232
00:07:57,390 --> 00:07:58,890
on two or more storage devices

233
00:07:58,890 --> 00:08:00,390
to increase your read performance

234
00:08:00,390 --> 00:08:02,550
and ensure data integrity and availability,

235
00:08:02,550 --> 00:08:05,490
even if a single storage device in the RAID fails.

236
00:08:05,490 --> 00:08:08,490
A RAID 5 is going to distribute data and parity information

237
00:08:08,490 --> 00:08:11,100
across three or more disks to improve the read

238
00:08:11,100 --> 00:08:14,190
and write performance while also providing fault tolerance.

239
00:08:14,190 --> 00:08:16,410
A RAID 6 is similar to a RAID 5,

240
00:08:16,410 --> 00:08:18,090
but it adds an extra parity block

241
00:08:18,090 --> 00:08:19,680
so that the data and double parity

242
00:08:19,680 --> 00:08:22,380
is going to be striped across four or more storage devices

243
00:08:22,380 --> 00:08:23,550
to help withstand the failure

244
00:08:23,550 --> 00:08:25,560
of two storage devices simultaneously

245
00:08:25,560 --> 00:08:27,690
without having any kind of data loss.

246
00:08:27,690 --> 00:08:29,700
A RAID 10,

247
00:08:29,700 --> 00:08:32,669
will combine the advantages of a RAID 1 and a RAID 0

248
00:08:32,669 --> 00:08:35,909
by striping data across mirrored sets of storage devices

249
00:08:35,909 --> 00:08:38,010
to offer higher performance, fault tolerance,

250
00:08:38,010 --> 00:08:40,169
and improved data redundancy.

251
00:08:40,169 --> 00:08:41,669
By relying on the use of RAIDs,

252
00:08:41,669 --> 00:08:43,679
we can increase our overall availability

253
00:08:43,679 --> 00:08:45,660
when we're designing high availability systems

254
00:08:45,660 --> 00:08:47,073
for our enterprise networks.

