一种回收垃圾数据的方法及存储设备的制作方法

文档序号:6519186阅读:355来源:国知局
一种回收垃圾数据的方法及存储设备的制作方法
【专利摘要】本发明实施例提供一种回收垃圾数据的方法和存储设备,分别记录存储设备每个段内当前时间的第一数据的数据量和在所述当前时间之前预先设置的时间内所述第一数据的变化量;根据所述每个段内所述第一数据的数据量和所述第一数据的变化量计算所述第一数据的预测值;根据每个段内所述第一数据的预测值确定需要回收垃圾数据的段,优先回收垃圾较多且垃圾产生速率较低的段,从而提高回收垃圾数据的效率。
【专利说明】一种回收垃圾数据的方法及存储设备
【技术领域】
[0001]本发明涉及计算机领域,尤其涉及到一种回收垃圾数据的方法及存储设备。
【背景技术】
[0002]一般的存储设备写入数据后,会根据逻辑块地址(Logical Block Address, LBA)找到对应的地址,然后把数据写进去。如果多个输入输出命令(Input Output, 10)之间地址相连,则为顺序10,否则为随机10。
[0003]存储设备中的硬盘驱动器(Hard Disk Drive, HDD)要读取一个数据时,磁头必须先移动到数据所在磁道,磁头沿径向移动,移到目标扇区所在磁道的上方,这段时间称为寻道时间,平均约为10毫秒。找到目标磁道后通过盘片的旋转,使得要目标扇区转到磁头的下方,这段时间称为旋转延迟时间,一个7200 (转/每分钟)的硬盘,每旋转一周所需时间为约为8.33毫秒,则平均旋转延迟时间为约为4.17毫秒。向目标扇区读取或写入数据,时间约为零点几个毫秒。对于顺序10,IO之间不需要重新寻道和等待,因此顺序IO性能比较高;对于随机10,每个IO需要重新寻道和等待,寻道和等待时间比数据读取或写入时间高非常多,因此随机IO性能非常差。
[0004]存储设备中的一般采用冗余磁盘阵列(Redundant Array of Independent Disks,RAID)保护,对于随机写10,RAID5和RAID6都有写惩罚,严重影响性能;对应顺序写10,写惩罚非常小。以8盘RAID5为例说明写惩罚对写性能的影响。8盘RAID5由7个数据盘(D)和一个校验盘(P)组成,如果随机写一个小10,则最好情况下,必须把旧的校验数据读到内存中;然后用新数据和旧的校验数据一起重新校验产生新校验数据后,再一起写入磁盘中。每个主机IO至少触发3次磁盘IO操作,写放大3倍,整个系统性能下降2/3。顺序写时,在收到7个主机IO后,一起校验产生新的校验数据,然后7个IO连同一个新的校验数据一起下盘。每7个主机IO触发8次磁盘操作,写放大8/7倍性能下降非常少。
[0005]重定向写为完全顺序写,既可以解决HDD随机写性能差问题,又可以解决RAID写惩罚问题,因此,在处理写IO的情况下,引入重定向写功能。把存储设备的物理空间划分为有效数据空间和冗余空间。有效数据空间存储已经写入的数据。在写IO的逻辑地址与有效数据空间物理地址之间建立一层映射,当逻辑地址上来了随机的写IO后,不覆盖写有效数据空间原始物理位置,而是从冗余空间中分配出一段空间,把多个随机写IO顺序写入连续的冗余空间,然后用映射表记录逻辑地址到新物理地址映射,被写过的旧的有效数据物理空间变成垃圾。这样可以把随机写转换成满条带顺序写,提高存储设备写性能。
[0006]重定向写会在旧的物理空间产生垃圾,当冗余空间低于一定程度后,必须启动垃圾回收,否则冗余空间用完后,新写入IO会由于分配不到冗余空间而无法处理。为了方便垃圾回收,一般把存储设备物理空间按一定大小先划分为多个段,在RAID场景下段是指整个条带,在固态存储硬盘(Solid State Disk, SSD)场景下段是指可以擦除的块,其他场景下段是指一段连续的空间。当系统运行一段时间后,每个段内都有可能产生垃圾,垃圾数与段内块数的比值称为段内垃圾比例。垃圾回收时,一般先找到垃圾比例较高的段,把该段内剩余有效数据搬移到冗余空间中,将该段有效数据搬移后,就可以将该段回收,把该段变成冗余空间,用于重新分配。
[0007]在SSD中,由最小写入单位页组成组成块,其中,SSD中,块为进行数据回收的段。在SSD中写入数据之前需要先擦除,擦除的单位为块,因此SSD内部也采用重定向写,也存在垃圾回收,操作过程跟前面提到的重定向写完全一样,只是在回收前多了一步擦除操作。
[0008]通常的,基于重定向写的存储设备的垃圾回收,一般采用垃圾比例作为回收条件,当冗余空间不足后,按垃圾比例高低优先级对垃圾比例较高的段进行回收。垃圾回收过程需要搬移有效数据,搬移需要把有效数据读出来,再把有效数据写入新的地址,这一过程产生读IO和写10,属于重定向写功能的一部分,因此,搬移过程中需要产生新的10,新的IO会占用存储设备IO资源和带宽。在一般的存储设备中,IO资源和带宽是有限的,段内的垃圾比例越低,段内需要搬移的有效数据量越大,占用存储设备的IO资源和带宽能力就越多,最终对存储设备性能的影响就越大。现有技术中,基本上每个段在垃圾比例达到预定值后就立马回收,回收垃圾数据效率低。

【发明内容】

