源码基地

 找回密码
 马上注册

QQ登录

只需一步,快速开始

新浪微博登陆

只需一步, 快速开始

查看: 8667|回复: 40

【IT之家学院】Raid到底是啥?

[复制链接]

新浪微博达人勋

该用户从未签到

发表于 2019-3-15 07:34 | 显示全部楼层 |阅读模式
今天我们来聊一聊Raid,做一期轻科普,跟大家一起了解下各种Raid是怎么回事、有什么作用、有哪些优缺点、如何实现等等。- C$ r) A' r, R+ S
1 k+ m. o5 r: A3 @
注:IT之家小编个人习惯拼作Raid,但RAID和raid这些拼法也都有众多拥趸。维基百科都拼作RAID,毕竟是首字母集合,应该是比较标准的拼法,另外两种是当做单词来用了,不过大家开心就好,不影响理解。
2 q& n4 S' d+ J) M/ v+ I2 v
( @6 V" r* B) |0 ]8 B' W) |( _何为Raid, }" b7 D8 H8 C. q" Q
/ \$ N" e0 m' T) ]' @
我们首先来认识一下这个概念,Raid全称为Redundant Arrays of Independent Drives,中文名称为磁盘阵列,直译为“冗余独立驱动器阵列”。简单来说就是多个硬盘组成的逻辑阵列。组Raid就是将多块独立的硬盘组合行成单一的逻辑阵列,当做一个整体来使用,用以实现提高传输速度、安全性等功能,多用于文件服务器或NAS。" x5 _  L( B" E8 N
+ L4 \) n) |0 N7 Y. D" P  t
【IT之家学院】Raid到底是啥?-1.jpg
! i% M- U& f5 }8 `5 T/ Q, T* b- l8 c7 k
9 N5 C1 U5 D# L4 c& ]$ @9 w  P3 _( @Raid的种类5 F0 p% n7 k2 q4 K  N# E' \  ?
$ d1 h+ G3 p- ^$ ?+ @3 r4 b4 e% Z' a
下面我们依次介绍较常见的Raid0/1/10/5/6和更高级一些的Raidz/z2,并分别介绍它们的工作原理和优缺点。不常见的Raid2/3/4和各种奇奇怪怪的组合如Raid100/30/50/60等就不多说了,理解了基础的,组合自然就明白了。如果没有标注,默认不同硬盘的容量相同。0 ]: S& }8 _  p: J' `

/ S: A; M9 N( E9 Y: z8 N1、Raid05 P3 e8 j* F0 K$ ]
" Q  ~9 t7 U) T1 B$ U5 ^
Raid0需要最少两块。
# W  i6 q( n. C' x- r$ X" J0 X) g3 Q, S  r: i! e, ~$ l" S3 F
以两块硬盘为例,组Raid后容量为两者之和,读写数据时,同时对两块硬盘进行读写。' ^) ~# b3 f. R8 t+ i
  A2 i# E& H* Q7 c0 g* l0 {
优点是带宽翻倍,理论上读写速度也翻倍。但缺点也是致命的,由于是将整体数据同时分别写在两块硬盘上,读取时也要同时读出才能得到完整的数据,所以只要阵列中一块硬盘损坏,整个阵列中的所以数据全部丢失,所以才有了著名的“Raid0一时爽,一直Raid0一直爽”,啊,不好意思拿错稿子了,是“Raid0一时爽,数据火葬场”。6 k1 _# g- ]/ t

