磁盘阵列缓存刷写处理方法和装置的制作方法

文档序号:6384704阅读:178来源:国知局
专利名称:磁盘阵列缓存刷写处理方法和装置的制作方法
技术领域
本申请涉及数据处理技术,特别涉及磁盘阵列缓存刷写处理方法和装置。
背景技术
磁盘阵列(RAID:Redundant Arrays of Inexpensive Disks),其原理是利用数组方式形成磁盘组,配合数据分散排列的设计,提升数据的安全性。目前,RAID都是由很多便宜、容量较小、稳定性较高的磁盘组成的一个大型磁盘组,实现了利用个别磁盘提供数据所产生的加成效果来提升整个磁盘系统效能。RAID通过在多个磁盘上同时存储数据来大幅提高数据存储的吞吐量,同时,RAID本身也具有缓存刷写功能,其在到达一定条件比如存储容量被占满时,会自动将缓存的数据刷写至硬盘。也就是说,RAID只有在到达固定的条件比如存储容量被占满时,才会自动将缓存的数据刷写至硬盘。而如果未到达所述条件,RAID是不会将缓存的数据刷写至硬盘的,基于此,在一些特殊情况比如RAID未到达所述条件但此时需要断电的情况,就会出现由于RAID未及时将缓存的数据刷写至硬盘而导致RAID缓存的数据丢失。

发明内容
本申请提供了磁盘阵列缓存刷写处理方法和装置,以防止在一些特殊情况比如RAID未到达所述条件但此时需要断电的情况由于RAID未及时将缓存的数据刷写至硬盘而导致RAID缓存的数据丢失。本申请提供的技术方案包括一种磁盘阵列缓存刷写处理方法,包括将计数器与磁盘阵列关联,控制计数器实时记录磁盘阵列当前缓存的数据量;在预先设定条件到达时,查看所述计数器当前记录的数据量;如果查看的数据量大于第一设定数值,则触发所述磁盘阵列刷写缓存的数据至硬盘;所述磁盘阵列在接收到所述触发时,将缓存的数据刷写至硬盘。一种磁盘阵列缓存刷写处理装置,该装置包括关联单元,用于将计数器与磁盘阵列关联,以控制计数器实时记录磁盘阵列当前缓存的数据量;数据量处理单元,用于在预先设定条件到达时,查看所述计数器当前记录的数据量;触发单元,用于在所述数据量处理单元查看的数据量大于第一设定数值时,触发所述磁盘阵列刷写缓存的数据至硬盘,以使所述磁盘阵列在接收到所述触发时,将缓存的数据刷写至硬盘。由以上技术方案可以看出,本发明中,通过将计数器与磁盘阵列关联,控制计数器实时记录磁盘阵列当前缓存的数据量,在预先设定条件到达时,查看所述计数器当前记录的数据量;如果查看的数据量大于第一设定数值,则触发所述磁盘阵列刷写缓存的数据至硬盘,所述磁盘阵列在接收到所述触发时,将缓存的数据刷写至硬盘,这实现了通过触发方式触发磁盘阵列被动刷写缓存的数据至硬盘,能够保证磁盘阵列在一些特殊情况比如RAID未到达主动刷写数据条件但此时需要断电的情况下,通过触发方式触发磁盘阵列被动刷写缓存的数据至硬盘,不会出现由于磁盘阵列未及时将缓存的数据刷写至硬盘而导致磁盘阵列缓存的数据丢失。