[0009]本发明提供了一种回收垃圾数据的方法,旨在解决如何提高垃圾回收效率的问题。
[0010]第一方面,一种回收垃圾数据的方法,所述方法包括:
[0011]分别记录存储设备每个段内当前时间的第一数据的数据量和在所述当前时间之前预先设置的时间内所述第一数据的变化量;所述第一数据是垃圾数据或者有效数据,所述第一数据的变化量是所述垃圾数据的增加量或者所述有效数据的减少量,所述垃圾数据的增加量的数值和所述有效数据的减少量的数值相同;
[0012]根据所述每个段内所述第一数据的数据量和所述第一数据的变化量计算所述第一数据的预测值;
[0013]根据每个段内所述第一数据的预测值确定需要回收垃圾数据的段;
[0014]其中,所述有效数据是指段内与逻辑地址存在映射关系的物理地址中存储的数据;所述垃圾数据是指段内与逻辑地址不存在映射关系的物理地址中存储的数据。
[0015]结合第一方面,在第一方面的第一种可能的实现方式中,
[0016]所述根据所述每个段内所述第一数据的数据量和所述第一数据的变化量计算所述第一数据的预测值,包括:
[0017]根据所述每个段内所述第一数据的数据量和第一权重计算所述第一数据的数据量的预测值;
[0018]根据所述每个段内所述第一数据的变化量和第二权重计算所述第一数据的变化量的预测值;
[0019]根据所述第一数据的数据量的预测值和所述第一数据的变化量的预测值计算所述第一数据的预测值。
[0020]结合第一方面的第一种可能的实现方式,在第一方面的第二种可能的实现方式中,
[0021]所述分别记录存储设备每个段内当前时间的第一数据的数据量和在所述当前时间之前预先设置的时间内所述第一数据的变化量,包括:
[0022]分别记录所述每个段内当前时间的垃圾数据的数据量和在所述当前时间之前预先设置的时间内垃圾数据的增加量;
[0023]所述根据所述每个段内所述第一数据的数据量和所述第一数据的变化量计算所述第一数据的预测值,包括:
[0024]根据所述每个段内所述当前时间的垃圾数据的数据量和所述第一权重计算所述当前时间的垃圾数据的数据量的预测值;
[0025]根据所述每个段内所述垃圾数据的增加量和所述第二权重计算所述垃圾数据的变化量的预测值;
[0026]将所述每个段内所述当前时间的垃圾数据的数据量的预测值和所述垃圾数据的变化量的预测值相减,得到所述垃圾数据的预测值;
[0027]所述根据所述每段第一数据的预测值确定需要回收垃圾数据的段,包括:
[0028]按照垃圾数据的预测值从大到小的顺序确定需要回收垃圾数据的段。
[0029]结合第一方面的第一种可能的实现方式,在第一方面的第三种可能的实现方式中,
[0030]所述分别记录存储设备每个段内当前时间的第一数据的数据量和在所述当前时间之前预先设置的时间内所述第一数据的变化量,包括:
[0031]分别记录所述每个段内当前时间的有效数据的数据量和在所述当前时间之前预先设置的时间内有效数据的减少量;
[0032]所述根据所述每个段内所述第一数据的数据量和所述第一数据的变化量计算所述第一数据的预测值,包括:
[0033]根据所述每个段内所述当前时间的有效数据的数据量和所述第一权重计算所述当前时间的有效数据的数据量的预测值;
[0034]根据所述每个段内所述有效数据的减少量和所述第二权重计算所述有效数据的变化量的预测值;
[0035]将所述每个段内所述当前时间的有效数据的数据量的预测值和所述有效数据的变化量的预测值相加,得到所述有效数据的预测值;
[0036]所述根据所述每段第一数据的预测值确定需要回收垃圾数据的段,包括:
[0037]按照有效数据的预测值从小到大的顺序确定需要回收垃圾数据的段。
[0038]结合第一方面的第一种可能的实现方式,在第一方面的第四种可能的实现方式中,所述分别记录存储设备每个段内当前时间的第一数据的数据量和在所述当前时间之前预先设置的时间内所述第一数据的变化量,包括:
[0039]分别记录所述每个段内当前时间的垃圾数据的数据量和在所述当前时间之前预先设置的时间内有效数据的减少量;
[0040]所述根据所述每个段内所述第一数据的数据量和所述第一数据的变化量计算所述第一数据的预测值,包括:
[0041]根据所述每个段内所述当前时间的垃圾数据的数据量和所述第一权重计算所述当前时间的垃圾数据的数据量的预测值;
[0042]根据所述每个段内所述有效数据的减少量和所述第二权重计算所述有效数据的变化量的预测值;
[0043]将所述每个段内所述当前时间的垃圾数据的数据量的预测值和所述有效数据的变化量的预测值相减,得到所述垃圾数据的预测值;
[0044]所述根据所述每段第一数据的预测值确定需要回收垃圾数据的段,包括:
[0045]按照垃圾数据的预测值从大到小的顺序确定需要回收垃圾数据的段。
[0046]结合第一方面的第一种可能的实现方式,在第一方面的第五种可能的实现方式中,所述分别记录存储设备每个段内当前时间的第一数据的数据量和在所述当前时间之前预先设置的时间内所述第一数据的变化量,包括:
[0047]分别记录所述每个段内当前时间的有效数据的数据量和在所述当前时间之前预先设置的时间内垃圾数据的增加量;
[0048]所述根据所述每个段内所述第一数据的数据量和所述第一数据的变化量计算所述第一数据的预测值,包括:
[0049]根据所述每个段内所述当前时间的有效数据的数据量和所述第一权重计算所述当前时间的有效数据的数据量的预测值;
[0050]根据所述每个段内所述垃圾数据的增加量和所述第二权重计算所述垃圾数据的变化量的预测值;
[0051]将所述每个段内所述当前时间的有效数据的数据量的预测值和所述垃圾数据的变化量的预测值相加,得到所述有效数据的预测值;
[0052]所述根据所述每段第一数据的预测值确定需要回收垃圾数据的段,包括:
[0053]按照有效数据的预测值从小到大的顺序确定需要回收垃圾数据的段。
[0054]第二方面,一种回收垃圾数据的存储设备,所述设备包括:
[0055]记录单元,用于分别记录每个段内当前时间的第一数据的数据量和在所述当前时间之前预先设置的时间内所述第一数据的变化量;所述第一数据是垃圾数据或者所述有效数据,所述第一数据的变化量是所述垃圾数据的增加量或者所述有效数据的减少量,所述垃圾数据的增加量的数值和所述有效数据的减少量的数值相同;
[0056]计算单元,用于根据所述每个段内所述第一数据的数据量和所述第一数据的变化量计算所述第一数据的预测值;
[0057]确定单元,用于根据每个段内所述第一数据的预测值确定需要回收垃圾数据的段;
[0058]其中,所述有效数据是指段内与逻辑地址存在映射关系的物理地址中存储的数据;所述垃圾数据是指段内与逻辑地址不存在映射关系的物理地址中存储的数据。
[0059]结合第二方面,在第二方面的第一种可能的实现方式中,所述计算单元,具体用于:
[0060]根据所述每个段内所述第一数据的数据量和第一权重计算所述第一数据的数据量的预测值;
[0061]根据所述每个段内所述第一数据的变化量和第二权重计算所述第一数据的变化量的预测值;
[0062]根据所述第一数据的数据量的预测值和所述第一数据的变化量的预测值计算所述第一数据的预测值结合第二方面的第一种可能的实现方式,在第二方面的第二种可能的实现方式中,所述记录单元,具体用于:
[0063]分别记录所述每个段内当前时间的垃圾数据的数据量和在所述当前时间之前预先设置的时间内垃圾数据的增加量;所述计算单元,具体用于:
[0064]根据所述每个段内所述当前时间的垃圾数据的数据量和所述第一权重计算所述当前时间的垃圾数据的数据量的预测值;
[0065]根据所述每个段内所述垃圾数据的增加量和所述第二权重计算所述垃圾数据的变化量的预测值;
[0066]将所述每个段内所述当前时间的垃圾数据的数据量的预测值和所述垃圾数据的变化量的预测值相减,得到所述垃圾数据的预测值;
[0067]所述确定单元,具体用于:
[0068]按照垃圾数据的预测值从大到小的顺序确定需要回收垃圾数据的段。
[0069]结合第二方面的第一种可能的实现方式,在第二方面的第三种可能的实现方式中,所述记录单元,具体用于:
[0070]分别记录所述每个段内当前时间的有效数据的数据量和在所述当前时间之前预先设置的时间内有效数据的减少量;
[0071]所述计算单元,具体用于:
[0072]根据所述每个段内所述当前时间的有效数据的数据量和所述第一权重计算所述当前时间的有效数据的数据量的预测值;
[0073]根据所述每个段内所述有效数据的减少量和所述第二权重计算所述有效数据的变化量的预测值;
[0074]将所述每个段内所述当前时间的有效数据的数据量的预测值和所述有效数据的变化量的预测值相加,得到所述有效数据的预测值;
[0075]所述确定单元,具体用于:
[0076]按照有效数据的预测值从小到大的顺序确定需要回收垃圾数据的段。
[0077]结合第二方面的第一种可能的实现方式,在第二方面的第四种可能的实现方式中,所述记录单元,具体用于:
[0078]分别记录所述每个段内当前时间的垃圾数据的数据量和在所述当前时间之前预先设置的时间内有效数据的减少量;
[0079]所述计算单元,具体用于:
[0080]根据所述每个段内所述当前时间的垃圾数据的数据量和所述第一权重计算所述当前时间的垃圾数据的数据量的预测值;
[0081]根据所述每个段内所述有效数据的减少量和所述第二权重计算所述有效数据的变化量的预测值;
[0082]将所述每个段内所述当前时间的垃圾数据的数据量的预测值和所述有效数据的变化量的预测值相减,得到所述垃圾数据的预测值;
[0083]所述确定单元,具体用于:
[0084]按照垃圾数据的预测值从大到小的顺序确定需要回收垃圾数据的段。
[0085]结合第二方面的第一种可能的实现方式,在第二方面的第五种可能的实现方式中,所述记录单元,具体用于:[0086]分别记录所述每个段内当前时间的有效数据的数据量和在所述当前时间之前预先设置的时间内垃圾数据的增加量;
[0087]所述计算单元,具体用于:
[0088]根据所述每个段内所述当前时间的有效数据的数据量和所述第一权重计算所述当前时间的有效数据的数据量的预测值;
[0089]根据所述每个段内所述垃圾数据的增加量和所述第二权重计算所述垃圾数据的变化量的预测值;
[0090]将所述每个段内所述当前时间的有效数据的数据量的预测值和所述垃圾数据的变化量的预测值相加,得到所述有效数据的预测值;
[0091]所述确定单元,具体用于:
[0092]按照有效数据的预测值从小到大的顺序确定需要回收垃圾数据的段。
[0093]本发明实施例提供一种回收垃圾数据的方法和存储设备,分别记录存储设备每个段内当前时间的第一数据的数据量和在所述当前时间之前预先设置的时间内所述第一数据的变化量;第一数据是垃圾数据或者有效数据,第一数据的变化量是所述垃圾数据的增加量或者所述有效数据的减少量,所述垃圾数据的增加量的数值和所述有效数据的减少量的数值相同;根据所述每个段内所述第一数据的数据量和所述第一数据的变化量计算所述第一数据的预测值;根据每个段内所述第一数据的预测值确定需要回收垃圾数据的段,优先回收垃圾较多且垃圾产生速率较低的段,从而提供回收垃圾数据的效率。
【专利附图】

