缓存数据的备份方法及装置、缓存数据的恢复方法及装置的制造方法

文档序号:9326771阅读:639来源:国知局
缓存数据的备份方法及装置、缓存数据的恢复方法及装置的制造方法
【技术领域】
[0001]本发明涉及计算机存储技术,特别涉及一种缓存数据的备份方法及装置、缓存数据的恢复方法及装置。
【背景技术】
[0002]随着大数据时代的到来,各种应用飞速发展,数据存储系统越来越成为经济社会发展的必不可少的一部分。大数据时代到来的同时也为数据存储系统的设计难度带来巨大挑战,例如:如何保证数据的安全性。
[0003]为了保证数据的安全性,数据存储系统引入数据缓存技术。将业务应用的数据缓存在内存中。由于缓存的数据不会被写入物理存储介质,因此当系统电源突发故障时,如果不采取应急保护措施,必然会导致缓存数据丢失。
[0004]目前,为了避免缓存数据的丢失,系统电源突发故障时,会直接将内存中对应于当前业务应用的缓存数据保存到用于备份的物理存储介质比如磁盘中。后续在系统重新上电后,可以从物理存储介质比如磁盘中读取所备份的缓存数据,并将所读取的缓存数据集恢复到内存中。
[0005]但是,目前对缓存数据进行备份和恢复的方式依赖于磁盘的可靠性,也就是说,只有在磁盘无故障,磁盘中的缓存数据没有任何损坏的情况下,才能将同一业务应用的所有缓存数据整体恢复出来,如果磁盘的一个扇区发生损坏,导致该扇区中业务应用的相应部分缓存数据无法恢复时,则无法识别在其他未损坏扇区中的有效缓存数据,降低了缓存数据的可靠性,导致无法恢复出业务应用的缓存数据。

【发明内容】

