一种RAID位图存储的方法技术

技术编号:7917478 阅读:245 留言:0更新日期:2012-10-25 02:22
本发明专利技术公开了一种RAID位图存储的方法,属于一种计算机系统及存储领域,在磁盘阵列中有几个位图就把磁盘数据相应的几等分,每个位图只是对应其中一等分的数据区域,与其他的数据区域无关;位图放在所表示的数据区域的后面。本发明专利技术的一种RAID位图存储的方法的优点为让磁盘的读写性能达到更佳的状态、提高了磁盘性能。

【技术实现步骤摘要】

本专利技术涉及一种计算机系统及存储领域,具体地说是一种RAID位图存储的方法
技术介绍
在RAID1,RAID5等存在数据冗余的磁阵结构中,数据的完整性要求冗余的数据和原始数据的信息要保证一致。磁阵的写操作是一个过程,这个过程中发生异常,可能导致冗余数据和原始数据不一致,例如磁盘更换,写盘失败,系统掉电等。所以,成功写入数据的话,整个条带应该是一致的,但写入没有成功(或不完全)的话,条带数据很可能是不一致的。当系统重新上电后,就需要一种机制来那些条带或者区域可能不一致。如果没有记录信息的话,它只能假定所有数据都可能不一致,进行所有数据块 的一致性恢复。对于RAID5,就是重新计算所有条带的效验和;对于RAID1,就是重新同步所有数据块到镜像盘。这种全局数据同步会导致系统开机过程很漫长(或者就整个放任磁阵上电后处于不一致的状态)。如果有NVRAM (非易失性内存)的话,在对一个数据块写操作开始的时候,在NVRAM中保存写位置信息,写操作结束后,在NVRAM中删除这个信息。这样,在系统开机时,从NARAM中读出保存的写位置信息,这些位置信息记录了未成功写入的数据块,系统只需要对这些数据块进行同步即可,而不用同步磁阵全部数据。我们目前使用软件RAID构建的磁阵,这个就引出了 bitmap文件,可以理解bitmap文件的作用等同于上述专业磁阵的NVRAM(当然上述的场景只是NVRAM应用的一个小的方面)的作用,掉电重启后,会启动同步线程,有bitmap文件的话,会通过bitmap文件判断是否置位,如果没有置位,就说明整个区域在掉电那一时刻,不存在正在写的数据,直接跳过这个区域就可以了。目前对bitmap文件备份的方法是,当进行写操作的时候,系统会将所对应的位图位置成I,同步写到磁阵所有磁盘中预留区域去。只有当磁盘中的bitmap文件刷新成功之后,才开始一个正常的数据IO写操作。由于每次条带都要等对应的位图先写回磁盘后才能真正的进行写处理,而且磁盘的性能和内存等相差太远,对性能损耗很大,因此考虑到绕开磁盘,所以要换一种备份方式。
技术实现思路
本专利技术的技术任务是提供让磁盘的读写性能达到更佳的状态、可提高磁盘性能的一种RAID位图存储的方法。本专利技术的技术任务是按以下方式实现的,在磁盘阵列中有几个位图就把磁盘数据相应的几等分,每个位图只是对应其中一等分的数据区域,与其他的数据区域无关;位图放在所表示的数据区域的后面。磁盘服务时间由寻道时间、旋转延迟时间和扇区与磁盘适配器接口之间的传输时间组成;其中寻道时间占总时间的70%到80%左右,因此寻道时间是关键对于一些IO请求,特别是写请求,要不断修改超级块和位图,由于目前这些元数据信息存放到磁盘末端,磁头要寻道到末端,移动的距离会过大,在磁盘阵列的中间留一个元数据保留区即位图,磁盘末端同样截断就可以了。逻辑对应的位置,在实际物理地址上是处于不同的柱面,但数据对应的关系是一致的。这样的话,对于前半部分的操 作,不用把磁头移动到磁盘的末端,移到中间的位置就可以了,减少了磁头的移动距离,使得寻道时间减少。而对于后半部分的数据,总的移动距离保持不变。但从整个磁盘来说,对于元数据的操作,总的寻道时间相对原来会减少很多,从而能提闻性能。位图中的一个位是表示一个区域的状态,如果这个区域越小,就说明这个位图越精确,那么同步过程就可以跳过更多的区域,减少了同步的过程。所以,一个位图是比较粗粒度的划分,如果想更精确地表现是否同步的状态,就需要更细的划分,也就需要更多个位图页面。更多的位图就是更细的划分有几个位图就把磁盘数据几等分,每个位图只是对应一部分的数据区域,与其他的数据区域无关。例如,有两个页面的话,原来的放置方式是把两个位图页面都放在底部,而新的方式是先把磁盘阵列的数据区域平均分成两个部分,一个位图放在所表示的数据区域的后面。同理,四个位图的放置方式相似。依次理推,再多个页面的时候,放置方式相同。另外,对于RAID5来说,允许有一块盘失效,所以按照这个原则,可以把元数据同时存放在两块盘上。因为如果这两块盘中的一块盘失效,元数据还可以从另一个盘找到,如果这两个盘都失效的话,整个RAID5就失效了,元数据已经没有意义了。当然也可以选择多放几块盘。如果放在两块盘,在改写元数据的时候,就不必每个磁盘都参与,减少了整个系统的IO请求,从而提高了性能。对于RAID6因为可以允许两块盘的失效,那么就可以把元数据存放到三块盘上。对于RAIDl来说,至少也可以存放到两块盘上。当有盘失效的时候,如果这个盘是存放元数据的磁盘,当添加热备盘的时候,就需要把元数据写到这个热备盘;如果不是存放元数据的磁盘,可以不用往热备盘写元数据。是基于性能的考虑,让读写性能达到更佳的状态。其核心是以合理的方式存放在合理的位置上。提到的合理的方式,是指只写到一部分的磁盘上。提到的合理的位置,是指会影响读写性能的位置。RAID 为英文 Redundant Arrays of Inexpensive Disks 的简称,译为磁盘阵列。本专利技术的一种RAID位图存储的方法具有以下优点让磁盘的读写性能达到更佳的状态、提高了磁盘性能;因而,具有很好的推广使用价值。附图说明下面结合附图对本专利技术进一步说明。附图I、图2、图3、图4、图5、图6均为一种RAID位图存储的方法的磁盘阵列的数据布局图。具体实施方式参照说明书附图和具体实施例对本专利技术的一种RAID位图存储的方法作以下详细地说明。实施例 本专利技术的一种RAID位图存储的方法,在磁盘阵列中有几个位图就把磁盘数据相应的几等分,每个位图只是对应其中一等分的数据区域,与其他的数据区域无关;位图放在所表示的数据区域的后面。磁盘服务时间由寻道时间、旋转延迟时间和扇区与磁盘适配器接口之间的传输时间组成;其中寻道时间占总时间的70%到80%左右,因此寻道时间是关键对于一些IO请求,特别是写请求,要不断修改超级块和位图,由于目前这些元数据信息存放到磁盘末端,磁头要寻道到末端,移动的距离会过大,如图1,在磁盘阵列的中间留一个元数据保留区即位图,磁盘末端同样截断就可以了,如图2所示; 图2中所表现的是逻辑对应的位置,在实际物理地址上是处于不同的柱面,但数据对应的关系是一致的。这样的话,对于前半部分的操作,不用把磁头移动到磁盘的末端,移到·中间的位置就可以了,减少了磁头的移动距离,使得寻道时间减少。而对于后半部分的数据,总的移动距离保持不变。但从整个磁盘来说,对于元数据的操作,总的寻道时间相对原来的图I会减少很多,从而能提高性能。位图中的一个位是表示一个区域的状态,如果这个区域越小,就说明这个位图越精确,那么同步过程就可以跳过更多的区域,减少了同步的过程。所以,一个位图是比较粗粒度的划分,如果想更精确地表现是否同步的状态,就需要更细的划分,也就需要更多个位图页面。更多的位图就是更细的划分有几个位图就把磁盘数据几等分,每个位图只是对应一部分的数据区域,与其他的数据区域无关。例如,有两个页面的话,原来的放置方式图3所示是把两个位图页面都放在底部,而新的方式图4是先把磁盘阵列的数据区域平均分成两个部分,一个位图放在所表示的数据区域的后面。同理,如图5和图6所示,四个位图的放置方式相似。依次理推,再多个本文档来自技高网
...

【技术保护点】
一种RAID位图存储的方法,其特征在于在磁盘阵列中有几个位图就把磁盘数据相应的几等分,每个位图只是对应其中一等分的数据区域,与其他的数据区域无关;位图放在所表示的数据区域的后面。

【技术特征摘要】

【专利技术属性】
技术研发人员:古世磊
申请(专利权)人:浪潮电子信息产业股份有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1