一种数据存储方法及装置制造方法

文档序号:6516416阅读:158来源:国知局
一种数据存储方法及装置制造方法
【专利摘要】本发明实施例公开一种数据存储方法及装置,该方法包括:在接收到对目标文件的更新数据时,分配第一存储空间存储目标文件的更新数据,并记录第一存储空间的地址,在检测到目标文件系统不存在快照保护时,获取目标文件的根的修改次数,若获取的修改次数小于预设的次数阈值,将第一存储空间的地址记录到所述目标文件的根中,本发明实施例的数据存储方法可减少数据更新时对存储器的修改次数,降低硬盘上出现碎片的概率,可避免因修改次数过多而导致硬盘的存储介质失效,提高硬盘的使用寿命。
【专利说明】一种数据存储方法及装置
【技术领域】
[0001]本发明涉及计算机存储领域,尤其涉及一种数据存储方法及装置。
【背景技术】
[0002]固态硬盘在现代生活中的应用越来越广泛,固态硬盘的重定向写(英文全称:Redirect On Write)技术也越来越多的应用到各种文件系统中,重定向写不会影响数据源的性能,也不会影响到文件系统快照保护的性能。
[0003]现有技术重定向写的方法不管是修改写还是新写都会为更新数据分配新的数据块,不管文件系统是否存在快照保护,都要分配新的数据块,并将新的数据块地址写入文件的根,再将修改后的文件的根的地址写入文件系统的根,修改的数据越多,分配新的数据块越多,硬盘上出现碎片的概率越大,另外,频繁修改文件系统的根会导致硬盘存储介质失效,降低了文件的重定向写的效率,并降低硬盘的使用寿命。

【发明内容】

