[发明专利]一种磁盘阵列的数据读写方法有效
申请号: | 200810067004.6 | 申请日: | 2008-04-23 |
公开(公告)号: | CN101566924A | 公开(公告)日: | 2009-10-28 |
发明(设计)人: | 王佳 | 申请(专利权)人: | 中兴通讯股份有限公司 |
主分类号: | G06F3/06 | 分类号: | G06F3/06 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 518057广东省深圳市南山*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 磁盘阵列 数据 读写 方法 | ||
技术领域
本发明涉及计算机存储领域,尤其涉及该领域内的独立冗余磁盘阵列的数据读写方法。
背景技术
随着信息技术的飞速发展,各种行业应用都对信息的存储提出了更高的要求,这些要求主要包括存储系统的速度、容量、可靠性、可用性和安全性等方面,传统的存储系统已经无法满足。
RAID(Redundant Array of Independent Disk,独立冗余磁盘阵列)是一种由多块独立磁盘构成的,能提高读写性能并具备容错能力的存储系统。RAID实现了多个磁盘并行读写的功能,将用户的数据拆分成多个数据块并行写入多个磁盘。读取数据时先从多个磁盘并行读出数据块再组合成用户需要的数据,使得存储系统的带宽由多个磁盘的带宽叠加而成,大大提高了存储系统的访问速度。RAID的容错能力是通过冗余方式实现的,所述冗余的方式有磁盘镜像和设置校验等。除了用户需要的数据以外,RAID中还存储了大量的冗余数据,通过所述容错方法保证磁盘在出现错误的情况下可以恢复数据。
RAID按照实现存储的原理不同分为不同的级别,常见的具备容错能力的RAID级别有RAID1,RAID5,RAID10等。请参阅图1,为现有技术中的由四块磁盘构成的一个RAID5级磁盘阵列的数据分布示意图,将所述四块磁盘命名为磁盘1、磁盘2、磁盘3和磁盘4,每个磁盘分成N个数据块,所述四个磁盘分别贡献出一个数据块构成一个磁盘条带(StripeD)为该磁盘阵列的一行,可以理解,该RAID5具有N个磁盘条带,每个磁盘条带具有一个校验块,其用于存放一个校验值,所述校验值由该磁盘条带的另外三个数据块进行异或计算而得。
具体地说,来自磁盘1的数据块0、来自磁盘2的数据块1、来自磁盘3的数据块2以及来自磁盘4的校验块P1构成一个磁盘条带1(StripeD1),依次类推,构成StripeD2、StripeD3.........StripeDN。
对所述磁盘阵列执行写操作时,用户数据被拆分成若干个数据块,对应写入所述N个磁盘条带中的数据块内,其校验块P1的数据由数据块0异或数据块1,接着异或数据块2计算得到并写入校验块P1内。
因此,可以理解的是,当其中一个磁盘出错,都可以由其他磁盘通过异或计算从而恢复其上的数据,例如,如果磁盘2出错,那么磁盘2上的数据块1的数据可以由数据块0、数据块2和校验块P1异或计算得到,数据块4的数据可以由数据块3、校验块P2和数据块5异或计算得到,以此类推,磁盘2的数据都可以恢复。
很明显,每一次对磁盘阵列上的一个数据块进行写操作,都要进行一个对其他相关数据块的读操作和一次异或计算以更新校验块的值,例如,在完成对数据块0的写操作时,除了写数据块0以外,还需要另外完成数据块1的读操作,数据块2的读操作,以及校验块P1的重新计算和写操作。此时,如果用户再请求写数据块1和数据块2,那么还需要完成数据块0的读操作,校验块P1的重新计算和写操作。具体请参阅图2,为图1的磁盘阵列处理用户读写请求的时序图,可见,每一次对其中一个数据块的写操作(写0、写01、写012或者写2操作)都必须完成一个写时间和一个校验块的计算写入时间。因此,为了保证磁盘阵列的容错能力,需要花费大量的时间读取同一磁盘条带中的其他数据块到内存中分配的条带结构,并重新计算和写入校验块。这些读操作和异或计算大大增加了磁盘阵列的负担,尤其在用户写请求频繁的情况下,校验块内数据的反复更新会大大增加磁盘阵列的开销,降低系统的读写性能,严重影响磁盘阵列对用户的响应。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中兴通讯股份有限公司,未经中兴通讯股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/200810067004.6/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种使用计时器来中断超时任务的方法
- 下一篇:一种照相机目镜遮光装置
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置