图1为本发明实施例提供的方法流程图;图2为本发明实施例提供的装置结构图。
具体实施例方式为了使本发明的目的、技术方案和优点更加清楚,下面结合附图和具体实施例对本发明进行详细描述。本发明实施例提供的方法,通过触发方式触发磁盘阵列被动刷写缓存的数据至硬盘,能够保证磁盘阵列在一些特殊情况比如RAID未到达主动刷写数据条件但此时需要断电的情况下,通过触发方式触发磁盘阵列被动刷写缓存的数据至硬盘,不会出现由于磁盘阵列未及时将缓存的数据刷写至硬盘而导致磁盘阵列缓存的数据丢失。下面对本发明实施例提供的方法进行描述参见图1,图1为本发明实施例提供的方法流程图。如图1所示,该流程可包括以下步骤步骤101,将计数器与磁盘阵列关联,控制计数器实时记录磁盘阵列当前缓存的数据量。本发明中,本步骤101的计数器可复用操作系统自身的计数器。步骤102,在预先设定条件到达时,查看所述计数器当前记录的数据量。这里,预先设定条件可为断电条件,或者为其他故障条件,本发明并不具体限定。步骤103,如果查看的数据量大于第一设定数值,则触发所述磁盘阵列刷写缓存的数据至硬盘,以使磁盘阵列在接收到所述触发时,将缓存的数据刷写至硬盘。这里,第一设定数值可为0,或者为大于0的一个数值,本发明并不具体限定。至此,完成图1所示流程。需要说明的是,为了兼容磁盘阵列现有的缓存刷写功能,本发明中,磁盘阵列还可在一定条件(该条件与现有技术中设置的条件类似,在本发明中可成为主动刷写条件)下主动刷写缓存的数据至硬盘。从图1所示流程可以看出,除了磁盘阵列在主动刷写条件下主动刷写缓存的数据至硬盘,本发明中,还可通过触发方式触发磁盘阵列被动刷写缓存的数据至硬盘,这能够保证磁盘阵列在一些特殊情况比如RAID未到达主动刷写数据条件但此时需要断电的情况下,通过触发方式触发磁盘阵列被动刷写缓存的数据至硬盘,不会出现由于磁盘阵列未及时将缓存的数据刷写至硬盘而导致磁盘阵列缓存的数据丢失。
优选地,本发明中,由于计数器实时记录磁盘阵列当前缓存的数据量,因此,在上述步骤103中,磁盘阵列将缓存的数据刷写至硬盘后,该计数器会更新之前的记录,记录磁盘阵列当前缓存的数据量,也即,此时记录的数据量为磁盘阵列将缓存的数据刷写至硬盘后的数据量。还有,本发明中,为了便于用户了解磁盘阵列缓存的数据刷写情况,还可在磁盘阵列将缓存的数据刷写至硬盘后,查看所述计数器当前记录的数据量;如果查看的数据量大于第二设定数值,则确定磁盘阵列缓存的数据未全部刷写至硬盘,而如果查看的数据量等于第二设定数值,则确定磁盘阵列缓存的数据已全部刷写至硬盘。这里,所述第二设定数值与上述的第一设定数值无关,其取值可为0,或者为大于0的数值,本发明并不具体限定。优选地,本发明中,在上述确定磁盘阵列缓存的数据未全部刷写至硬盘时,该方法进一步包括继续触发所述磁盘阵列刷写缓存的数据至硬盘,以使所述磁盘阵列在接收到所述触发时,将缓存的数据刷写至硬盘。通过这种方式,能够尽可能地保证磁盘阵列缓存的数据完全刷写至硬盘,以防止在一些特殊情况比如停电时磁盘阵列缓存的数据丢失。以上对本发明提供的方法进行了描述。下面对本发明提供的装置进行描述参见图2,图2为本发明实施例提供的装置结构图。如图2所示,该装置可包括关联单元,用于将计数器与磁盘阵列关联,以控制计数器实时记录磁盘阵列当前缓存的数据量;数据量处理单元,用于在预先设定条件到达时,查看所述计数器当前记录的数据量;触发单元,用于在所述数据量处理单元查看的数据量大于第一设定数值时,触发所述磁盘阵列刷写缓存的数据至硬盘,以使所述磁盘阵列在接收到所述触发时,将缓存的数据刷写至硬盘。优选地,本发明中,所述关联单元还在所述磁盘阵列将缓存的数据刷写至硬盘后,进一步控制计数器实时记录磁盘阵列当前缓存的数据量。本发明中,所述数据量处理单元在所述磁盘阵列将缓存的数据刷写至硬盘后,进一步查看所述计数器当前记录的数据量,如果查看的数据量大于第二设定数值,则确定磁盘阵列缓存的数据未全部刷写至硬盘,所述第二设定数值为0,或者为大于0的数值,如果查看的数据量等于第二设定数值,则确定磁盘阵列缓存的数据已全部刷写至硬盘。本发明中,所述触发单元还用于在所述数据量处理单元确定磁盘阵列缓存的数据未全部刷写至硬盘时,进一步继续触发所述磁盘阵列刷写缓存的数据至硬盘,以使所述磁盘阵列在接收到所述触发时,将缓存的数据刷写至硬盘。优选地,本发明中,所述预先设定条件为断电条件。至此,完成图2所示的装置描述。由以上技术方案可以看出,本发明中,通过将计数器与磁盘阵列关联,控制计数器实时记录磁盘阵列当前缓存的数据量,在预先设定条件到达时,查看所述计数器当前记录的数据量;如果查看的数据量大于第一设定数值,则触发所述磁盘阵列刷写缓存的数据至硬盘,所述磁盘阵列在接收到所述触发时,将缓存的数据刷写至硬盘,这实现了通过触发方式触发磁盘阵列被动刷写缓存的数据至硬盘,能够保证磁盘阵列在一些特殊情况比如RAID未到达主动刷写数据条件但此时需要断电的情况下,通过触发方式触发磁盘阵列被动刷写缓存的数据至硬盘,不会出现由于磁盘阵列未及时将缓存的数据刷写至硬盘而导致磁盘阵列缓存的数据丢失。以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。
权利要求
1.一种磁盘阵列缓存刷写处理方法,其特征在于,该方法包括 将计数器与磁盘阵列关联,控制计数器实时记录磁盘阵列当前缓存的数据量; 在预先设定条件到达时,查看所述计数器当前记录的数据量; 如果查看的数据量大于第一设定数值,则触发所述磁盘阵列刷写缓存的数据至硬盘; 所述磁盘阵列在接收到所述触发时,将缓存的数据刷写至硬盘。
2.根据权利要求1所述的方法,其特征在于,所述磁盘阵列将缓存的数据刷写至硬盘进一步包括 返回控制计数器实时记录磁盘阵列当前缓存的数据量。
3.根据权利要求2所述的方法,其特征在于,该方法进一步包括 查看所述计数器当前记录的数据量; 如果查看的数据量大于第二设定数值,则确定磁盘阵列缓存的数据未全部刷写至硬盘,所述第二设定数值为O,或者为大于O的数值; 如果查看的数据量等于第二设定数值,则确定磁盘阵列缓存的数据已全部刷写至硬盘。
4.根据权利要求3所述的方法,其特征在于, 在确定磁盘阵列缓存的数据未全部刷写至硬盘时,该方法进一步包括 继续触发所述磁盘阵列刷写缓存的数据至硬盘,以使所述磁盘阵列在接收到所述触发时,将缓存的数据刷写至硬盘。
5.根据权利要求1至4任一所述的方法,其特征在于,所述预先设定条件为断电条件。
6.一种磁盘阵列缓存刷写处理装置,其特征在于,该装置包括 关联单元,用于将计数器与磁盘阵列关联,以控制计数器实时记录磁盘阵列当前缓存的数据量; 数据量处理单元,用于在预先设定条件到达时,查看所述计数器当前记录的数据量;触发单元,用于在所述数据量处理单元查看的数据量大于第一设定数值时,触发所述磁盘阵列刷写缓存的数据至硬盘,以使所述磁盘阵列在接收到所述触发时,将缓存的数据刷写至硬盘。
7.根据权利要求6所述的装置,其特征在于,所述关联单元还在所述磁盘阵列将缓存的数据刷写至硬盘后,进一步控制计数器实时记录磁盘阵列当前缓存的数据量。
8.根据权利要求7所述的装置,其特征在于,所述数据量处理单元在所述磁盘阵列将缓存的数据刷写至硬盘后,进一步查看所述计数器当前记录的数据量,如果查看的数据量大于第二设定数值,则确定磁盘阵列缓存的数据未全部刷写至硬盘,所述第二设定数值为O,或者为大于O的数值,如果查看的数据量等于第二设定数值,则确定磁盘阵列缓存的数据已全部刷写至硬盘。
9.根据权利要求8所述的装置,其特征在于, 所述触发单元还用于在所述数据量处理单元确定磁盘阵列缓存的数据未全部刷写至硬盘时,进一步继续触发所述磁盘阵列刷写缓存的数据至硬盘,以使所述磁盘阵列在接收到所述触发时,将缓存的数据刷写至硬盘。
10.根据权利要求6至9任一所述的装置,其特征在于,所述预先设定条件为断电条件。
全文摘要
本申请提供了磁盘阵列缓存刷写处理方法和装置。其中,该方法包括将计数器与磁盘阵列关联,控制计数器实时记录磁盘阵列当前缓存的数据量;在预先设定条件到达时,查看所述计数器当前记录的数据量;如果查看的数据量大于第一设定数值,则触发所述磁盘阵列刷写缓存的数据至硬盘;所述磁盘阵列在接收到所述触发时,将缓存的数据刷写至硬盘。采用本发明,能够防止在一些特殊情况比如RAID未到达所述条件但此时需要断电的情况由于RAID未及时将缓存的数据刷写至硬盘而导致RAID缓存的数据丢失。
文档编号G06F3/06GK103049221SQ201210554840
公开日2013年4月17日 申请日期2012年12月19日 优先权日2012年12月19日
发明者陈军歌 申请人:创新科存储技术有限公司, 创新科存储技术(深圳)有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1