raid详解

Raidredundant arrays of inexpensive disks :容错廉价磁盘阵列

raid 0 :硬盘A和硬盘B共同组成一个大的磁盘。

A:100G B:300G,组成的raid0的话,容量有400G=A+B。因为数据写的方式为:

raid0会把磁盘先切割出等量的区块,一个文件要写入到raid中时,这个文件会按照区块的大小切割好,然后依次放入各个磁盘中,每个硬盘会交错存放数据,因此数据写入raid时,数据会被等量放置在各个磁盘上面。

比如100M的文件:在A中会放50MB中会放50M

坏一块硬盘,raid0的所有数据就会全部丢失。

组成raid0的磁盘越多,那么性能就会越好。因为每块负责的数据量变低了。

       

Raid-5性能和数据备份的均衡考虑

Raid5是一种存储性能,数据安全和存储成本兼顾的存储解决方案。做raid5最少需要三块盘。我们以四块盘的raid5为例。

数据写入方式和raid0只有一个不同点,在每个循环的写入过程中,每块磁盘中加入一个同位检查数据,用作救援。

Raid5部队存储的数据进行备份,而是把数据和相对应的奇偶校验信息存储到组成raid5的各个磁盘上。并且奇偶校验信息和相对应的数据分别存储在不同的磁盘上。当raid5的一个磁盘挂掉之后,利用剩下的数据和相应的奇偶校验信息来恢复被损坏的数据。

坏掉一块硬盘,还是可以恢复,两块的话,数据就会全部丢失。


raid和软raid

硬件raid是通过raid卡来达成数组的目的。Raid卡上有有一块专门的芯片来处理raid的任务,在性能方面会比较好。在很多任务(比如raid5的同位检查码计算)磁盘阵列并不会消耗本系统的I/0总线。理论上效能较佳,一般的中高的raid卡都支持热插拔,在不关机的情况下抽换掉损坏的磁盘。

Raid卡比较贵。。。。。。。一块好的要上万。。。。。。。。

所以我们有软件raid,通过软件来仿真数组的任务,会损耗较多的系统资源,比如说CPU的计算和IO总线的资源。




硬件磁盘阵列在Linux底下看起来是一颗实际的大磁盘,因此硬件磁盘阵列的装置文件名为:

/dev/sd[a-p]

Linux/dev目录下放置的内容:

Linux系统中,任何装置和接口设备都是以文件的形式存在于这个目录当中。知道读取这个目录底下的某个文件,就等于读取这个设备。

对于raid5来说,使用者看到的是一块硬盘,而不是几块硬盘。



本文出自 “原歌轩” 博客,转载请与作者联系!

你可能感兴趣的:(raid,存储)