[0004]本发明实施例提供一种数据存储方法及装置,本发明实施例数据存储方法可在目标文件系统不存在快照保护的情况下,减少数据更新时对存储器的修改次数。
[0005]第一方面,本发明实施例提供一种数据存储方法,包括:
[0006]在接收到对目标文件的更新数据时,分配第一存储空间存储所述目标文件的更新数据,并记录所述第一存储空间的地址;
[0007]在检测到所述目标文件系统不存在快照保护时,获取所述目标文件的根的修改次数;
[0008]若获取的修改次数小于预设的次数阈值,将所述第一存储空间的地址记录到所述目标文件的根中;
[0009]目标文件系统的根中存储有所述目标文件的根的地址,所述目标文件的根中存储有所述目标文件更新数据的地址。
[0010]结合第一方面,在第一方面的第一种可能的实现方式中,所述在接收到对目标文件的更新数据时,分配第一存储空间存储所述对目标文件的更新数据,并记录所述第一存储空间的地址之前,包括:
[0011]为所述目标文件的根配置两个存储地址,选择其中一个存储地址作为当前备份地址,用于存储所述记录的第一存储空间的地址,再次接收到对目标文件的更新数据时,选择其中另一个存储地址作为当前备份地址,用于存储记录的第一存储空间的地址。
[0012]结合第一方面,或者第一方面的第一种可能的实施方式,在第一方面的第二种可能的实现方式中,还包括:
[0013]在接收到对目标文件的更新数据之前,配置修改计数器,所述修改计数器用于记录所述目标文件的根的修改次数;
[0014]当将所述目标文件的根中的当前备份地址修改为所述记录的第一存储空间的地址后,将所述目标文件的根的修改计数器记录的所述目标文件的根的修改次数加I。
[0015]结合第一方面,在第一方面的第三种可能的实现方式中,还包括:
[0016]在检测到所述目标文件系统存在快照保护时,生成所述新的目标文件的根的地址;
[0017]将所述目标文件系统的根中存储的原目标文件的根的地址修改为所述新的目标文件的根的地址。
[0018]结合第一方面,在第一方面的第四种可能的实现方式中,还包括:
[0019]若获取的修改次数不小于预设的次数阈值,将所述目标文件的根的修改计数器清零,生成所述新的目标文件的根;
[0020]将所述目标文件系统的根中存储的原目标文件的根的地址修改为所述新的目标文件的根的地址。
[0021]结合第一方面,或者第一方面的第三中可能的实施方式,或者第一方面第四种可能的实施方式,在第一方面的第五种可能的实现方式中,还包括:
[0022]若对所述目标文件系统的根的修改次数不小于预设的次数阈值时,分配第二存储空间,用于存储所述目标文件系统的根。
[0023]结合第一方面,在第一方面的第六种可能的实现方式中,所述第一存储空间是固态硬盘中的存储空间。
[0024]第二方面,本发明实施例提供一种数据存储装置,包括:
[0025]处理模块,用于在接收到对目标文件的更新数据时,分配第一存储空间存储所述目标文件的更新数据,并记录所述第一存储空间的地址;
[0026]第一检测模块,用于在检测到所述目标文件系统不存在快照保护时,获取所述目标文件的根的修改次数;
[0027]第一执行模块,用于若获取的修改次数小于预设的次数阈值,将所述第一存储空间的地址记录到所述目标文件的根中;
[0028]目标文件系统的根中存储有所述目标文件的根的地址,所述目标文件的根中存储有所述目标文件更新数据的地址。
[0029]结合第二方面,在第二方面的第一种可能的实现方式中,在所述处理模块之前,包括:
[0030]存储地址配置模块,用于为所述目标文件的根配置两个存储地址,选择其中一个存储地址作为当前备份地址,用于存储所述记录的第一存储空间的地址,再次接收到对目标文件的更新数据时,选择其中另一个存储地址作为当前备份地址,用于存储记录的第一存储空间的地址。
[0031]结合第二方面,或者第二方面的第一种可能的实施方式,在第二方面的第二种可能的实现方式中,还包括:
[0032]修改计数器配置模块,用于在接收到对目标文件的更新数据之前,配置修改计数器,所述修改计数器用于记录所述目标文件的根的修改次数;
[0033]更新模块,用于当将所述目标文件的根中的当前备份地址修改为所述记录的第一存储空间的地址后,将所述目标文件的根的修改计数器记录的所述目标文件的根的修改次数加I。[0034]结合第二方面,在第二方面的第三种可能的实现方式中,还包括:
[0035]第二检测模块,用于在检测到所述目标文件系统存在快照保护时,生成所述新的目标文件的根的地址;
[0036]第一修改模块,用于将所述目标文件系统的根中存储的原目标文件的根的地址修改为所述新的目标文件的根的地址。
[0037]结合第二方面,在第二方面的第四种可能的实现方式中,还包括:
[0038]第二执行模块,用于若获取的修改次数不小于预设的次数阈值,将所述目标文件的根的修改计数器清零,生成所述新的目标文件的新的根;
[0039]第二修改模块,用于将所述目标文件系统的根中的存储的原目标文件的根的地址修改为所述新的目标文件的根的地址。
[0040]结合第二方面,或者第二方面的第三中可能的实施方式,或者第二方面第四种可能的实施方式,在第二方面的第五种可能的实现方式中,还包括:
[0041]分配模块,用于若对所述目标文件系统的根的修改次数不小于预设的次数阈值时,分配第二存储空间,用于存储所述目标文件系统的根。
[0042]结合第二方面,在第二方面的第六种可能的实现方式中,所述第一存储空间是固态硬盘中的存储空间。
[0043]本发明实施例的数据存储方法可在目标文件系统不存在快照保护的情况下,直接修改目标文件的根,而不需要修改目标文件系统的根,减少数据更新时对存储器的修改次数,降低硬盘上出现碎片的概率,也可避免因修改次数过多而导致硬盘的存储介质失效,提高硬盘的使用寿命。
【专利附图】

