建立映像储存设备与同步储存设备数据更新的方法

文档序号:6520589阅读:134来源:国知局
专利名称:建立映像储存设备与同步储存设备数据更新的方法
技术领域
本发明涉及一种独立磁盘多重数组(RAID)的映像储存设备,特别是一种映像储存设备数据保护的方法。
背景技术
独立磁盘多重数组(RAID)的目的在于将相同的数据储存在多个磁盘驱动器中不同的地方,并且改善储存子系统的效能,其中,映像储存设备(例如RAID 1)使用至少两个相同的磁盘驱动器并且在两者中储存完全相同的数据区块,此为RAID中错误容忍度最慢的类型,因为同时必须将数据复制到两个磁盘驱动器中,然而,此为提供高可靠度最简单的方法。
目前在储存领域大多使用数据保护的方法是双控制器配合映像储存设备的方式,请参考图1所示,这种方式是通过映像储存设备被一个控制器1所控制,如果该控制器1发生问题无法使用(如电源损坏,机器当机)等情况的时候,映像储存设备则交给另一个控制器2控制,请参考第2图所示,映像储存设备会变为停止状态无法工作,这时候,使用者数据无法复制到这个映像储存设备上,处理的方式是重新启动该机器,或者将使用者正在向该映像储存设备复制的数据存放在一个缓存器10中,待另一个控制器2完全控制了映像储存设备之后,再将缓存器10中的使用者数据复制到映像储存设备上。

发明内容
本发明所要解决的技术问题在于提供一种建立映像储存设备与同步储存设备数据更新的方法,以针对使用者在使用储存设备时,达到数据保护的目的,大大提高了系统的可靠性和安全性,没有了中间的缓冲减少了内存的消耗。
为了实现上述目的,本发明提供了一种建立映像储存设备与同步储存设备数据更新的方法,其特点在于,该方法包括下列步骤分配每一控制器只控制相对应的唯一储存设备;将多个该储存设备建立一映像储存设备;该映像储存设备将该映像储存设备的状态信息反馈至每一该控制器上;当有任一异常控制器发生时,确定至少一个控制器正常运作,则持续接收使用者的数据,并记录至该映像储存设备中;重新启动该异常控制器,并获取该映像储存设备的状态信息;及根据该状态信息找到数据最完整的该储存设备,将该异常控制器所控制相对应的唯一储存设备进行同步更新并添加到该映像储存设备。
上述建立映像储存设备与同步储存设备数据更新的方法,其特点在于,该映像储存设备选自最小的该储存设备。
上述建立映像储存设备与同步储存设备数据更新的方法,其特点在于,该映像储存设备的所有的信息记录在每一该控制器的一配置文件中。
本发明所提的方法具有以下优点1、没有转换控制器的过程,大大提高了系统的可靠性和安全性,系统不会在控制器转换失败的时候而瘫痪。
2、不使用缓存器,提高了系统的性能和使用者数据的安全性,即使在单个控制器发生损毁的时候,使用者的数据依旧可以向这个映像储存设备进行复制,没有了中间的缓冲减少了内存的消耗。
3、使得整体系统维护起来比较方便,当控制器发生问题的时候,不需要在确认使用者数据从缓存器复制完毕,就可以针对出现问题的控制器进行维修。
以下结合附图和具体实施例对本发明进行详细描述,但不作为对本发明的限定。