[0006]本发明提供一种缓存数据的备份方法及装置、缓存数据的恢复方法及装置,能够提高缓存数据的可靠性。
[0007]—种缓存数据的备份方法,针对需要保护的缓存数据,为每一个缓存数据单元创建对应的元数据,每一个元数据中包括对应缓存数据单元的目标备份存储位置、校验码、对应缓存数据单元的下一个缓存数据单元的元数据位置信息;还包括:
[0008]当需要对一个业务应用的缓存数据进行备份时,以文件的方式,将该业务应用的所有缓存数据单元以及对应的元数据保存到物理存储介质中。
[0009]应用于包括双控制器的计算机中;
[0010]所述需要保护的缓存数据包括:对应于双控制器中第一控制器的脏数据和镜像数据,对应于双控制器中第二控制器的脏数据和镜像数据;其中,所述对应于第一控制器的镜像数据为所述第二控制器的脏数据的备份数据;所述对应于第二控制器的镜像数据为所述第一控制器的脏数据的备份数据。
[0011]所述每一个元数据中进一步包括:对应缓存数据单元所属业务应用的特征码,同一业务应用的特征码相同。
[0012]—种缓存数据的恢复方法,从物理存储介质中读取保存的元数据;每一个元数据中包括对应缓存数据单元的目标备份存储位置、校验码、对应缓存数据单元的下一个缓存数据单元的元数据位置信息;
[0013]S1、从当前读取的当前元数据中,获取当前元数据对应的当前缓存数据单元的目标备份存储位置,从所述物理存储介质的目标备份存储位置中获取当前缓存数据单元;
[0014]S2、根据当前元数据中的校验码对获取的当前缓存数据单元进行有效性校验,如果有效,则将当前缓存数据单元恢复到内存中,执行S3 ;
[0015]S3、根据当前元数据中包括的下一个缓存数据单元对应的元数据的位置信息,获取下一个元数据,将该下一个元数据作为当前元数据,返回执行SI。
[0016]进一步包括:预先在所述物理存储介质中建立索引表,将每一个元数据的位置信息保存在该索引表中,并利用指针将每一个元数据的位置信息指向对应缓存数据单元的下一个缓存数据单元的元数据位置信息;
[0017]在S3中,所述根据当前元数据中包括的下一个缓存数据单元对应的元数据的位置信息获取下一个元数据包括:利用所述索引表,获取指针从当前元数据的位置信息所指向的下一个元数据的位置信息,根据所获取的位置信息,获取下一个元数据;
[0018]所述每一个元数据中进一步包括:对应缓存数据单元所属业务应用的特征码,同一业务应用的特征码相同;
[0019]在S3中,当物理存储介质中的所述索引表无法读取时,该方法进一步包括:
[0020]读取所述当前元数据中的特征码,按照所述物理存储介质中的存储顺序查找其他元数据,查找该其他元数据中是否包括与当前元数据中的特征码相同的特征码,将找到的第一个具有相同特征码的其他元数据作为当前元数据,返回执行SI。
[0021]应用于包括双控制器的计算机中;所述物理存储介质为所述计算机中的硬盘;
[0022]各缓存数据包括:对应于双控制器中第一控制器的脏数据和镜像数据,对应于双控制器中第二控制器的脏数据和镜像数据;其中,所述对应于第一控制器的镜像数据为所述第二控制器的脏数据的备份数据;所述对应于第二控制器的镜像数据为所述第一控制器的脏数据的备份数据;
[0023]在S2中,如果无效,则直接执行S3,且该方法进一步包括:针对对应于第一控制器和第二控制器中任一方的未被恢复的所有缓存数据单元,从第一控制器和第二控制器中另一方的镜像数据中获取该未被恢复的所有缓存数据单元对应的数据,并恢复到内存中。
[0024]—种缓存数据的备份装置,包括:
[0025]创建单元,针对需要保护的缓存数据,为每一个缓存数据单元创建对应的元数据,每一个元数据中包括对应缓存数据单元的目标备份存储位置、校验码、对应缓存数据单元的下一个缓存数据单元的元数据位置信息;
[0026]备份单元,用于当需要对一个业务应用的缓存数据进行备份时,以文件的方式,将该业务应用的所有缓存数据单元以及对应的元数据保存到物理存储介质中。
[0027]所述创建单元,进一步在创建元数据时,在元数据中包括对应缓存数据单元所属业务应用的特征码,同一业务应用的特征码相同。
[0028]一种缓存数据的恢复装置,包括:
[0029]读取单元,用于从物理存储介质中逐一读取保存的元数据;每一个元数据中包括对应缓存数据单元的目标备份存储位置、校验码、对应缓存数据单元的下一个缓存数据单元的元数据位置信息;
[0030]缓存数据获取单元,用于从当前读取的当前元数据中,获取当前元数据对应的当前缓存数据单元的目标备份存储位置,从所述物理存储介质的目标备份存储位置中获取当前缓存数据单元;
[0031]缓存数据处理单元,根据所述读取单元读取的当前元数据中的校验码对所述缓存数据获取单元获取的当前缓存数据单元进行有效性校验,如果有效,则将当前缓存数据单元恢复到内存中,根据当前元数据中包括的下一个缓存数据单元对应的元数据的位置信息,获取下一个元数据,将该下一个元数据作为当前元数据,触发缓存数据获取单元。
[0032]所述每一个元数据的位置信息保存在索引表中,索引表中指针将每一个元数据的位置信息指向对应缓存数据单元的下一个缓存数据单元的元数据位置信息;
[0033]所述每一个元数据中进一步包括:对应缓存数据单元所属业务应用的特征码,同一业务应用的特征码相同;
[0034]所述缓存数据处理单元包括:
[0035]索引表处理子单元,用于利用所述索引表,获取指针从当前元数据的位置信息所指向的下一个元数据的位置信息,根据所获取的位置信息,获取下一个元数据;
[0036]异常处理子单元,用于当索引表处理子单元无法读取索引表时,读取所述当前元数据中的特征码,按照所述物理存储介质中的存储顺序查找其他元数据,查找该其他元数据中是否包括与当前元数据中的特征码相同的特征码,将找到的第一个具有相同特征码的其他元数据作为当前元数据,执行所述触发缓存
当前第1页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1