zoukankan      html  css  js  c++  java
  • 大数据磁盘阵列技术

    https://www.cnblogs.com/v2019/p/12611261.html

    磁盘与阵列技术

    2.1 磁盘HDD(Hard Disk Drive)

    1.磁盘依旧占外部存储市场的主流

    2.HDD新技术

      -HAMR技术(热辅助磁记录):提高单盘存储容量(20TB起)

      -MACH.2(双驱动臂):提高读写速度(480MB/s)

    3.HDD大容量硬盘未衰反兴

    4.磁盘里面的结构

      磁盘盘片:将硬磁材料涂敷、电镀或沉积在金属或玻璃材质的基板上,是记录二进制信息的载体

      主轴:将磁盘盘片固定在磁盘内部,在电动马达的驱动下,磁盘盘片以主轴为中心高速转动。(指标是每分钟的转速)

      步进电机:控制磁头精确定位到每个磁道

      传动手臂:

      读写磁头:将电脉冲信号转换成介质上的磁化状态,又将介质的磁化状态转换成电脉冲信号,是电磁转换的“桥梁”(将硬磁材料涂敷、电镀或沉积在金属或玻璃材质的基板上,是记录二进制信息的载体)

      控制器:控制主轴电机的供电和速度、磁盘与主机CPU的通讯、如何移动激励臂膀以控制读写、读写磁头的转换、数据访问优化等等

    5.磁盘的基本操作

      数据写入:

        通过控制电路,驱动磁头改变盘片上磁性粒子簇的极性来写入数据。

      数据读取:

        盘片上被极化的磁性粒子与磁头上的磁感应物质相互作用,在磁头上产生感应电压,进一步被转化为能够被计算机处理的二进制信号。

     6.磁盘几何

      - 每个磁面由许多磁道构成

      - 每个磁道又被分割为许多扇区

    7.格式化磁盘

      允许控制器为每个区域留出备用的柱面,解释“格式化容量”和“最大容量”之间的差异。

    8. 柱面

      对齐的轨道形成柱面。

     9.物理地址与逻辑地址

    物理地址 = CHS(柱面、磁头、扇区)

    逻辑地址= Block#

     10.磁盘容量

      确定容量的技术因素:

        记录密度Recording density (bits/in):磁道一英寸的段中可以放入的位数.

        磁道密度Track density (tracks/in):从盘片中心出发半径上一英寸的段内可以有的磁道数.

        面密度Areal density (bits/in2):记录密度与磁道密度的乘积.

      注:由于外磁道的长度大于内磁道。现代磁盘不再把内外磁道划分为相同数目的扇区,而是利用外层磁道容量较内层磁道大的特点,将盘面划分成若干条环带。

      存储容量 = 磁头数 × 磁道(柱面)数 × 每道扇区数 × 每扇区字节数

    11.磁盘定位

      平均访问时间 = 平均寻道时间 + 平均旋转延迟 + 平均转换时间

      (一般平均寻道时间是8ms)

      访问磁盘的时间主要开销是寻道时间和旋转延迟!

      • 最大旋转延迟

         Tmax rotation=(1/RPM) * (60secs/1min)

      • 平均旋转延迟
         Tavg rotation =(1/2)*Tmax rotation

      常见参数:

      

       

      一个400G磁盘的典型参数:

        (1)16,383 柱面,每个柱面24M字节

        (2)8个双面盘,共有16个读写头

        (3)每分钟7200转

        (4)一个读写头每秒可以读写 120 × 1.5 = 80MB/S

        (5)每个磁道的数据位 24/16=1.5MB per track

    12.磁盘驱动器性能:数据传输速率

     13.外部设备互连

     14.磁盘访问时间

      (1)IDE总线:66MB/S 是一个比较常见的速度

          电子设备会成为66MB/S瓶颈

      (2)SATA3: 3GB/S

          机制会成为180MB/S的瓶颈

      (3)几个关键点

        · 访问时间是由寻道时延和旋转时延决定的

        · 找到某个扇区上的第一位是最贵的,其余位是免费的

        · 访问8byte,SRAM的访问时间是4ns

        · 访问8byte,DRAM的访问时间是60ns

        · 访问512byte,磁盘要10ms, 因此磁盘的访问速率比DRAM慢2500倍,比SRAM慢40000倍

    15.驱动的可靠性:平均无故障时间

          MTBF:Mean Time Between Failure(设备发生故障之前的运行时间)

    2.2磁盘阵列RAID Arrays

    1.背景

      (1)计算机系统总体性能的提高很不匹配
        · 处理器和主存性能改进快
        · 辅存性能改进慢

      (2)廉价磁盘冗余阵列(Redundant Array of Inexpensive Disks,RAID)

        UC, Berkeley:David A. Patterson
        RAID0~RAID6

      

     2.RAID基本思想

      将多个具有独立操作的廉价磁盘按某种方式组织成一个磁盘阵列(Disk Array),以增加容量,利用类似于主存中的多体交叉技术,将数据存储在多个盘体上,让这些盘行工作来提高数据传输速度,并采用冗余(redundancy)磁盘技术来进行错误恢复(error correction)以提高系统可靠性(reliability)。

      · RAID是一组物理盘,操作系统将其视为单个逻辑盘

      · 独立冗余磁盘阵列RAID:Redundant Arrays of Independent Disks,独立磁盘构成的具有冗余能力的阵列

    3.NRAID

      (1) NRAID:Non-RAID

      (2) 所有磁盘的容量组合成一个逻辑盘,没有数据块分条(no block stripping)

        · NRAID不提供数据冗余
        ·要求至少一个磁盘

      

     4.JOBD:Just a Bunch of Disks(磁盘簇)

      (1)一个在底板上安装的、带有多个磁盘驱动器的附件,与RAID阵列不同,没有前端逻辑来管理磁盘上的数据分布

      (2) 磁盘控制器把每个物理磁盘看作独立的磁盘单独寻址,因此每个磁盘都是独立的逻辑盘

      (3) JBOD也不提供数据冗余

      (4)要求至少一个磁盘

    5.RAID组成

      

     6.数据组织:条带(stripe)

     

      (1)stripe是由多个磁盘上的stripes构成的数据条带

      (2)stripe的width是指数据被划分为了多少个并发的stripes

      (3)性能分析-条带:

        · strip/block size可调:带宽和吞吐率的折中
        · Small size : 高传输速度
           · Large size : 并发I/O

      

    7.RAID 冗余技术

      (1)镜像

      

         通过镜像来实现冗余,保存在磁盘A的内容,也保存在B中。

      (2)副本

      

       用一个磁盘专门用来保存前面几个磁盘的副本

    8.磁盘级别

      (1)RAID0:条带阵列,无容错

       

       (2)RAID1: 磁盘阵列

      

      优点:高数据可用性和高I/O率(小块)。

      缺点:可用存储容量为50%。

      性能:提高读性能,但降低写性能。

      数据保护:改进了raid0的容错能力。

      应用:会计,支付,金融和需要高可靠性的应用

       (3)RAID 0+1

      

       (4)RAID 1+0

      

     重点:

      RAID 0+1 和 RAID 1+0 又有什么区别呢?
      · RAID 0+1是先让磁盘组内的成员组成RAID 0条带化,然后磁盘组之间为RAID 1镜像关系。  
      

      · RAID 1+0是先让磁盘组内的成员组成RAID 1互为镜像,然后磁盘组之间RAID 0条带化。

      · 除了构成先后的差别外,主要的区别还表现在容错性上。RAID 0+1 的损坏一块磁盘之后,所在的RAID 0组即认为损坏,RAID 0+1 实际上已经退化为一个RAID 0 的结构,此时,上面那组RAID 0随便坏一块,整个RAID就崩溃了。

      · 相对来说,RAID 1+0 就不会有这个问题,只要同一个RAID 1组内硬盘不全部损坏,整个RAID就不会有问题,在图中可以认为,只要右上角的那块磁盘不坏,整个RAID就不会崩溃。

       (5)  RAID3: 带奇偶校验码的并行传送

            RAID 3总是在所有磁盘上读取和写入完整的数据条纹。至少需要3块盘(2块盘没有校验的意义)。将数据存放在n+1块盘上,有效空间是n块盘的总和,最后一块存储校验信息。数据被分割存储在n块盘上,任一数据盘出现问题,可由其他数据盘通过校正监测恢复数据(可以带伤工作),换数据盘需要重新恢复完整的校验容错信息。对阵列写入时会重写校验盘的内容,对校验盘的负载较大,读写速度相较于Raid0较慢,适用于读取多而写入少的应用环境,比如数据库和web服务器。使用容错算法和分块的大小决定了Raid3在通常情况下用于大文件且安全性要求较高的应用,比如视频编辑、硬盘播出机、大型数据库等。

      stripe size = logic block size of file system

      (6)RAID4: 带奇偶校验码的独立磁盘结构

      提供了非常好的读性能,但单一的校验盘往往成为系统性能的瓶颈。对于写操作,RAID4 只能一个磁盘一个磁盘地写,并且还要写入校验数据,因此写性能比较差。而且随着成员磁盘数量的增加,校验盘的系统瓶颈将更加突出。正是如上这些限制和不足,所以不推荐 RAID4 在实际应用。RAID4和RAID3很象,不同的是,它对数据的访问是按数据块进行的,也就是按磁盘进行的,每次是一个盘。在图上可以这么看,RAID3是一次一横条,而RAID4一次一竖条。它的特点的RAID3也挺象,不过在失败恢复时,它的难度可要比RAID3大得多了,控制器的设计难度也要大许多,而且访问数据的效率不怎么好。 

      

      (7) RAID5:分布式奇偶校验的独立磁盘结构

      奇偶校验值,其它的意思也相同。RAID5的读出效率很高,写入效率一般,块式的集体访问效率不错。因为奇偶校验码在不同的磁盘上,所以提高了可靠性,允许单个磁盘出错。RAID 5也是以数据的校验位来保证数据的安全,但它不是以单独硬盘来存放数据的校验位,而是将数据段的校验位交互存放于各个硬盘上。这样,任何一个硬盘损坏,都可以根据其它硬盘上的校验位来重建损坏的数据。硬盘的利用率为n-1。 但是它对数据传输的并行性解决不好,而且控制器的设计也相当困难。RAID 3 与RAID 5相比,重要的区别在于RAID 3每进行一次数据传输,需涉及到所有的阵列盘。而对于RAID 5来说,大部分数据传输只对一块磁盘操作,可进行并行操作。在RAID 5中有“写损失”,即每一次写操作,将产生四个实际的读/写操作,其中两次读旧的数据及奇偶信息,两次写新的数据及奇偶信息。 RAID-5的话,优点是提供了冗余性(支持一块盘掉线后仍然正常运行),磁盘空间利用率较高(N-1/N),读写速度较快(N-1倍)。但当掉盘之后,运行效率大幅下降。

     特点:

      ·块大小调整为典型的I/O对齐到单个磁盘上。

      ·每个条带有一个校验块,但是不同条带位置不同,在相邻条带间循环分布,从而避免校验写的瓶颈

     (8)RAID6:带有两种分布存储的奇偶校验码的独立磁盘结构

      名字很长,但是如果看到图,大家立刻会明白是为什么,请注意p0代表第0带区的奇偶校验值,而pA代表数据块A的奇偶校验值。它是对RAID5的扩展,主要是用于要求数据绝对不能出错的场合。当然了,由于引入了第二种奇偶校验值,所以需要N+2个磁盘,同时对控制器的设计变得十分复杂,写入速度也不好,用于计算奇偶校验值和验证数据正确性所花费的时间比较多,造成了不必须的负载。我想除了军队没有人用得起这种东西。

      (9)RAID技术比较

      (10)技术选择路线

  • 相关阅读:
    not syncing: Attempted to kill init
    PhpStudy如何开启Apache的gzip压缩功能?
    去掉桌面图标快捷箭头
    PS中10种样式操作
    Mysql数据库报错1264
    宝塔建站
    VB错误说明
    Flash的swf文件破解
    PS快捷键
    Mysql双向同步热备份设置
  • 原文地址:https://www.cnblogs.com/zourui4271/p/12660763.html
Copyright © 2011-2022 走看看