【附图说明】
[0094]为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0095]图1是本发明实施例提供的一种回收垃圾数据的方法流程图;
[0096]图2是本发明实施例一提供的一种回收垃圾数据的方法示意图;
[0097]图3是本发明实施例二提供的一种回收垃圾数据的方法示意图;
[0098]图4是本发明实施例提供的一种回收垃圾数据的设备结构图;
[0099]图5是本发明实施例提供的一种存储设备的结构图。
【具体实施方式】
[0100]下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0101]参考图1,图1是本发明实施例提供的一种回收垃圾数据的方法流程图。如图1所示,所述方法包括以下步骤:
[0102]步骤101,分别记录存储设备每个段内当前时间的第一数据的数据量和在所述当前时间之前预先设置的时间内所述第一数据的变化量;所述第一数据是垃圾数据或者有效数据,所述第一数据的变化量是所述垃圾数据的增加量或者所述有效数据的减少量,所述垃圾数据的增加量的数值和有效数据的减少量的数值相同。
[0103]其中,所述有效数据是指段内与逻辑地址存在映射关系的物理地址中存储的数据;所述垃圾数据是指段内与逻辑地址不存在映射关系的物理地址中存储的数据。
[0104]存储设备中一般把物理空间按一定大小先划分为多个段,在存储设备为RAID场景下所述段是指整个条带,在存储设备为SSD场景下所述段是指可以擦除的块,其他场景下所述段是指一段连续的空间。
[0105]具体的,在使用重定向写的存储设备中数据地址有两个,分别是逻辑地址和物理地址。逻辑地址到物理地址之间有一个映射表,用于记录逻辑地址与物理地址的映射。使用重定向写的存储设备接收到写IO后,会携带逻辑地址。向逻辑地址第一次写入数据时,会从存储设备的物理空间分配一个新的物理地址,把数据写入新的物理地址中,并在映射表中建立逻辑地址到新的物理地址的映射。当向相同逻辑地址第二次写入数据时,会从物理空间分配另一个新的物理地址,把数据写入新的物理地址中,并在映射表中建立逻辑地址与新的物理地址的映射。所述另一新的物理地址中存储的数据为有效数据,原物理地址的数据变成垃圾数据。回收段时,垃圾数据不需要搬移,只需要搬移有效数据。
[0106]步骤102,根据所述每个段内所述第一数据的数据量和所述第一数据的变化量计算所述第一数据的预测值;
[0107]可选地,所述根据所述每个段内所述第一数据的数据量和所述第一数据的变化量计算所述第一数据的预测值,包括:
[0108]根据所述每个段内所述第一数据的数据量和第一权重计算所述第一数据的数据量的预测值;
[0109]根据所述每个段内所述第一数据的变化量和第二权重计算所述第一数据的变化量的预测值;
[0110]根据所述第一数据的数据量的预测值和所述第一数据的变化量的预测值计算第一数据的预测值。
[0111]其中,假设每个段内当前时间的第一数据为垃圾数据,第一权重为1/2,所述每个段内第一数据的变化量为垃圾数据的变化量,第二权重为1/3。根据垃圾数据越多越优先回收的原则,垃圾数据量乘以第一权重之积越大,表示段内垃圾数据越多,有效数据越少,回收时搬移有效数据的量就会越小,因此,越优先回收;垃圾数据的变化量乘以第二权重之积越大,表示段内垃圾数据增加量越大,推迟回收使其进一步产生更多的垃圾,因此,越晚回收。综合考虑这两个因素,在表达式上可以为:
[0112]垃圾数据量X第一权重一垃圾数据的变化量X第二权重。
[0113]假设每段内当前时间的第一数据为有效数据,第一权重为1/2,第一数据的变化量为有效数据的变化量,第二权重为1/3,则根据有效数据越少越优先回收的原则,有效数据量乘以第一权重之积越小,表示有效数据越少,回收时搬移有效数据的量就会越小,因此,越优先回收;有效数据的变化量乘以第二权重之积越小,表示垃圾数据增加量越小,则提早回收。综合考虑这两个因素,在表达式上可以为:
[0114]有效数据量X第一权重一有效数据的变化量X第二权重。
[0115]步骤103,根据每个段内所述第一数据的预测值确定需要回收垃圾数据的段。[0116]可选地,所述分别记录存储设备每个段内当前时间的第一数据的数据量和在所述当前时间之前预先设置的时间内所述第一数据的变化量,包括:
[0117]分别记录所述每个段内当前时间的垃圾数据的数据量和在所述当前时间之前预先设置的时间内垃圾数据的增加量;
[0118]所述根据所述每个段内所述第一数据的数据量和所述第一数据的变化量计算所述第一数据的预测值,包括:
[0119]根据所述每个段内所述当前时间的垃圾数据的数据量和所述第一权重计算所述当前时间的垃圾数据的数据量的预测值;
[0120]根据所述每个段内所述垃圾数据的增加量和所述第二权重计算所述垃圾数据的变化量的预测值;
[0121]将所述每个段内所述当前时间的垃圾数据的数据量的预测值和所述垃圾数据的变化量的预测值相减,得到所述垃圾数据的预测值;
[0122]所述根据所述每段第一数据的预测值确定需要回收垃圾数据的段,包括:
[0123]按照垃圾数据的预测值从大到小的顺序确定需要回收垃圾数据的段。
[0124]具体的,图2是本发明实施例一提供的一种回收垃圾数据的方法示意图。如图2所示,假设存储设备有三个段需要回收,段0在时刻I时总的存储容量是100MB,有效数据是80MB,垃圾数据是20MB,段I在时刻I时总的存储容量是100MB,有效数据是60MB,垃圾数据是40MB,段2在时刻I时总的存储容量是100MB,有效数据是40MB,垃圾数据是60MB ;段0在时刻2时总的存储容量是100MB,有效数据是40MB,垃圾数据是60MB,段I在时刻2时总的存储容量是100MB,有效数据是40MB,垃圾数据是60MB,段2在时刻2时总的存储容量是100MB,有效数据是40MB,垃圾数据是60MB。
[0125]假设预先设置的第一权重为1,第二权重为1/2,则根据每个段时刻I到时刻2的垃圾数据的增加量,计算每个段垃圾数据的预测值。段0在时刻I到时刻2的垃圾数据增加量为40MB,将40MB乘以权重1/2得到段0的垃圾数据的预测值为20MB,段I在时刻I到时刻2的垃圾数据增加量为20MB,将20MB乘以权重1/2得到段0的垃圾数据的预测值为10MB,段2在时刻I到时刻2的垃圾数据增加量为0,段2的垃圾数据的预测值为O。
[0126]根据上述的数据,段0垃圾数据的预测值可通过垃圾数据量X第一权重一垃圾数据的变化量X第二权重计算得到,即60MBX 1- 40MBX 1/2=40MB ;
[0127]段I垃圾数据的预测值可通过垃圾数据量X第一权重一垃圾数据的变化量X第二权重计算得到,即 60MBX 1- 20MBX 1/2=50MB ;
[0128]段2垃圾数据的预测值可通过垃圾数据量X第一权重一垃圾数据的变化量X第二权重计算得到,即60MBX 1- OMBX 1=60MB。
[0129]按照垃圾数据的预测值从大到小的顺序确定需要回收垃圾数据的段的原则,优先回收段2内的垃圾数据,其次回收段I内的垃圾数据,最后回收段0内的垃圾数据。
[0130]可选地,所述分别记录存储设备每个段内当前时间的第一数据的数据量和在所述当前时间之前预先设置的时间内所述第一数据的变化量,包括:
[0131]分别记录所述每个段内当前时间的有效数据的数据量和在所述当前时间之前预先设置的时间内有效数据的减少量;
[0132]所述根据所述每个段内所述第一数据的数据量和所述第一数据的变化量计算所述第一数据的预测值,包括:
[0133]根据所述每个段内所述当前时间的有效数据的数据量和所述第一权重计算所述当前时间的有效数据的数据量的预测值;
[0134]根据所述每个段内所述有效数据的减少量和所述第二权重计算所述有效数据的变化量的预测值;
[0135]将所述每个段内所述当前时间的有效数据的数据量的预测值和所述有效数据的变化量的预测值相加,得到所述有效数据的预测值;
[0136]所述根据所述每段第一数据的预测值确定需要回收垃圾数据的段,包括:
[0137]按照有效数据的预测值从小到大的顺序确定需要回收垃圾数据的段。
[0138]具体的,图3是本发明实施例二提供的一种回收垃圾数据的方法示意图。如图3所示,假设存储设备有三个段需要回收,段O在时刻I时总的存储容量是100MB,有效数据是80MB,垃圾数据是20MB,段I在时刻I时总的存储容量是100MB,有效数据是60MB,垃圾数据是40MB,段2在时刻I时总的存储容量是100MB,有效数据是40MB,垃圾数据是60MB ;段O在时刻2时总的存储容量是100MB,有效数据是40MB,存储数据是60MB,段I在时刻2时总的存储容量是100MB,有效数据是40MB,垃圾数据是60MB,段2在时刻2时总的存储容量是100MB,有效数据是40MB,垃圾数据是60MB。
[0139]假设第一权重为1,第二权重为1/2,则根据每段时刻I到时刻2的有效数据的减少量,计算每段有效数据的预测值。段O在时刻I到时刻2的有效数据减少量为40MB,将40MB乘以权重1/2得到段O的有效数据的预测值为20MB,段I在时刻I到时刻2的有效数据的减少量为20MB,将20MB乘以权重1/2得到段O的有效数据的预测值为10MB,段2在时刻I到时刻2的有效数据的减少量为0,段2的有效数据的预测值为O。
[0140]根据上述的数据,段O有效数据的预测值可通过有效数据量X第一权重+有效数据的变化量X第二权重计算得到,即40MBX 1+40MBX 1/2=60MB ;
[0141]段I有效数据的预测值可通过有效数据量X第一权重+有效数据的变化量X第二权重计算得到,即 40MBX 1+20MBX 1/2=50MB ;
[0142]段2有效数据的预测值可通过有效数据量X第一权重+有效数据的变化量X第二权重计算得到,即40MBX 1+0MBX 1=40MB。
[0143]按照有效数据的预测值从小到大的顺序确定需要回收垃圾数据的段,优先回收段2内的垃圾数据,其次回收段I内的垃圾数据,最后回收段O内的垃圾数据。
[0144]可选地,所述分别记录存储设备每个段内当前时间的第一数据的数据量和在所述当前时间之前预先设置的时间内所述第一数据的变化量,包括:
[0145]分别记录所述每个段内当前时间的垃圾数据的数据量和在所述当前时间之前预先设置的时间内有效数据的减少量;
[0146]所述根据所述每个段内所述第一数据的数据量和所述第一数据的变化量计算所述第一数据的预测值,包括:
[0147]根据所述每个段内所述当前时间的垃圾数据的数据量和所述第一权重计算所述当前时间的垃圾数据的数据量的预测值;
[0148]根据所述每个段内所述有效数据的减少量和所述第二权重计算所述有效数据的变化量的预测值;[0149]将所述每个段内所述当前时间的垃圾数据的数据量的预测值和所述有效数据的变化量的预测值相减,得到所述垃圾数据的预测值;
[0150]所述根据所述每段第一数据的预测值确定需要回收垃圾数据的段,包括:
[0151]按照垃圾数据的预测值从大到小的顺序确定需要回收垃圾数据的段。
[0152]可选地,所述分别记录存储设备每个段内当前时间的第一数据的数据量和在所述当前时间之前预先设置的时间内所述第一数据的变化量,包括:
[0153]分别记录所述每个段内当前时间的有效数据的数据量和在所述当前时间之前预先设置的时间内垃圾数据的增加量;
[0154]所述根据所述每个段内所述第一数据的数据量和所述第一数据的变化量计算所述第一数据的预测值,包括:
[0155]根据所述每个段内所述当前时间的有效数据的数据量和所述第一权重计算所述当前时间的有效数据的数据量的预测值;
[0156]根据所述每个段内所述垃圾数据的增加量和所述第二权重计算所述垃圾数据的变化量的预测值;
[0157]将所述每个段内所述当前时间的有效数据的数据量的预测值和所述垃圾数据的变化量的预测值相加,得到所述有效数据的预测值;
[0158]所述根据所述每段第一数据的预测值确定需要回收垃圾数据的段,包括:
[0159]按照有效数据的预测值从小到大的顺序确定需要回收垃圾数据的段。
[0160]本发明实施例提供一种回收垃圾数据的方法,分别记录存储设备每个段内当前时间的第一数据的数据量和在所述当前时间之前预先设置的时间内所述第一数据的变化量;第一数据是垃圾数据或者有效数据,第一数据的变化量是所述垃圾数据的增加量或者所述有效数据的减少量,所述垃圾数据的增加量的数值和所述有效数据的减少量的数值相同;根据所述每个段内所述第一数据的数据量和所述第一数据的变化量计算所述第一数据的预测值;根据每个段内所述第一数据的预测值确定需要回收垃圾数据的段,优先回收垃圾较多且垃圾产生速率较低的段,从而提高回收垃圾数据的效率。
[0161]参考图4,图4是本发明实施例提供的一种回收垃圾数据的存储设备的结构图。所述存储设备包括:
[0162]记录单元401,用于
[0163]分别记录每个段内当前时间的第一数据的数据量和在所述当前时间之前预先设置的时间内所述第一数据的变化量;所述第一数据是垃圾数据或者有效数据,所述第一数据的变化量是所述垃圾数据的增加量或者所述有效数据的减少量,所述垃圾数据的增加量的数值和有效数据的减少量的数值相同;
[0164]其中,所述有效数据是指段内与逻辑地址存在映射关系的物理地址中存储的数据;所述垃圾数据是指段内与逻辑地址不存在映射关系的物理地址中存储的数据。
[0165]具体的,在使用重定向写的存储设备中数据地址有两个,分别是逻辑地址和物理地址。逻辑地址到物理地址之间有一个映射表,用于记录逻辑地址与物理地址的映射。使用重定向写的存储设备接收到写IO后,会携带逻辑地址。向逻辑地址第一次写入数据时,会从存储设备的物理空间分配一个新的物理地址,把数据写入新的物理地址中,并在映射表中建立逻辑地址到新的物理地址的映射。当向相同逻辑地址第二次写入数据时,会从物理空间分配另一个新的物理地址,把数据写入新的物理地址中,并在映射表中建立逻辑地址与新的物理地址的映射。所述另一新的物理地址中存储的数据为有效数据,原物理地址的数据变成垃圾数据。回收段时,垃圾数据不需要搬移,只需要搬移有效数据。
[0166]计算单元402,用于根据所述每个段内所述第一数据的数据量和所述第一数据的变化量计算所述第一数据的预测值;
[0167]可选地,所述计算单元402,具体用于:
[0168]根据所述每个段内所述第一数据的数据量和第一权重计算所述第一数据的数据量的预测值;
[0169]根据所述每个段内所述第一数据的变化量和第二权重计算所述第一数据的变化量的预测值;
[0170]根据所述第一数据的数据量的预测值和所述第一数据的变化量的预测值计算所述第一数据的预测值。
[0171]其中,假设每个段内当前时间的第一数据为垃圾数据,第一权重为1/2,所述每个段内第一数据的变化量为垃圾数据的变化量,第二权重为1/3。根据垃圾数据越多越优先回收的原则,垃圾数据量乘以第一权重之积越大,表示段内垃圾数据越多,有效数据越少,回收时搬移有效数据的量就会越小,因此,越优先回收;垃圾数据的变化量乘以第二权重之积越大,表示段内垃圾数据增加量越大,推迟回收使其进一步产生更多的垃圾,因此,越晚回收。综合考虑这两个因素,在表达式上可以为:
[0172]垃圾数据量X第一权重一垃圾数据的变化量X第二权重。
[0173]假设每段内当前时间的第一数据为有效数据,第一权重为1/2,第一数据的变化量为有效数据的变化量,第二权重为1/3,则根据有效数据越少越优先回收的原则,有效数据量乘以第一权重之积越小,表示有效数据越少,回收时搬移有效数据的量就会越小,因此,越优先回收;有效数据的变化量乘以第二权重之积越小,表示垃圾数据增加量越小,则提早回收。综合考虑这两个因素,在表达式上可以为:
[0174]有效数据量X第一权重一有效数据的变化量X第二权重。
[0175]确定单元403,用于根据每个段内所述第一数据的预测值确定需要回收垃圾数据的段。
[0176]可选地,所述记录单元401,具体用于:
[0177]分别记录所述每个段内当前时间的垃圾数据的数据量和在所述当前时间之前预先设置的时间内垃圾数据的增加量;
[0178]所述计算单元402,具体用于:
[0179]根据所述每个段内所述当前时间的垃圾数据的数据量和所述第一权重计算所述当前时间的垃圾数据的数据量的预测值;
[0180]根据所述每个段内所述垃圾数据的增加量和所述第二权重计算所述垃圾数据的变化量的预测值;
[0181]将所述每个段内所述当前时间的垃圾数据的数据量的预测值和所述垃圾数据的变化量的预测值相减,得到所述垃圾数据的预测值;
[0182]所述确定单元403,具体用于:
[0183]按照垃圾数据的预测值从大到小的顺序确定需要回收垃圾数据的段。[0184]本发明存储设备实施例的一种【具体实施方式】可以参见上述图2的描述。
[0185]可选地,所述记录单元401,具体用于:
[0186]分别记录所述每个段内当前时间的有效数据的数据量和在所述当前时间之前预先设置的时间内有效数据的减少量;
[0187]所述计算单元402,具体用于:
[0188]根据所述每个段内所述当前时间的有效数据的数据量和所述第一权重计算所述当前时间的有效数据的数据量的预测值;
[0189]根据所述每个段内所述有效数据的减少量和所述第二权重计算所述有效数据的变化量的预测值;
[0190]将所述每个段内所述当前时间的有效数据的数据量的预测值和所述有效数据的变化量的预测值相加,得到所述有效数据的预测值;
[0191]所述确定单元403,具体用于:
[0192]按照有效数据的预测值从小到大的顺序确定需要回收垃圾数据的段。
[0193]本发明存储设备实施例的一种【具体实施方式】可以参见上述图3的描述。
[0194]可选地,所述记录单元401,具体用于:
[0195]分别记录所述每个段内当前时间的垃圾数据的数据量和在所述当前时间之前预先设置的时间内有效数据的减少量;
[0196]所述计算单元402,具体用于:
[0197]根据所述每个段内所述当前时间的垃圾数据的数据量和所述第一权重计算所述当前时间的垃圾数据的数据量的预测值;
[0198]根据所述每个段内所述有效数据的减少量和所述第二权重计算所述有效数据的变化量的预测值;
[0199]将所述每个段内所述当前时间的垃圾数据的数据量的预测值和所述有效数据的变化量的预测值相减,得到所述垃圾数据的预测值;
[0200]所述确定单元403,具体用于:
[0201 ] 按照垃圾数据的预测值从大到小的顺序确定需要回收垃圾数据的段。
[0202]可选地,所述记录单元401,具体用于:
[0203]分别记录所述每个段内当前时间的有效数据的数据量和在所述当前时间之前预先设置的时间内垃圾数据的增加量;
[0204]所述计算单元402,具体用于:
[0205]根据所述每个段内所述当前时间的有效数据的数据量和所述第一权重计算所述当前时间的有效数据的数据量的预测值;
[0206]根据所述每个段内所述垃圾数据的增加量和所述第二权重计算所述垃圾数据的变化量的预测值;
[0207]将所述每个段内所述当前时间的有效数据的数据量的预测值和所述垃圾数据的变化量的预测值相加,得到所述有效数据的预测值;
[0208]所述确定单元403,具体用于:
[0209]按照有效数据的预测值从小到大的顺序确定需要回收垃圾数据的段。本发明实施例提供一种回收垃圾数据的存储设备,所述存储设备分别记录存储设备每个段内当前时间的第一数据的数据量和在所述当前时间之前预先设置的时间内所述第一数据的变化量;第一数据是垃圾数据或者有效数据,第一数据的变化量是所述垃圾数据的增加量或者所述有效数据的减少量,所述垃圾数据的增加量的数值和所述有效数据的减少量的数值相同;根据所述每个段内所述第一数据的数据量和所述第一数据的变化量计算所述第一数据的预测值;根据每个段内所述第一数据的预测值确定需要回收垃圾数据的段,优先回收垃圾较多且垃圾产生速率较低的段,从而提高回收垃圾数据的效率。
[0210]图5是本发明实施例提供的一种存储设备的装置结构图。参考图5,图5是本发明实施例提供的一种存储设备500,本发明具体实施例并不对所述存储设备的具体实现做限定。所述存储设备500包括:
[0211]处理器(processor)501,通信接口(Communications Interface) 502,存储器(memory) 503,总线 504。
[0212]处理器501,通信接口 502,存储器503通过总线504完成相互间的通信。
[0213]通信接口 502,用于与其他设备进行通信;
[0214]处理器501,用于执行程序。
[0215]具体地,程序可以包括程序代码,所述程序代码包括计算机操作指令。
[0216]处理器501可能是一个中央处理器(central processing unit, CPU),或者是特定集成电路ASIC (Application Specific Integrated Circuit),或者是被配置成实施本发明实施例的一个或多个集成电路。
[0217]存储器503,用于存储程序。存储器503可以是易失性存储器(volatile memory),例如随机存取存储器(random-access memory, RAM),或者非易失性存储器(non-volatilememory),例如只读存储器(read-only memory, ROM),快闪存储器(flash memory),硬盘(hard disk drive, HDD)或固态硬盘(solid-state drive, SSD)。处理器 501 根据存储器503存储的程序指令,执行以下方法:
[0218]分别记录存储设备每个段内当前时间的第一数据的数据量和在所述当前时间之前预先设置的时间内所述第一数据的变化量;所述第一数据是垃圾数据或者有效数据,所述第一数据的变化量是所述垃圾数据的增加量或者所述有效数据的减少量,所述垃圾数据的增加量的数值和所述有效数据的减少量的数值相同;
[0219]根据所述每个段内所述第一数据的数据量和所述第一数据的变化量计算所述第一数据的预测值;
[0220]根据每个段内所述第一数据的预测值确定需要回收垃圾数据的段;
[0221]其中,所述有效数据是指段内与逻辑地址存在映射关系的物理地址中存储的数据;所述垃圾数据是指段内与逻辑地址不存在映射关系的物理地址中存储的数据。
[0222]所述根据所述每个段内所述第一数据的数据量和所述第一数据的变化量计算所述第一数据的预测值,包括:
[0223]根据所述每个段内所述第一数据的数据量和第一权重计算所述第一数据的数据量的预测值;
[0224]根据所述每个段内所述第一数据的变化量和第二权重计算所述第一数据的变化量的预测值;
[0225]根据所述第一数据的数据量的预测值和所述第一数据的变化量的预测值计算所述第一数据的预测值。
[0226]所述分别记录存储设备每个段内当前时间的第一数据的数据量和在所述当前时间之前预先设置的时间内所述第一数据的变化量,包括:
[0227]分别记录所述每个段内当前时间的垃圾数据的数据量和在所述当前时间之前预先设置的时间内垃圾数据的增加量;
[0228]所述根据所述每个段内所述第一数据的数据量和所述第一数据的变化量计算所述第一数据的预测值,包括:
[0229]根据所述每个段内所述当前时间的垃圾数据的数据量和所述第一权重计算所述当前时间的垃圾数据的数据量的预测值;
[0230]根据所述每个段内所述垃圾数据的增加量和所述第二权重计算所述垃圾数据的变化量的预测值;
[0231]将所述每个段内所述当前时间的垃圾数据的数据量的预测值和所述垃圾数据的变化量的预测值相减,得到所述垃圾数据的预测值;
[0232]所述根据所述每段第一数据的预测值确定需要回收垃圾数据的段,包括:
[0233]按照垃圾数据的预测值从大到小的顺序确定需要回收垃圾数据的段。
[0234]所述分别记录存储设备每个段内当前时间的第一数据的数据量和在所述当前时间之前预先设置的时间内所述第一数据的变化量,包括:
[0235]分别记录所述每个段内当前时间的有效数据的数据量和在所述当前时间之前预先设置的时间内有效数据的减少量;
[0236]所述根据所述每个段内所述第一数据的数据量和所述第一数据的变化量计算所述第一数据的预测值,包括:
[0237]根据所述每个段内所述当前时间的有效数据的数据量和所述第一权重计算所述当前时间的有效数据的数据量的预测值;
[0238]根据所述每个段内所述有效数据的减少量和所述第二权重计算所述有效数据的变化量的预测值;
[0239]将所述每个段内所述当前时间的有效数据的数据量的预测值和所述有效数据的变化量的预测值相加,得到所述有效数据的预测值;
[0240]所述根据所述每段第一数据的预测值确定需要回收垃圾数据的段,包括:
[0241]按照有效数据的预测值从小到大的顺序确定需要回收垃圾数据的段。
[0242]本发明实施例提供的回收垃圾数据的存储设备,具体可以参考上述方法实施例和存储设备实施例的描述,在此不再赘述。
[0243]本发明实施例提供一种回收垃圾数据的存储设备,分别记录存储设备每个段内当前时间的第一数据的数据量和在所述当前时间之前预先设置的时间内所述第一数据的变化量;第一数据是垃圾数据或者有效数据,第一数据的变化量是所述垃圾数据的增加量或者所述有效数据的减少量,所述垃圾数据的增加量的数值和所述有效数据的减少量的数值相同;根据所述每个段内所述第一数据的数据量和所述第一数据的变化量计算所述第一数据的预测值;根据每个段内所述第一数据的预测值确定需要回收垃圾数据的段,优先回收垃圾较多且垃圾产生速率较低的段,从而提高回收垃圾数据的效率。
[0244]以上所述,仅为本发明较佳的【具体实施方式】,但本发明的保护范围并不局限于此,任何熟悉本【技术领域】的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求的保护范围为准。
【权利要求】
1.一种回收垃圾数据的方法,其特征在于,所述方法包括: 分别记录存储设备每个段内当前时间的第一数据的数据量和在所述当前时间之前预先设置的时间内所述第一数据的变化量;所述第一数据是垃圾数据或者有效数据,所述第一数据的变化量是所述垃圾数据的增加量或者所述有效数据的减少量,所述垃圾数据的增加量的数值和所述有效数据的减少量的数值相同; 根据所述每个段内所述第一数据的数据量和所述第一数据的变化量计算所述第一数据的预测值; 根据每个段内所述第一数据的预测值确定需要回收垃圾数据的段; 其中,所述有效数据是指段内与逻辑地址存在映射关系的物理地址中存储的数据;所述垃圾数据是指段内与逻辑地址不存在映射关系的物理地址中存储的数据。
2.根据权利要求1所述的方法,其特征在于,所述根据所述每个段内所述第一数据的数据量和所述第一数据的变化量计算所述第一数据的预测值,包括: 根据所述每个段内所述第一数据的数据量和第一权重计算所述第一数据的数据量的预测值; 根据所述每个段内所述第一数据的变化量和第二权重计算所述第一数据的变化量的预测值; 根据所述第一数据的数据量的预测值和所述第一数据的变化量的预测值计算所述第一数据的预测值。
3.根据权利要求2所述的方法,其特征在于,所述分别记录存储设备每个段内当前时间的第一数据的数据量和在所述当前时间之前预先设置的时间内所述第一数据的变化量,包括: 分别记录所述每个段内当前时间的垃圾数据的数据量和在所述当前时间之前预先设置的时间内垃圾数据的增加量; 所述根据所述每个段内所述第一数据的数据量和所述第一数据的变化量计算所述第一数据的预测值,包括: 根据所述每个段内所述当前时间的垃圾数据的数据量和所述第一权重计算所述当前时间的垃圾数据的数据量的预测值; 根据所述每个段内所述垃圾数据的增加量和所述第二权重计算所述垃圾数据的变化量的预测值; 将所述每个段内所述当前时间的垃圾数据的数据量的预测值和所述垃圾数据的变化量的预测值相减,得到所述垃圾数据的预测值; 所述根据所述每段第一数据的预测值确定需要回收垃圾数据的段,包括: 按照垃圾数据的预测值从大到小的顺序确定需要回收垃圾数据的段。
4.根据权利要求2所述的方法,其特征在于,所述分别记录存储设备每个段内当前时间的第一数据的数据量和在所述当前时间之前预先设置的时间内所述第一数据的变化量,包括: 分别记录所述每个段内当前时间的有效数据的数据量和在所述当前时间之前预先设置的时间内有效数据的减少量; 所述根据所述每个段内所述第一数据的数据量和所述第一数据的变化量计算所述第一数据的预测值,包括: 根据所述每个段内所述当前时间的有效数据的数据量和所述第一权重计算所述当前时间的有效数据的数据量的预测值; 根据所述每个段内所述有效数据的减少量和所述第二权重计算所述有效数据的变化量的预测值; 将所述每个段内所述当前时间的有效数据的数据量的预测值和所述有效数据的变化量的预测值相加,得到所述有效数据的预测值; 所述根据所述每段第一数据的预测值确定需要回收垃圾数据的段,包括: 按照有效数据的预测值从小到大的顺序确定需要回收垃圾数据的段。
5.根据权利要求2所述的方法,其特征在于,所述分别记录存储设备每个段内当前时间的第一数据的数据量和在所述当前时间之前预先设置的时间内所述第一数据的变化量,包括: 分别记录所述每个段内当前时间的垃圾数据的数据量和在所述当前时间之前预先设置的时间内有效数据的减少量; 所述根据所述每个段内所述第一数据的数据量和所述第一数据的变化量计算所述第一数据的预测值,包括: 根据所述每个段内所述当前时间的垃圾数据的数据量和所述第一权重计算所述当前时间的垃圾数据的数据量的预测值; 根据所述每个段内所述有效数据的减少量和所述第二权重计算所述有效数据的变化量的预测值; 将所述每个段内所述当前时间的垃圾数据的数据量的预测值和所述有效数据的变化量的预测值相减,得到所述垃圾数据的预测值; 所述根据所述每段第一数据的预测值确定需要回收垃圾数据的段,包括: 按照垃圾数据的预测值从大到小的顺序确定需要回收垃圾数据的段。
6.根据权利要求2所述的方法,其特征在于,所述分别记录存储设备每个段内当前时间的第一数据的数据量和在所述当前时间之前预先设置的时间内所述第一数据的变化量,包括: 分别记录所述每个段内当前时间的有效数据的数据量和在所述当前时间之前预先设置的时间内垃圾数据的增加量; 所述根据所述每个段内所述第一数据的数据量和所述第一数据的变化量计算所述第一数据的预测值,包括: 根据所述每个段内所述当前时间的有效数据的数据量和所述第一权重计算所述当前时间的有效数据的数据量的预测值; 根据所述每个段内所述垃圾数据的增加量和所述第二权重计算所述垃圾数据的变化量的预测值; 将所述每个段内所述当前时间的有效数据的数据量的预测值和所述垃圾数据的变化量的预测值相加,得到所述有效数据的预测值; 所述根据所述每段第一数据的预测值确定需要回收垃圾数据的段,包括: 按照有效数据的预测值从小到大的顺序确定需要回收垃圾数据的段。
7.一种回收垃圾数据的存储设备,其特征在于,所述存储设备包括: 记录单元,用于分别记录每个段内当前时间的第一数据的数据量和在所述当前时间之前预先设置的时间内所述第一数据的变化量;所述第一数据是垃圾数据或者所述有效数据,所述第一数据的变化量是所述垃圾数据的增加量或者所述有效数据的减少量,所述垃圾数据的增加量的数值和所述有效数据的减少量的数值相同; 计算单元,用于根据所述每个段内所述第一数据的数据量和所述第一数据的变化量计算所述第一数据的预测值; 确定单元,用于根据每个段内所述第一数据的预测值确定需要回收垃圾数据的段;其中,所述有效数据是指段内与逻辑地址存在映射关系的物理地址中存储的数据;所述垃圾数据是指段内与逻辑地址不存在映射关系的物理地址中存储的数据。
8.根据权利要求7所述的存储设备,其特征在于,所述计算单元,具体用于: 根据所述每个段内所述第一数据的数据量和第一权重计算所述第一数据的数据量的预测值; 根据所述每个段内所述第一数据的变化量和第二权重计算所述第一数据的变化量的预测值; 根据所述第一数据的数据量的预测值和所述第一数据的变化量的预测值计算所述第一数据的预测值。
9.根据权利要求8所述的存储设备,其特征在于,所述记录单元,具体用于: 分别记录所述每个段内当前时间的垃圾数据的数据量和在所述当前时间之前预先设置的时间内垃圾数据的增加量;` 所述计算单元,具体用于: 根据所述每个段内所述当前时间的垃圾数据的数据量和所述第一权重计算所述当前时间的垃圾数据的数据量的预测值; 根据所述每个段内所述垃圾数据的增加量和所述第二权重计算所述垃圾数据的变化量的预测值; 将所述每个段内所述当前时间的垃圾数据的数据量的预测值和所述垃圾数据的变化量的预测值相减,得到所述垃圾数据的预测值; 所述确定单元,具体用于: 按照垃圾数据的预测值从大到小的顺序确定需要回收垃圾数据的段。
10.根据权利要求8所述的存储设备,其特征在于,所述记录单元,具体用于: 分别记录所述每个段内当前时间的有效数据的数据量和在所述当前时间之前预先设置的时间内有效数据的减少量; 所述计算单元,具体用于: 根据所述每个段内所述当前时间的有效数据的数据量和所述第一权重计算所述当前时间的有效数据的数据量的预测值; 根据所述每个段内所述有效数据的减少量和所述第二权重计算所述有效数据的变化量的预测值; 将所述每个段内所述当前时间的有效数据的数据量的预测值和所述有效数据的变化量的预测值相加,得到所述有效数据的预测值;所述确定单元,具体用于: 按照有效数据的预测值从小到大的顺序确定需要回收垃圾数据的段。
11.根据权利要求8所述的存储设备,其特征在于,所述记录单元,具体用于: 分别记录所述每个段内当前时间的垃圾数据的数据量和在所述当前时间之前预先设置的时间内有效数据的减少量; 所述计算单元,具体用于: 根据所述每个段内所述当前时间的垃圾数据的数据量和所述第一权重计算所述当前时间的垃圾数据的数据量的预测值; 根据所述每个段内所述有效数据的减少量和所述第二权重计算所述有效数据的变化量的预测值; 将所述每个段内所述当前时间的垃圾数据的数据量的预测值和所述有效数据的变化量的预测值相减,得到所述垃圾数据的预测值; 所述确定单元,具体用于: 按照垃圾数据的预测值从大到小的顺序确定需要回收垃圾数据的段。
12.根据权利要求8所述的存储设备,其特征在于,所述记录单元,具体用于: 分别记录所述每个段内当前时间的有效数据的数据量和在所述当前时间之前预先设置的时间内垃圾数据的增加量; 所述计算单元,具体用于: 根据所述每个段内所述当前时间的有效数据的数据量和所述第一权重计算所述当前时间的有效数据的数据量的预测值; 根据所述每个段内所述垃圾数据的增加量和所述第二权重计算所述垃圾数据的变化量的预测值; 将所述每个段内所述当前时间的有效数据的数据量的预测值和所述垃圾数据的变化量的预测值相加,得到所述有效数据的预测值; 所述确定单元,具体用于: 按照有效数据的预测值从小到大的顺序确定需要回收垃圾数据的段。
【文档编号】G06F3/06GK103577338SQ201310573861
【公开日】2014年2月12日 申请日期:2013年11月14日 优先权日:2013年11月14日
【发明者】林春恭 申请人:华为技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1