图1为现有双控制器配合映像储存设备的示意图;图2为现有双控制器配合映像储存设备的控制器的转换过程示意图;图3A为本发明的控制器各别独立控制储存设备配合映像储存设备的示意图;图3B为本发明的控制器失效的示意图;图4为本发明的方法流程图;图5为本发明建立映像储存设备的流程图;图6为本发明的同步储存设备数据更新的流程图;
图7A~7C为本发明的实施例示意图;图8为本发明的实施例的控制器写入数据的流程图;及图9为本发明的实施例的控制器恢复数据的流程图。
其中,附图标记10缓存器步骤401分配每一控制器只控制相对应的唯一储存设备步骤402将多个该储存设备建立一映像储存设备步骤403该映像储存设备将该映像储存设备的状态信息反馈至每一该控制器上步骤404当有任一异常控制器发生时,确定至少一个控制器正常运作,则持续接收使用者的数据,并记录至该映像储存设备中步骤405重新启动该异常控制器,并获取该映像储存设备的状态信息步骤406根据该状态信息找到数据最完整的该储存设备,将该异常控制器所控制相对应的唯一储存设备进行同步更新并添加到该映像储存设备步骤501获取每一个控制器上储存设备的大小步骤502找出最小的储存设备步骤503以最小的储存设备建立出镜像储存设备步骤504建立是否成功步骤505使用者数据占用映像储存设备的信息会立即映像给每一个控制器步骤506报告失败和原因步骤601控制器1获取映像储存设备的状态信息步骤602检查该控制器1数据是否完整步骤603根据该状态信息找到数据最完整的储存设备进行同步操作步骤604将控制器1所控制的储存设备1的数据进行补充完整步骤605将储存设备1添加到映像储存设备步骤801查看控制器的状态步骤802获取网络层传输的数据步骤803将数据写入每一个状态正常控制器的储存设备步骤804判断数据写入是否成功步骤805在写入数据的结尾做标示,证明该数据写入完毕步骤806报告失败和原因步骤901查看控制器的状态步骤902通过配置文件找到没有损坏的控制器步骤903通过该控制器上储存设备上的标示数据找到当前控制器上没有的数据位置步骤904将目前控制器储存设备没有的数据写入步骤905判断数据写入是否成功步骤906在写入数据的结尾做标示,证明该数据写入完毕步骤907报告失败和原因具体实施方式
请参考图3A,每一个控制器只控制自己的储存设备(控制器1控制储存设备1、控制器2控制储存设备2、控制器3控制储存设备3…),将每一个控制器的储存设备建立一个整体的映像储存设备,这个映像储存设备将映像储存设备的状态信息反馈至每一控制器上,并被所有的控制器所知晓,当单一个控制器无法使用的时候,不影响使用者对映像设备的读写,这样的控制器可以有多个,而所有的储存设备生成一个映像储存设备。
每个控制器都控制自己储存设备,并且知道整体映像设备的信息,这样使用者数据可以向这个映像设备进行复制。
请参考图3B所示,如果一个控制器(以控制器1为例)发生异常情况导致该储存设备无法使用,根据上述建立映像储存设备的原理,储存设备将不会受到影响,使用者数据仍旧复制到正常的储存设备上,储存设备的大小也不会受到影响,因为在建立映像储存设备的时候就统一了储存设备的大小,可以说对使用者来说什么都没有改变。
因此,本发明提出一种建立映像储存设备与同步储存设备数据更新的方法,以针对使用者在使用储存设备时,达到数据保护的目的,请参考图4所示,该方法包括下列步骤步骤401,分配每一控制器只控制相对应的唯一储存设备;步骤402,再将多个该储存设备建立一映像储存设备;步骤403,该映像储存设备将该映像储存设备的状态信息反馈至每一该控制器上;步骤404,当有任一异常控制器发生时,确定至少一个控制器正常运作,则持续接收使用者的数据,并记录至该映像储存设备中;步骤405,重新启动该异常控制器,并获取该映像储存设备的状态信息;步骤406,根据该状态信息找到数据最完整的该储存设备,将该异常控制器所控制相对应的唯一储存设备进行同步更新并添加到该映像储存设备。
请参考图5所示,为建立映像储存设备的流程,根据映像储存设备的原理,使用者数据被写到每一个储存设备上,每一个储存设备上的数据信息都是一样的,步骤501,通过获取每一个控制器上储存设备的大小,步骤502,找出最小的储存设备,总体建立出来映像储存设备的大小将为最小储存设备的大小,步骤503,以最小的储存设备建立出镜像储存设备,大于该储存设备的储存空间将不会被使用,这样保证了每一个储存设备上的使用者数据的一致性,步骤504,接着判断建立是否成功,如果是,每个控制器都得到目前映像储存设备的信息,这个信息在每一个控制器上都是相同的,其中映像储存设备的所有的信息记录在每一控制器的配置文件中,步骤505,使用者数据占用映像储存设备的信息会立即地映像给每一个控制器,不会出现不同控制器之间对于映像储存设备信息不同的情况,步骤506,如果没有成功建立映像储存设备,则报告失败和原因。
请参考图6所示,为同步储存设备数据更新的流程,当损坏的控制器1被修复之后,需要做到是将控制器1启动,步骤601,当控制器1获取映像储存设备的状态信息后,步骤602,检查该控制器1数据是否完整,如果不完整,步骤603,根据该状态信息找到数据最完整的储存设备进行同步操作,步骤604,将控制器1所控制的储存设备1的数据进行补充完整,步骤605,然后再将储存设备1添加到映像储存设备中,这样系统可以恢复到原来的状态,作为使用者来说不会有任何的影响。
这样的处理方式可以延伸到多个控制器的问题发生,只要存在一个正常的控制器,系统就可以正常地工作,出现问题的控制器修复完毕之后可以随时添加到映像储存设备中,通过同步操作达到各个控制器所控制的储存设备的数据相同,对于维护系统十分方便,对使用者的数据保护也更加安全。
本发明提出一实施例,说明建立映像储存设备与同步储存设备数据更新的方法,请参考图7A~7C所示,在一个双控制器的系统中,有两个主机板,两个磁盘设备,每个主机板控制一个磁盘设备,两个主机板之间依靠网卡来通讯,对外也是依靠网卡传输数据。每一个主机板都有自己的配置文件,该配置文件记录建立出来的映像设备所有的信息。将所有的磁盘设备建立成一个映像储存设备,映像储存设备的信息被写入到配置文件中,使用者数据可以通过网卡写到该映像储存设备上。
如果一个主机板发生了问题无法正常地工作,它所管理的磁盘设备也会出现问题,这个时候映像储存设备变为降阶状态,正常主机板的配置文件会发生变化,记录下另一个主机板损坏的情况,映像储存设备仍旧可以正常地使用,使用者的数据被记录在那个没有问题的磁盘设备上,对使用者来说什么都没有发生。
当该主机板恢复正常工作之后,再次启动该主机板,该主机板会检查自己和另一个正常主板的配置文件,然后对映像储存设备做一次同步的操作使得两块磁盘上的数据相同,然后修改两个配置文件,将修改的数据将进行更新。在此过程中,由于映像储存设备处于同步的过程仍旧可以同步进行数据传输,对使用者来说没有变化。
如果使用其它的储存设备建立数据更新的逻辑也是相同的,不同在于储存设备的同步过程,因为映像储存设备自身有比较完备的同步机制。如果使用的其它的储存设备不依靠映像储存设备来实现映像机制,在数据写入时候和控制器恢复之后的同步过程需要依靠自身数据更新的逻辑来执行,这些操作都是在后端进行,对使用者的读写没有影响。请参考图8所示,表示控制器写入数据的过程,步骤801,首先查看控制器的状态,步骤802,获取网络层传输的数据,步骤803,接着将数据写入每一个状态正常控制器的储存设备,步骤804,判断数据写入是否成功,如果成功,步骤805,则在写入数据的结尾做标示,证明该数据写入完毕,步骤806,否则报告失败和原因。
请参考图9所示,表示控制器恢复数据的过程,步骤901,查看控制器的状态,步骤902,通过配置文件找到没有损坏的控制器,步骤903,通过该控制器上储存设备上的标示数据找到当前控制器上没有的数据位置,这样可以保证数据的正确性,步骤904,再将目前控制器储存设备没有的数据写入,步骤905,接着判断数据写入是否成功,如果成功,在写入数据的结尾做标示,步骤906,证明该数据写入完毕,步骤907,否则报告失败和原因。配置文件的标示数据区块的数据结构包括储存设备Id、建立时间、写入数据的大小、所属控制器的Id以及其它信息等。
当然,本发明还可有其他多种实施例,在不背离本发明精神及其实质的情况下,熟悉本领域的技术人员当可根据本发明作出各种相应的改变和变形,但这些相应的改变和变形都应属于本发明所附的权利要求的保护范围。
权利要求
1.一种建立映像储存设备与同步储存设备数据更新的方法,其特征在于,该方法包括下列步骤分配每一控制器只控制相对应的唯一储存设备;将多个该储存设备建立一映像储存设备;该映像储存设备将该映像储存设备的状态信息反馈至每一该控制器上;当有任一异常控制器发生时,确定至少一个控制器正常运作,则持续接收使用者的数据,并记录至该映像储存设备中;重新启动该异常控制器,并获取该映像储存设备的状态信息;及根据该状态信息找到数据最完整的该储存设备,将该异常控制器所控制相对应的唯一储存设备进行同步更新并添加到该映像储存设备。
2.根据权利要求1所述的建立映像储存设备与同步储存设备数据更新的方法,其特征在于,该映像储存设备选自最小的该储存设备。
3.根据权利要求1所述的建立映像储存设备与同步储存设备数据更新的方法,其特征在于,该映像储存设备的所有的信息记录在每一该控制器的一配置文件中。
全文摘要
本发明涉及一种建立映像储存设备与同步储存设备数据更新的方法,包括以下步骤分配每一控制器只控制相对应的唯一储存设备;将多个该储存设备建立映像储存设备;映像储存设备将映像储存设备的状态信息反馈至每一控制器上;当有任一异常控制器发生时,确定至少一个控制器正常运作,则持续接收使用者的数据,并记录至映像储存设备中;重新启动异常控制器,并获取映像储存设备的状态信息;及根据状态信息找到数据最完整的储存设备,将异常控制器所控制相对应的唯一储存设备进行同步更新并添加到映像储存设备。本发明大大提高了系统的可靠性和安全性,没有了中间的缓冲减少了内存的消耗。
文档编号G06F3/06GK1991769SQ20051002305
公开日2007年7月4日 申请日期2005年12月28日 优先权日2005年12月28日
发明者王建飞, 陈玄同, 刘文涵 申请人:英业达股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1