【附图说明】
[0044]为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0045]图1是文件系统的树形目录结构示意图;
[0046]图2是本发明第一实施例数据存储方法流程图;
[0047]图3是本发明实施例文件系统数据更新示意图;
[0048]图4是本发明第二实施例数据存储方法流程图;
[0049]图5是本发明第三实施例数据存储方法流程图;
[0050]图6是本发明第一实施例数据存储装置结构框图;
[0051]图7是本发明第二实施例数据存储装置结构框图;
[0052]图8是本发明第三实施例数据存储装置结构框图;
[0053]图9是本发明第四实施例数据存储装置结构框图。
【具体实施方式】
[0054]下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0055]本发明实施例中的文件系统是指一种存储和组织固态硬盘中数据的方法,文件系统使得对固态硬盘的访问和查找变得容易,文件系统使用树形目录的抽象逻辑概念代替了硬盘和光盘等物理设备使用数据块的概念。
[0056]请参见图1,文件系统的树形目录结构示意图,本发明实施例中的文件系统通过树形目录结构管理数据,文件系统包括“树根”,即文件系统的根,文件系统的根中包含有元数据,即文件的根,元数据是描述数据的数据(data aboutdata),主要是描述数据属性(property)的信息,用来支持如指示存储位置、历史数据、资源查找、文件纪录等功能,元数据中包括若干用于存储数据的数据块,如果想更新数据,就要增加新的数据块,释放旧的数据块,因此更新的数据越多,数据块就越多,对元数据的修改就越多。
[0057]应当理解,文件系统的根中存储有所述文件的根的地址,文件系统的根通过所述地址指向文件的根,文件的根中存储有数据块的地址,文件的根通过所述地址指向数据块。文件系统中包括多个文件系统的根,当然,文件的根也有多个。现有技术中,在进行数据更新时,需要分配新的存储空间存储新的数据块,因此就需要将文件的根中存储的原数据块的地址修改为新的数据块的地址,文件的根中的地址发生变化,就需要进一步的将文件系统的根中的原文件的根的地址修改为新的文件的根的地址。
[0058]请参见图2,是本发明第一实施例数据存储方法流程图,本发明实施例所述的数据存储方法可应用于固态硬盘,具体包括:
[0059]S101、在接收到对目标文件的更新数据时,分配第一存储空间存储目标文件的更新数据,并记录第一存储空间的地址。
[0060]具体地,记录第一存储空间的地址包括:将第一存储空间的地址记录到内存中。
[0061]应当理解,在接收到对目标文件的更新数据之前,先要为目标文件的根配置两个存储地址,选择其中一个存储地址作为当前备份地址,用于存储记录的第一存储空间的地址,再次接收到对目标文件的更新数据时,选择其中另一个存储地址作为当前备份地址,用于存储记录的第一存储空间的地址。
[0062]S102、在检测到目标文件系统不存在快照保护时,获取目标文件的根的修改次数。
[0063]具体地,文件系统快照保护(英文:File System Snapshots)是将文件系统当时的情形记录下来,就好像给文件系统“照相”一样,“照相”后可以将一张一张照片翻出来看,例如:文件系统中有十个档案,使用文件系统快照保护拍一张照片,之后我们如果删除了档案,在目前的文件系统中已经没有关于该档案的任何数据了,但如果将“照片”挂入,还是可以看到删除档案。简单的说,文件系统快照保护的功能就是记录当时文件系统的状态。
[0064]在接收到对目标文件的更新数据之前,应当配置修改计数器,所述修改计数器用于获取所述目标文件的根的修改次数。
[0065]S103、若获取的修改次数小于预设的次数阈值,将第一存储空间的地址记录到所述目标文件的根中。
[0066]具体地,如果检测到目标文件系统不存在快照保护,并且对目标文件的根的修改次数小于预设的次数阈值,则循环修改目标文件的根里的两个存储地址,即:将其中一个存储地址作为当前备份地址,用于存储记录的第一存储空间的地址,此次修改完成后,将另一个存储地址作为当前备份地址,在读取数据时,可以通过比较以上两个存储地址中的先后顺序,以最大的顺序号作为最新的有效地址。
[0067]需要知道的是,当将目标文件的根中的当前备份地址修改为所述记录的第一存储空间的地址后,将目标文件的根的修改计数器更新,即将目标文件的根的修改次数加I。
[0068]应当理解,所述第一存储空间是固态硬盘中的存储空间。
[0069]如图3所示,是本发明实施例文件系统数据更新示意图,设初始状态时文件系统的根I指向文件I的根I,在接收到对数据块I (加粗)的更新数据时,分配数据块I (第一存储空间)存储数据块I (加粗)的更新数据,并记录数据块I (第一存储空间)的地址,在检测到所述文件系统不存在快照保护时,获取文件的根的修改次数,若获取的修改次数小于预设的次数阈值,将数据块I (第一存储空间)的地址记录到文件I的根2中,将数据块I(加粗)及文件I的根I释放掉,完成数据存储。
[0070]本发明实施例数据存储方法可在目标文件系统不存在快照保护的情况下,直接修改目标文件的根,而不需要修改目标文件系统的根,减少数据更新时对存储器的修改次数,降低硬盘上出现碎片的概率,也可避免因修改次数过多而导致硬盘的存储介质失效,提高硬盘的使用寿命。
[0071]请参见图4,是本发明第二实施例数据存储方法流程图,本发明实施例所述的数据存储方法可应用于固态硬盘,具体包括:
[0072]S201、在接收到对目标文件的更新数据时,分配第一存储空间存储目标文件的更新数据,并记录第一存储空间的地址。
[0073]具体地,记录第一存储空间的地址包括:将第一存储空间的地址记录到内存中。
[0074]S202、在检测到目标文件系统存在快照保护时,生成新的目标文件的根的地址。
[0075]具体地,生成目标文件的新的根,就是在所述目标文件的新的根中写入第一存储空间的地址,用于指向目标文件的更新数据。
[0076]S203、将目标文件系统的根中存储的原目标文件的根的存储地址修改为新的目标文件的根的地址。
[0077]具体地,目标文件系统的根中的存储地址修改为所述新的目标文件的根的地址,用于指向新的目标文件的根。
[0078]应当理解,若对目标文件系统的根的修改次数不小于预设的次数阈值时,分配第二存储空间,用于存储所述目标文件系统的根,避免对目标文件系统的根的修改次数过多而导致硬盘的存储介质失效。
[0079]本发明实施例数据存储方法可在目标文件系统不存在快照保护的情况下,直接修改目标文件的根,而不需要修改目标文件系统的根,减少数据更新时对存储器的修改次数,降低硬盘上出现碎片的概率,也可避免因修改次数过多而导致硬盘的存储介质失效,提高硬盘的使用寿命。
[0080]请参见图5,是本发明第三实施例数据存储方法流程图,本发明实施例所述的数据存储方法可应用于固态硬盘,具体包括:
[0081]S301、在接收到对目标文件的更新数据时,分配第一存储空间存储目标文件的更新数据,并记录第一存储空间的地址。
[0082]具体地,记录第一存储空间的地址包括:将第一存储空间的地址记录到内存中。[0083]应当理解,在接收到对目标文件的更新数据之前,先要为目标文件的根配置两个存储地址,选择其中一个存储地址作为当前备份地址,用于存储记录的第一存储空间的地址,再次接收到对目标文件的更新数据时,选择其中另一个存储地址作为当前备份地址,用于存储记录的第一存储空间的地址。
[0084]S302、在检测到所述目标文件系统不存在快照保护时,获取目标文件的根的修改次数。
[0085]具体地,文件系统快照保护(英文:File System Snapshots)是将文件系统当时的情形记录下来,就好像给文件系统“照相”一样,“照相”后可以将一张一张照片翻出来看,例如:文件系统中有十个档案,使用文件系统快照保护拍一张照片,之后我们如果删除了档案,在目前的文件系统中已经没有关于该档案的任何数据了,但如果将“照片”挂入,还是可以看到删除档案。简单的说,文件系统快照保护的功能就是记录当时文件系统的状态。
[0086]在接收到对目标文件的更新数据之前,应当配置修改计数器,所述修改计数器用于获取所述目标文件的根的修改次数。
[0087]S303、若获取的修改次数不小于预设的次数阈值,将目标文件的根的修改计数器清零,生成新的所述目标文件的根。
[0088]具体地,生成新的目标文件的根,就是在所述新的目标文件的根中写入第一存储空间的地址,用于指向目标文件的更新数据。
[0089]S304、将目标文件系统的根中的存储地址修改为新的目标文件的根的地址。
[0090]具体地,目标文件系统的根中的存储地址修改为所述新的目标文件的根的地址,用于指向新的目标文件的根。
[0091]应当理解,若对目标文件系统的根的修改次数不小于预设的次数阈值时,分配第二存储空间,用于存储所述目标文件系统的根,避免对目标文件系统的根的修改次数过多而导致硬盘的存储介质失效。
[0092]本发明实施例数据存储方法可在目标文件系统不存在快照保护的情况下,直接修改目标文件的根,而不需要修改目标文件系统的根,减少数据更新时对存储器的修改次数,降低硬盘上出现碎片的概率,也可避免因修改次数过多而导致硬盘的存储介质失效,提高硬盘的使用寿命。
[0093]请参见图6,是本发明第一实施例数据存储装置结构框图,本发明实施例所述的数据存储装置可应用于固态硬盘中,所述装置具体包括:处理模块10、第一检测模块11、第一执行模块12,其中,
[0094]处理模块10,用于在接收到对目标文件的更新数据时,分配第一存储空间存储所述目标文件的更新数据,并记录所述第一存储空间的地址。
[0095]具体地,记录第一存储空间的地址包括:将第一存储空间的地址记录到内存中。
[0096]第一检测模块11,用于在检测到所述目标文件系统不存在快照保护时,获取所述目标文件的根的修改次数。
[0097]具体地,文件系统快照保护(英文:File System Snapshots)是将文件系统当时的情形记录下来,就好像给文件系统“照相”一样,“照相”后可以将一张一张照片翻出来看,例如:文件系统中有十个档案,使用文件系统快照保护拍一张照片,之后我们如果删除了档案,在目前的文件系统中已经没有关于该档案的任何数据了,但如果将“照片”挂入,还是可以看到删除档案。简单的说,文件系统快照保护的功能就是记录当时文件系统的状态。
[0098]第一执行模块12,用于若获取的修改次数小于预设的次数阈值将所述第一存储空间的地址记录到所述目标文件的根中。
[0099]具体地,如果检测到目标文件系统不存在快照保护,并且对目标文件的根的修改次数小于预设的次数阈值,则循环修改目标文件的根里的两个存储地址,即:将其中一个存储地址作为当前备份地址,用于存储记录的第一存储空间的地址,此次修改完成后,将另一个存储地址作为当前备份地址,在读取数据时,可以通过比较以上两个存储地址中的先后顺序,以最大的顺序号作为最新的有效地址,所述第一存储空间是固态硬盘中的存储空间。
[0100]应当理解,目标文件系统的根中存储有所述目标文件的根的地址,所述目标文件的根中存储有所述目标文件更新数据的地址。
[0101]本发明实施例的数据存储方法可在目标文件系统不存在快照保护的情况下,直接修改目标文件的根,而不需要修改目标文件系统的根,减少数据更新时对存储器的修改次数,降低硬盘上出现碎片的概率,也可避免因修改次数过多而导致硬盘的存储介质失效,提高硬盘的使用寿命。
[0102]请参见图7,是本发明第二实施例数据存储装置结构框图,本发明实施例所述的数据存储装置可应用于固态硬盘中,图7所示的装置是由图6所示装置进行优化得到的,图7所示的装置中除了包括图6所示的装置包括的模块之外,还可以包括:存储地址配置模块
13、修改计数器配置模块14、更新模块15,其中,
[0103]存储地址配置模块13,用于为目标文件的根配置两个存储地址,选择其中一个存储地址作为当前备份地址,用于存储所述记录的第一存储空间的地址,再次接收到对目标文件的更新数据时,选择其中另一个存储地址作为当前备份地址,用于存储记录的第一存储空间的地址。
[0104]具体地,将两个存储地址中的一个存储地址作为当前备份地址,用于存储记录的第一存储空间的地址,此次修改完成后,将另一个存储地址作为当前备份地址,在读取数据时,可以通过比较以上两个存储地址中的先后顺序,以最大的顺序号作为最新的有效地址。
[0105]修改计数器配置模块14,用于在接收到对目标文件的更新数据之前,配置修改计数器,修改计数器用于记录所述目标文件的根的修改次数。
[0106]更新模块15,用于当将目标文件的根中的当前备份地址修改为所述记录的第一存储空间的地址后,将目标文件的根的修改计数器记录的所述目标文件的根的修改次数加I。
[0107]本发明实施例数据存储方法可在目标文件系统不存在快照保护的情况下,直接修改目标文件的根,而不需要修改目标文件系统的根,减少数据更新时对存储器的修改次数,降低硬盘上出现碎片的概率,也可避免因修改次数过多而导致硬盘的存储介质失效,提高硬盘的使用寿命。
[0108]请参见图8,是本发明第三实施例数据存储装置结构框图,本发明实施例所述的数据存储装置可应用于固态硬盘中,图8所示的装置是由图6所示装置进行优化得到的,图8所示的装置中除了包括图6所示的装置包括的模块之外,还可以包括:第二检测模块16、第一修改模块17、分配模块18,其中,
[0109]第二检测模块16,用于在检测到所述目标文件系统存在快照保护时,生成新的目标文件的根。[0110]具体地,生成新的目标文件的根,就是在所述新的目标文件的根中写入第一存储空间的地址,用于指向目标文件的更新数据。
[0111]第一修改模块17,用于将所述目标文件系统的根中的存储地址修改为所述新的目标文件的根的地址。
[0112]具体地,目标文件系统的根中的存储地址修改为所述新的目标文件的根的地址,用于指向新的目标文件的根。
[0113]分配模块18,用于若对目标文件系统的根的修改次数不小于预设的次数阈值时,分配第二存储空间,用于存储所述目标文件系统的根。
[0114]应当理解,分配模块18分配第二存储空间,用于存储所述目标文件系统的根,避免对目标文件系统的根的修改次数过多而导致硬盘的存储介质失效。
[0115]本发明实施例数据存储方法可在目标文件系统不存在快照保护的情况下,直接修改目标文件的根,而不需要修改目标文件系统的根,减少数据更新时对存储器的修改次数,降低硬盘上出现碎片的概率,也可避免因修改次数过多而导致硬盘的存储介质失效,提高硬盘的使用寿命。
[0116]请参见图9,是本发明第四实施例数据存储装置结构框图,本发明实施例所述的数据存储装置可应用于固态硬盘中,图9所示的装置是由图8所示装置进行优化得到的,图9所示的装置中除了包括图8所示的装置包括的模块之外,还可以包括:第二执行模块19、第二修改模块20,其中,
[0117]第二执行模块19,用于若获取的修改次数不小于预设的次数阈值,将目标文件的根的修改计数器清零,生成所述目标文件的新的根。
[0118]具体地,生成目标文件的新的根,就是在所述目标文件的新的根中写入第一存储空间的地址,用于指向目标文件的更新数据。
[0119]第二修改模块20,用于将目标文件系统的根中的存储地址修改为所述目标文件的新的根的地址。
[0120]具体地,目标文件系统的根中的存储地址修改为所述目标文件的新的根的地址,用于指向目标文件的新的根。
[0121]本发明实施例数据存储方法可在目标文件系统不存在快照保护的情况下,直接修改目标文件的根,而不需要修改目标文件系统的根,减少数据更新时对存储器的修改次数,降低硬盘上出现碎片的概率,也可避免因修改次数过多而导致硬盘的存储介质失效,提高硬盘的使用寿命。
[0122]应当理解,上文提到的第一存储空间和第二存储空间并不是表示顺序关系,而是为了区别不同的存储空间,也不是表示数量单位。同样的,第一执行模块、第二执行模块,第一检测模块、第二检测模块,第一修改模块、第二修改模块也不是为了表示顺序关系,而是为了表示不同的模块。
[0123]本领域普通技术人员将会理解,本发明的各个方面、或各个方面的可能实现方式可以被具体实施为系统、方法或者计算机程序产品。此外,本发明的各方面、或各个方面的可能实现方式可以采用计算机程序产品的形式,计算机程序产品是指存储在计算机可读介质中的计算机可读程序代码。
[0124]计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质。计算机可读存储介质包含但不限于电子、磁性、光学、电磁、红外或半导体系统、设备或者装置,或者前述的任意适当组合,如随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPR0M或者快闪存储器)、光纤、便携式只读存储器(CD-ROM)。
[0125]计算机中的处理器读取存储在计算机可读介质中的计算机可读程序代码,使得处理器能够执行在流程图中每个步骤、或各步骤的组合中规定的功能动作;生成实施在框图的每一块、或各块的组合中规定的功能动作的装置。
[0126]计算机可读程序代码可以完全在用户的计算机上执行、部分在用户的计算机上执行、作为单独的软件包、部分在用户的本地计算机上并且部分在远程计算机上,或者完全在远程计算机或者服务器上执行。也应该注意,在某些替代实施方案中,在流程图中各步骤、或框图中各块所注明的功能可能不按图中注明的顺序发生。例如,依赖于所涉及的功能,接连示出的两个步骤、或两个块实际上可能被大致同时执行,或者这些块有时候可能被以相反顺序执行。
[0127]显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
【权利要求】
1.一种数据存储方法,其特征在于,包括: 在接收到对目标文件的更新数据时,分配第一存储空间存储所述目标文件的更新数据,并记录所述第一存储空间的地址; 在检测到所述目标文件系统不存在快照保护时,获取所述目标文件的根的修改次数; 若获取的修改次数小于预设的次数阈值,将所述第一存储空间的地址记录到所述目标文件的根中; 目标文件系统的根中存储有所述目标文件的根的地址,所述目标文件的根中存储有所述目标文件更新数据的地址。
2.如权利要求1所述的方法,其特征在于,所述在接收到对目标文件的更新数据时,分配第一存储空间存储所述对目标文件的更新数据,并记录所述第一存储空间的地址之前,包括: 为所述目标文件的根配置两个存储地址,选择其中一个存储地址作为当前备份地址,用于存储所述记录的第一存储空间的地址,再次接收到对目标文件的更新数据时,选择其中另一个存储地址作为当前备份地址,用于存储记录的第一存储空间的地址。
3.如权利要求1或2所述的方法,其特征在于,还包括: 在接收到对目标文件的更新数据之前,配置修改计数器,所述修改计数器用于记录所述目标文件的根的修改次数; 当将所述目标文件的根中的当前备份地址修改为所述记录的第一存储空间的地址后,将所述目标文件的根的修改计数器记录的所述目标文件的根的修改次数加I。
4.如权利要求1所述的方法,其特征在于,还包括: 在检测到所述目标文件系统存在快照保护时,生成所述新的目标文件的根的地址; 将所述目标文件系统的根中存储的原目标文件的根的地址修改为所述新的目标文件的根的地址。
5.如权利要求1所述的方法,其特征在于,还包括: 若获取的修改次数不小于预设的次数阈值,将所述目标文件的根的修改计数器清零,生成所述新的目标文件的根; 将所述目标文件系统的根中存储的原目标文件的根的地址修改为所述新的目标文件的根的地址。
6.如权利要求4或5所述的方法,其特征在于,还包括: 若对所述目标文件系统的根的修改次数不小于预设的次数阈值时,分配第二存储空间,用于存储所述目标文件系统的根。
7.如权利要求1所述的方法,其特征在于,所述第一存储空间是固态硬盘中的存储空间。
8.一种数据存储装置,其特征在于,包括: 处理模块,用于在接收到对目标文件的更新数据时,分配第一存储空间存储所述目标文件的更新数据,并记录所述第一存储空间的地址; 第一检测模块,用于在检测到所述目标文件系统不存在快照保护时,获取所述目标文件的根的修改次数; 第一执行模块,用于若获取的修改次数小于预设的次数阈值,将所述第一存储空间的地址记录到所述目标文件的根中; 目标文件系统的根中存储有所述目标文件的根的地址,所述目标文件的根中存储有所述目标文件更新数据的地址。
9.如权利要求8所述的装置,其特征在于,在所述处理模块之前,包括: 存储地址配置模块,用于为所述目标文件的根配置两个存储地址,选择其中一个存储地址作为当前备份地址,用于存储所述记录的第一存储空间的地址,再次接收到对目标文件的更新数据时,选择其中另一个存储地址作为当前备份地址,用于存储记录的第一存储空间的地址。
10.如权利要求8或9所述的装置,其特征在于,还包括: 修改计数器配置模块,用于在接收到对目标文件的更新数据之前,配置修改计数器,所述修改计数器用于记录所述目标文件的根的修改次数; 更新模块,用于当将所述目标文件的根中的当前备份地址修改为所述记录的第一存储空间的地址后,将所述目标文件的根的修改计数器记录的所述目标文件的根的修改次数加1
11.如权利要求8所述的装置,其特征在于,还包括: 第二检测模块,用于在检测到所述目标文件系统存在快照保护时,生成所述新的目标文件的根的地址; 第一修改模块,用于将所述目标文件系统的根中存储的原目标文件的根的地址修改为所述新的目标文件的根的地址。
12.如权利要求8所述的装置,其特征在于,还包括: 第二执行模块,用于若获取的修改次数不小于预设的次数阈值,将所述目标文件的根的修改计数器清零,生成所述新的目标文件的新的根; 第二修改模块,用于将所述目标文件系统的根中的存储的原目标文件的根的地址修改为所述新的目标文件的根的地址。
13.如权利要求11或12所述的装置,其特征在于,还包括: 分配模块,用于若对所述目标文件系统的根的修改次数不小于预设的次数阈值时,分配第二存储空间,用于存储所述目标文件系统的根。
14.如权利要求8所述的装置,其特征在于,所述第一存储空间是固态硬盘中的存储空间。
【文档编号】G06F17/30GK103559139SQ201310504038
【公开日】2014年2月5日 申请日期:2013年10月23日 优先权日:2013年10月23日
【发明者】肖建龙, 严华兵 申请人:华为技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1