, b' K7 _* U, j总结来讲,速度×N,风险×N,利用率100%。
# [  H1 r+ `5 g! M" R- e  H* \4 `
【IT之家学院】Raid到底是啥?-2.jpg
! ], Q1 U, f- I# U9 B* p
: H* w8 I) D) }! R  N; E2、Raid1
2 u, `; m2 p4 t7 N6 R( i1 Z$ \: f) `$ z
Raid1最少也需要两块硬盘。
5 u- b4 @) f" R8 @. e% F) d" B4 k$ r7 W1 ^* Y7 e( H  m6 Y
同样以两块硬盘为例,容量相当于最小的一块,多块同理。写入数据时,同时在所有硬盘上写入相同的数据,相当于做了镜像或备份,读取时如果一块硬盘损坏,还可以从阵列中其他的硬盘中读出完整数据。
* N5 F" ~; a+ c6 b- k4 V- v) D; o) O9 p  X6 A
优点是冗余性和安全性翻倍,缺点是利用率低。) N8 s9 n$ q$ ~5 a3 B

' D3 B1 Q( W& x- u6 e0 @: y9 v总结,速度×1,风险×1/N,利用率1/N。, ^' @3 [3 {# G" @. W  Y6 H+ n

: L4 m* J4 H7 v" g5 a: q7 | 【IT之家学院】Raid到底是啥?-3.jpg 7 O$ l8 r' W) D8 Y, `; l

! `3 f# d! _8 R9 j0 Z3、Raid10
$ ~4 k1 _% W! [3 e4 @3 _! `" ?) O6 \$ f/ X
顾名思义,就是Raid1+0,是Raid1和Raid0的结合,让两者取长补短。最少需要四块硬盘,或者m×n块的灵活组合都可,正是因为其是两种Raid模式的结合。9 h$ D% @8 S; z, [7 X+ x, c1 A$ c: V

7 B9 Z& ]- S' w3 X- Q8 `以四块硬盘为例,其中两块用作备份盘,两块用作增速盘。; K% a) Z4 T: o7 _$ W' o- n
1 Y3 e/ e8 n- Q; M! E) I; U/ H( d
先提一下Raid10的特殊实现方式,叫Raid10而不叫Raid01是有道理的,需要先把四块硬盘分为两组,组内先进行类似Raid1的组合,互为镜像,称作“做镜像”,再对两个“Raid1阵列”进行类似Raid0的组合,称为“做条带”。所以在读写时,同时对四块硬盘进行读写,其中每组写入不同数据(原数据中不同位置的数据,有可能相同,如1101中的前两个1,下同),每组中两块硬盘写入相同的数据。
1 c! b  y; B! `  U
6 j8 K0 o/ W7 Y1 F! f% X% r( `  P0 a优点是兼顾传输速度与安全性,缺点是性能开销大,而且……额……贵,权且当作方案的缺点吧。6 t( s3 T! `3 |- C) x+ {1 ]0 m

2 B. q9 u/ `# M0 U" _& V" _' i总结,以四块硬盘为例,速度×2,风险×,利用率50%。
9 Y% `+ W( a, ?3 c3 ~5 n
2 A1 G+ C& l/ F7 H4 M1 @ 【IT之家学院】Raid到底是啥?-4.jpg
+ f4 o# t, T8 y; w# B5 \$ F% g: l2 j5 a  L2 z6 B
同理,Raid01的原理大家可以反过来理解,先做条带,再做镜像。
8 `& a$ b" ^2 ]& ^# G1 B& y0 d, i4 i7 t
4、Raid5
- v' y  u' {) \# b* l) P% y& ^
' t) Y5 l; J5 K; u8 ]$ n# G. bRaid5最少需要三块硬盘,其中需要拿出相当于一块硬盘的容量来存校验码,校验码采用奇偶校验方式算出,校验码不可全部在一块硬盘,其余用来存数据。用来存校验码的容量由从所有硬盘中不同位置取出相同的容量组成,加起来等于一块硬盘的容量,以三块硬盘为例,三块硬盘中各取出的容量,被取出的容量在三块硬盘中不全在同一位置。& B$ W; c1 }1 t/ j0 V4 N: f

" x. w! ?& l3 ]* E1 S. \写入数据时,同时在两块硬盘上分别写入不同数据,最后一块硬盘写入算出的校验码,下一次写入的校验码不可与上一次的校验码存于同一块硬盘。如果某一块硬盘损坏,则只需要替换掉损坏的硬盘,通过均匀分布在各硬盘中的数据和校验码,就可以恢复重建损坏硬盘中的数据。* s! k* o2 ^1 E* A' }

8 e& G4 R, b" p, n. X) X& s2 J% _优点是一定程度上兼顾了传输速度和安全性。缺点是现实中数据恢复速度和成功率并不十分理想。还有不得不提的局限性,不管阵列中有多少块硬盘,同时损坏两块都是无法恢复的,整个阵列中的数据全部丢失。
9 n: D! V% b. y( ~6 t, E  R/ Y, k3 e& s  `* c
总结,速度×(N-1),风险不会算,改天去请教一下理学院的学长……可以肯定的是风险比Raid1大,利用率为(N-1)/N。* G) l. N! N% N) i: i% O

  n' A3 y9 n# l; D' C 【IT之家学院】Raid到底是啥?-5.jpg
2 |7 }! i% i1 W' x( @; _3 y3 h0 S# s) S( _$ a8 y% z4 z
另外,如果硬盘容量不同,Raid5会在每块硬盘中都取容量最小的硬盘的容量来使用,其余的都不用,但群辉的SHR技术可以将浪费的容量利用起来,感兴趣的朋友可以去了解一下。
7 ?. I8 f' {* Z, m9 E" G3 S* s+ N$ c, k! G! A7 s
5、Raid65 I% t7 b7 b3 ]  B& Q  g

7 }! g& ^! F2 z: {% l+ W& WRaid6可以说是Raid5的升级版,最少需要四块硬盘,其中两块硬盘的容量用以存储两位奇偶校验码,校验码分配方式与Raid5类似。
8 ]3 p& W6 N. c2 v/ x4 X+ q6 K' Q* j$ U2 ^& q
同理,同时损坏三块硬盘,整个阵列无法恢复。
/ e/ O3 g5 n% W' E4 g5 v& g. o5 N1 h: S6 y
总结,速度×(N-2),风险不会算但比Raid5小比Raid1大,利用率为(N-2)/N。
" X$ @1 ~4 N* r  S: N* b3 e' G9 a) p# h# q8 R+ x& K
6、Raidz/Raidz24 u& I# c4 r) o# T
  ~* B- a, Y) C! T4 x
这两种“Raid模式”分别可以看做Raid5和Raid6的改进,虽然名叫“Raid”但并不是同一回事。
: g4 O" S7 y8 S% x3 ~* V& E: e" {, Y& w$ N1 i  c
Raidz/z2基于更先进的ZFS文件系统,拥有更加先进的冗余机制,解决了Raid5/6“全盘重写”的问题。这个不是一时半会可以讲完的,为了篇幅和不喧宾夺主的考虑,暂且留个坑吧。5 B3 z% b5 h( J9 q

& l3 Y0 G& L. `4 h& U0 ]4 x实现方式
  H2 B  T$ K* j, t. g4 Y# E% X% m5 F) [* j
Raid阵列的实现分为硬实现和软实现,组成的阵列分别称为硬Raid和软Raid。4 }( W, D6 y" Y& H: b5 \

3 |- c' s3 B- G2 g/ \2 j我们分别来看:
  n6 Q$ z8 f8 f" M9 ~% A7 V. z. e% V4 a, c$ \- c
1、硬实现/硬Raid+ O' D- v( E0 K! u
" A1 M% l( T5 k% F. C! k
硬实现是通过硬件(Raid卡)来实现Raid阵列的方式。对磁盘的数据读写由Raid卡主控完成,系统会将整个阵列识别为单一硬盘。  F9 L: X% D5 g/ I! m3 a. M

" n* o1 D8 H) v, X) C' `+ c2 ~' W优点是对CPU的依赖非常小,性能较好,有缓存的Raid卡还可以提高随机读写性能。
9 d: q# a! U/ N- A* o
1 ~( P( a( A! F' ]% f4 R  s+ `缺点是不够灵活,用Raid卡组Raid后,如果不解除/撤销/取消,阵列中的硬盘直接挂载到别的电脑上是无法使用的。以及需要额外的硬件,成本较高。
2 C5 f, q! K- h7 h& C( t6 r0 O) b8 B$ C1 o$ ]4 E& i
2、软实现/软Raid% D- _! J3 Q4 \( j

1 t6 u0 u/ A3 s! K软Raid就是通过软件方式实现的Raid,包括从BIOS中设置。磁盘数据的读写由CPU完成,系统可以识别出阵列中所有的硬盘。
6 E/ {- v( ^1 y& C$ A0 e5 q! u
优点是使用灵活,拆下后可直接在其他电脑上使用,成本较低,操作简单。
. b/ G- ]# p; K( F% f& N
! {" o9 ?, x3 R' Z0 \, _% w缺点是对CPU依赖较大,性能较差。- x8 X! ]9 e; u# ^7 F  Z  b; H

% \/ n. u; U6 {9 p了解了上述内容,想要组Raid的小伙伴们心中应该是有底了,可以按需选择自己想要的方式。最后IT之家还要提醒一句,数据千万条,安全第一条。Raid不规范,自己两行泪。


回复 天涯海角搜一下: 百度 谷歌 360 搜狗 搜搜 有道 奇虎 雅虎 必应 即刻

使用道具 举报

新浪微博达人勋

  • TA的每日心情

    2018-8-14 09:34
  • 签到天数: 10 天

    [LV.3]偶尔看看II

    发表于 2019-3-15 08:30 | 显示全部楼层
    撸过
    回复 支持 反对

    使用道具 举报

    新浪微博达人勋

    该用户从未签到

    发表于 2019-3-15 09:26 | 显示全部楼层
    域名抢注平台www.ymjd.cn
    回复 支持 反对

    使用道具 举报

    新浪微博达人勋

  • TA的每日心情
    郁闷
    2018-7-28 08:48
  • 签到天数: 2 天

    [LV.1]初来乍到

    发表于 2019-3-15 10:32 来自手机 | 显示全部楼层
    盒子科技代理www.qxnsm.cn
    回复 支持 反对

    使用道具 举报

    新浪微博达人勋

    该用户从未签到

    发表于 2019-3-15 11:47 | 显示全部楼层
    激动人心,无法言表!
    回复 支持 反对

    使用道具 举报

    新浪微博达人勋

    该用户从未签到

    发表于 2019-3-15 13:18 来自手机 | 显示全部楼层
    支持一下
    回复 支持 反对

    使用道具 举报

    新浪微博达人勋

    该用户从未签到

    发表于 2019-3-15 15:22 | 显示全部楼层
    支持,楼下的跟上哈~
    回复 支持 反对

    使用道具 举报

    新浪微博达人勋

    该用户从未签到

    发表于 2019-3-15 17:00 | 显示全部楼层
    帮你顶下哈!!
    回复 支持 反对

    使用道具 举报

    新浪微博达人勋

    该用户从未签到

    发表于 2019-3-15 18:43 | 显示全部楼层
    域名抢注平台www.ymjd.cn
    回复 支持 反对

    使用道具 举报

    新浪微博达人勋

    该用户从未签到

    发表于 2019-3-17 08:40 来自手机 | 显示全部楼层
    楼主加油,我们都看好你哦。
    回复 支持 反对

    使用道具 举报

    您需要登录后才可以回帖 登录 | 马上注册 新浪微博登陆

    本版积分规则

    关闭

    站长推荐上一条 /5 下一条

    Archiver|VIP商业源码|企业网站源码|建站之星模板|DEDE模板|新闻中心|源码基地 ( 黔ICP备11002644号 )|网站地图

    GMT+8, 2019-3-19 13:46 , Processed in 0.406250 second(s), 37 queries , Gzip On, File On.

    Powered by Discuz! X3.4

    © 2001-2017 Comsenz Inc.

    快速回复 返回顶部 返回列表