zoukankan      html  css  js  c++  java
  • RAID 0 软件实现(Windows 系统)

    实现raid有2种方式:

    软件 RAID 的性能较低,因为其使用主机的资源。 需要加载 RAID 软件以从软件 RAID 卷中读取数据。在加载 RAID 软件前,操作系统需要引导起来才能加载 RAID 软件。在软件 RAID 中无需物理硬件。零成本投资。

    硬件 RAID 的性能较高。他们采用 PCI Express 卡物理地提供有专用的 RAID 控制器。它不会使用主机资源。他们有 NVRAM 用于缓存的读取和写入。缓存用于 RAID 重建时,即使出现电源故障,它会使用后备的电池电源保持缓存。对于大规模使用是非常昂贵的投资。

    RAID有不同的级别。在这里,我们仅列出在真实环境下的使用最多的 RAID 级别。

      • RAID0 = 条带化
      • RAID1 = 镜像
      • RAID5 = 单磁盘分布式奇偶校验
      • RAID6 = 双磁盘分布式奇偶校验
      • RAID10 = 镜像 + 条带。(嵌套RAID)


    RAID 0是最早出现的RAID模式,即Data Stripping数据分条技术。RAID 0是组建磁盘阵列中最简单的一种形式,只需要2块以上的硬盘即可,成本低,可以提高整个磁盘的性能和吞吐量。

    RAID 0没有提供冗余或错误修复能力,但实现成本是最低的。

    RAID 0最简单的实现方式就是把N块同样的硬盘用硬件的形式通过智能磁盘控制器或用操作系统中的磁盘驱动程序以软件的方式串联在一起创建一个大的卷集。在使用中电脑数据依次写入到各块硬盘中,它的最大优点就是可以整倍的提高硬盘的容量。如使用了三块80GB的硬盘组建成RAID 0模式,那么磁盘容量就会是240GB。其速度方面,和单独一块硬盘的速度完全相同。最大的缺点在于任何一块硬盘出现故障,整个系统将会受到破坏,可靠性仅为单独一块硬盘的1/N。

    为了解决这一问题,便出现了RAID 0的另一种模式。即在N块硬盘上选择合理的带区来创建带区集。其原理就是将原先顺序写入的数据被分散到所有的四块硬盘中同时进行读写。四块硬盘的并行操作使同一时间内磁盘读写的速度提升了4倍。

    在创建带区集时,合理的选择带区的大小非常重要。如果带区过大,可能一块磁盘上的带区空间就可以满足大部分的I/O操作,使数据的读写仍然只局限在少数的一、两块硬盘上,不能充分的发挥出并行操作的优势。另一方面,如果带区过小,任何I/O指令都可能引发大量的读写操作,占用过多的控制器总线带宽。因此,在创建带区集时,我们应当根据实际应用的需要,慎重的选择带区的大小。

    带区集虽然可以把数据均匀的分配到所有的磁盘上进行读写。但如果我们把所有的硬盘都连接到一个控制器上的话,可能会带来潜在的危害。这是因为当我们频繁进行读写操作时,很容易使控制器或总线的负荷 超载。为了避免出现上述问题,建议用户可以使用多个磁盘控制器。最好解决方法还是为每一块硬盘都配备一个专门的磁盘控制器。

    虽然RAID 0可以提供更多的空间和更好的性能,但是整个系统是非常不可靠的,如果出现故障,无法进行任何补救。所以,RAID 0一般只是在那些对数据安全性要求不高的情况下才被人们使用。


    1、准备工作

    安装系统后,主板上连接2块硬盘,这里我用虚拟机做实验。

    试验系统:Windows server 2012

    2、创建逻辑卷RAID 0

    1、计算机管理->磁盘管理

    右键,将两块磁盘联机

    image

    2、联机之后继续右键,进行磁盘初始化

    image

    3、新建带区卷,带区卷指的是RAID 0

    image

    其余的默认下一步,RAID 0 的磁盘为2块磁盘存储的总和。

    image

    我的电脑里查看磁盘,发现多了一块2G的磁盘。

    image

    3、测试RAID 0

    1、添加一个文件

    image

    模拟故障,我们让一个磁盘脱机

    image

    两块都失败,并且数据丢失。

    image

    如果实际生产中,我们即使在添加一块磁盘,也无法继续RAID 0了,需要将磁盘2进行格式化。原来的数据已经损坏。


    读书和健身总有一个在路上

  • 相关阅读:
    深度学习网络压缩简单介绍
    骨架提取与分水岭算法
    高级形态学处理
    iview @change添加自定义参数
    设置axios拦截器,promise抛出的异常处理
    js 网页跳转
    js 加减法
    vue重新渲染组件(重置或者更新)
    Laravel里firstOrCreate、firstOrNew、updateOrCreate 方法使用
    算法
  • 原文地址:https://www.cnblogs.com/Renqy/p/13049325.html
Copyright © 2011-2022 走看看