您的位置:首页 > 大数据 > 人工智能

【组原】之 磁盘存储器(RAID)

2017-10-17 20:58 155 查看

磁盘简介

  (1) 磁盘(Disk):由表面涂有磁性物质的金属或塑料构成的圆形盘片,通过一个称为磁头的导体线圈从磁盘中存储数据。

  (2) 磁盘分为:软盘(这里不讨论) 和 硬盘



磁盘存储器

(1)存储区域:

  ① 磁头数(Heads):即记录面数,表示硬盘总共有多少个刺头,磁头用于读取/写入盘片上记录面的信息,一个记录面对应一个磁头。

  ② 柱面数(Cylinders):表示硬盘每一面有多少条磁道。在一个盘组中,不同记录面的相同编号(位置)的诸磁道构成一个圆柱面。

  ③ 扇区数(Sectors): 表示每个磁道上有多少个扇区。



(2)磁盘性能指标

  ① 磁盘容量:一个磁盘所能存储的字节总数称为磁盘容量,磁盘容量有 : 非格式化容量 和 格式化容量。

  ② 记录密度:指盘片单位面积上记录的二进制的信息量,通常以道密度、位密度和面密度表示。

  ③ 平均存取时间:寻道时间(磁头移动到目的磁道),旋转延迟时间(磁头定位到所在扇区)和 传输时间(传输数据所花费的时间)



1)寻道时间Ts :

    Ts = m * n + s

n : 跨越n条磁道的时间; s: 启动磁臂的时间,约为2ms ; m:与磁盘驱动器速度有关的常数,约为0.2ms。

2)延迟时间Tr :

    Tr = 1 / (2 * r)

r : 磁盘的旋转速度

3)传输时间Tt :

    Tt = b / (r * N)

r : 磁盘的旋转速度; N:为一个磁道上的字节数;b:每次所读/写的字节数b

4)总平均存取时间 :

    Ta = Ts + Tr + Tt

(3)磁盘地址

驱动器号柱面(磁道)号盘面号扇区号

   若系统中有4个驱动器,每个驱动器带一个磁盘,每个磁盘256个磁道,16个盘面,每个盘面划分为16个扇区,则每个扇区地址要18位二进制代码,其格式如下:

驱动器号(2bit)柱面(磁道)号(8bit)盘面号(4bit)扇区号(4bit)

磁盘阵列(RAID)

RAID 通过同时使用多个磁盘,提高了传输率。

RAID(廉价磁盘冗余阵列 Redundant Array of Independent Disk)

主要是为了改善磁盘的访问延迟,增强磁盘的可用性和容错能力。

名称说明
RAID0无冗余和无校验的磁盘阵列。(把连续多个数据块交替地存放在不同物理磁盘的扇区中)。 没有容错能力
RAID1镜像磁盘阵列。 (使用两个磁盘同时进行读写,互为备份),意味着容量减少一半
RAID2采用纠错的海明码的磁盘阵列
RAID3位交叉奇偶校验的磁盘阵列
RAID4块交叉奇偶校验的磁盘阵列
RAID5无独立校验的奇偶校验磁盘阵列


[ 假设:服务器有N块磁盘 ]

RAID0

  数据在从内存缓冲区写入磁盘时,根据磁盘数量将数据分成N份,这些数据同时并行写入N块磁盘,使得数据整体写入速度是一块磁盘的N倍。(好比流水线,提高了I/O性能)

RAID1

  数据在写入磁盘时,将一份数据同时写入两块磁盘,这样任何一块磁盘损坏都不会到时数据丢失。

RAID10

  结合 RAID0 和 RAID1 两种方案,将所有磁盘平均分成两份,数据同时在两份磁盘写入

RAID5

  在一块磁盘损坏情况下,利用其他磁盘的数据恢复损坏磁盘的数据,并发写入N-1块磁盘,并在第N块磁盘记录校验数据。(RAID5,则是螺旋式地写入所有磁盘中,这样校验数据的修改也被平均到所有磁盘上,避免RAID3频繁写坏一块磁盘的情况)

RAID1

  数据在写入磁盘时,将一份数据同时写入两块磁盘,这样任何一块磁盘损坏都不会到时数据丢失。

拓展

http://blog.51cto.com/dingyichao/698762

《大型网站技术架构 核心原理与案例分析》
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息