磁盘阵列RAID

磁盘阵列RAID

什么是RAID

RAID的全称是Redundant Array of Inexpensive Disks 可以释义为 廉价磁盘冗余阵列,后来的RAID里的字母I被认为是Independent,即独立的磁盘冗余阵列。

RAID的作用

由于服务器中磁盘读写率太大,所以磁盘经常损坏,raid可以让坏了一块磁盘时,服务器不至于岩机。当然这只是其中的一个用处,还可以提高IO读写能力,以及磁盘空间的扩充等

RAID的实现

  • 硬件方式实现,通过硬件RAID控制器(RAID卡)将所需的磁盘组织成RAID
  • 软件方式实现,操作系统通过系统调用的方式,模拟RAID实现

RAID的操作级别

  • RAID0:条带卷–strip,至少两块磁盘,没有冗余容错的能力,没有存储空间的浪费,要求每个磁盘必须提供大小相同的存储空间;能显著的提高磁盘的读写速度。
  • RAID1:镜像卷–mirror,一般两个磁盘,先将数据存入主盘,然后整个备到从盘,二块磁盘互为镜像。因此写入效率低,略微提升读效率 磁盘空间的整体利用率为50%,有冗余容错能力
  • RAID4:
    多块磁盘进行异或运算,得到校验值,并且存到专门的一块磁盘中
    即使一块磁盘损坏,也不会丢失数据
    但是校验盘的IO压力巨大,很容易形成性能瓶颈
  • RAID5:
    RAID4相似的方式,但是用的是多块磁盘进行循环冗余校验,校验值随机分配到不同磁盘的条带中
    读写IO性能均明显提升,又不会出现性能瓶颈
    磁盘利用率=(n-1)/n*100% 因此磁盘利用率不是100%
  • RAID6:
    多块磁盘进行两轮循环冗余校验,校验值随机分配到不同磁盘的条带中
    读写IO性能均明显提升,又不会出现性能瓶颈
    最多两块磁盘出现故障损坏,依然保证数据可用
    代价就是增加了计算校验值的时间;

    组合使用

  • RAID01:
    先做RAID0,再做RAID1
  • RAID10:
    先做RAID1,再做RAID0
  • RAID50
  • RAID7:可以理解为一个存储计算机,自带操作系统以及相应的管理工具,可以独立运行,号称目前最好的RAID方案。

原创文章,作者:songjuncai,如若转载,请注明出处:http://www.178linux.com/78166

(1)
songjuncaisongjuncai
上一篇 2017-06-17 21:20
下一篇 2017-06-18 17:02

相关推荐

  • 关于RHEL6中ulimit的nproc限制

    ulimit 用于限制 shell 启动进程所占用的资源,支持以下各种类型的限制:所创建的内核文件的大小、进程数据块的大小、Shell 进程创建文件的大小、内存锁住的大小、常驻内存集的大小、打开文件描述符的数量、分配堆栈的最大大小、CPU 时间、单个用户的最大线程数、Shell 进程所能使用的最大虚…

    Linux干货 2016-10-19
  • ngx_http_proxy_module

    ngx_http_proxy_module 1.proxy_pass Syntax: proxy_pass URL; Context: location, if in location, limit_except 这条指令将来是用的相当多的指令。 v  附加1:proxy_pass后面的路径不带uri时,其会将loca…

    2016-10-30
  • RAID学习总结

    RAID(Redundant Array of Independent Disks): 定义:独立硬盘冗余阵列,旧称廉价磁盘冗余阵列(Redundant Array of Independent Disks),简称磁盘阵列。 原理:把多个相对便宜的硬盘组合起来,成为一个硬盘阵列组,使其性能达到甚至超过价格昂贵,容量巨大的硬盘。 优势: RAID在容量和管理上…

    Linux干货 2016-08-22
  • Linux基础之用户及组管理

    grep扩展应用,用户管理,组管理,用户及组管理命令

    2018-01-31
  • 常见文件管理命令及bash特性

    cat:查看文件文本内容  -n:显示行号  [root@study ~]# cat -n /etc/passwd  1  root:x:0:0:root:/root:/bin/bash  2  bin:x:1:1:bin:/bin:/sb…

    系统运维 2016-11-06
  • Linux中的shell脚本编程——基础篇

    概述:       shell脚本在Linux系统管理员的运维工作中非常重要。shell脚本能够帮助我们很方便的管理服务器,因为我们可以指定一个任务计划,定时的去执行某一个脚本以满足我们的需求。本篇将从编程基础、脚本基本格式、变量、运算、条件测试这几个方面详细介绍shell脚本编程的基础内容,也是我们必须要掌握熟练的内容。 一、…

    Linux干货 2016-08-15