《用于采用热度和重新定位度量的数据存储存储器的选择性空间收回的方法和系统.pdf》由会员分享,可在线阅读,更多相关《用于采用热度和重新定位度量的数据存储存储器的选择性空间收回的方法和系统.pdf(14页完整版)》请在专利查询网上搜索。
1、(10)申请公布号 CN 104025059 A(43)申请公布日 2014.09.03CN104025059A(21)申请号 201280053550.9(22)申请日 2012.10.2213/285,890 2011.10.31 USG06F 12/06(2006.01)(71)申请人国际商业机器公司地址美国纽约阿芒克(72)发明人 L.M.格普塔 E.S.埃利弗塞里奥I.科尔特西达斯 胡晓宇R.普莱特卡 R.哈斯 M.T.本哈斯M.J.卡洛斯(74)专利代理机构北京市柳沈律师事务所 11105代理人张晓明(54) 发明名称用于采用热度和重新定位度量的数据存储存储器的选择性空间收回的方法。
2、和系统(57) 摘要通过以下步骤收回数据存储存储器系统的数据存储存储器的空间:确定数据存储存储器中存储的数据的热度度量;确定与数据存储存储器中的数据的重新定位有关的重新定位度量;确定对于数据使热度度量与重新定位度量相关的数据的效用度量;以及使得其效用度量未达到效用度量阈值的数据可用于空间收回。因此,可以另外地驱逐或降低但是符合或超过效用度量阈值的数据被免除空间收回,并且替代地维持在数据存储存储器中。(30)优先权数据(85)PCT国际申请进入国家阶段日2014.04.30(86)PCT国际申请的申请数据PCT/IB2012/055801 2012.10.22(87)PCT国际申请的公布数据WO。
3、2013/064936 EN 2013.05.10(51)Int.Cl.权利要求书3页 说明书7页 附图3页(19)中华人民共和国国家知识产权局(12)发明专利申请权利要求书3页 说明书7页 附图3页(10)申请公布号 CN 104025059 ACN 104025059 A1/3页21.一种用于收回数据存储存储器系统的数据存储存储器的空间的方法,包括:确定所述数据存储存储器中存储的数据的热度度量;确定与所述数据存储存储器中的所述数据的重新定位有关的重新定位度量;确定对于所述数据使所述热度度量与所述重新定位度量相关的所述数据的效用度量;使得其效用度量未达到效用度量阈值的所述数据可用于空间收回;。
4、以及免除其效用度量符合或超过所述效用度量阈值的所述数据空间收回。2.根据权利要求1所述的方法,还包括:免除最近添加到所述数据存储存储器的数据的空间收回合格。3.根据权利要求1所述的方法,还包括:免除通过空间管理策略指定为不合格的数据的空间收回合格。4.根据权利要求1所述的方法,其中从对于所述数据存储存储器的数据的效用度量的平均值确定所述效用度量阈值。5.根据权利要求4所述的方法,其中跨一时间段确定对于所述数据存储存储器的数据的所述效用度量的平均值。6.根据权利要求4所述的方法,其中跨预定数量的已处理的空间收回请求确定对于所述数据存储存储器的数据的所述效用度量的平均值。7.根据权利要求1所述的方。
5、法,其中从用于所述数据存储存储器的LRU列表中识别的对于所述数据存储的数据的效用度量的平均值,动态地确定所述效用度量阈值。8.根据权利要求1所述的方法,其中所述数据存储存储器中存储的所述数据是页面的形式,并且其中从对于具有与试探空间收回牺牲品相似的热度度量的所述数据的页面的效用度量平均值,动态地确定对于所述数据的所述试探空间收回牺牲品页面的所述效用度量阈值。9.根据权利要求1所述的方法,其中所述数据存储存储器中存储的所述数据在日志结构范围是页面的形式;以及所述方法还包括:无效收回合格的所述数据的页面;选择具有最大数量的无效页面的至少一个日志结构范围,用于将其中有效的页面重新定位到另一日志结构范。
6、围中,以便收回所述选择的日志结构范围。10.根据权利要求9所述方法,其中所述热度度量基于对正在确定其热度度量的数据的命中的数量;并且所述重新定位度量基于正在确定其重新定位度量的所述数据重新定位到另一日志结构范围的次数。11.一种计算机实现的数据存储存储器系统,包括:至少一个数据存储存储器;以及用于收回所述数据存储存储器的空间的控制,所述控制:确定所述数据存储存储器中存储的数据的热度度量;确定与所述数据存储存储器中的所述数据的重新定位有关的重新定位度量;确定对于所述数据使所述热度度量与所述重新定位度量相关的所述数据的效用度量;使得其效用度量未达到效用度量阈值的所述数据可用于空间收回;以及权 利 。
7、要 求 书CN 104025059 A2/3页3免除其效用度量符合或超过所述效用度量阈值的所述数据空间收回。12.根据权利要求11所述的计算机实现的数据存储存储器系统,其中所述控制还:免除最近添加到所述数据存储存储器的数据的空间收回合格。13.根据权利要求11所述的计算机实现的数据存储存储器系统,其中所述控制还:免除通过空间管理策略指定为不合格的数据的空间收回合格。14.根据权利要求11所述的计算机实现的数据存储存储器系统,其中从对于所述数据存储存储器的数据的效用度量的平均值确定所述效用度量阈值。15.根据权利要求14所述的计算机实现的数据存储存储器系统,其中跨一时间段确定对于所述数据存储存储。
8、器的数据的所述效用度量的平均值。16.根据权利要求14所述的计算机实现的数据存储存储器系统,其中跨预定数量的已处理的空间收回请求确定对于所述数据存储存储器的数据的所述效用度量的平均值。17.根据权利要求11所述的计算机实现的数据存储存储器系统,其中从用于所述数据存储存储器的LRU列表中识别的对于所述数据存储的数据的效用度量的平均值,动态地确定所述效用度量阈值。18.根据权利要求11所述的计算机实现的数据存储存储器系统,其中所述数据存储存储器中存储的所述数据是页面的形式,并且其中从对于具有与试探空间收回牺牲品相似的热度度量的所述数据的页面的效用度量平均值,动态地确定对于所述数据的所述试探空间收回。
9、牺牲品页面的所述效用度量阈值。19.根据权利要求11所述的计算机实现的数据存储存储器系统,其中所述数据存储存储器中存储的所述数据在日志结构范围是页面的形式;以及所述方法还包括:无效收回合格的所述数据的页面;选择具有最大数量的无效页面的至少一个日志结构范围,用于将其中有效的页面重新定位到另一日志结构范围中,以便收回所述选择的日志结构范围。20.根据权利要求19所述的计算机实现的数据存储存储器系统,其中所述热度度量基于对正在确定其热度度量的数据的命中的数量;并且所述重新定位度量基于正在确定其重新定位度量的所述数据重新定位到另一日志结构范围的次数。21.一种用于收回数据存储存储器系统的数据存储存储器。
10、的空间的计算机程序产品,所述计算机程序产品包括具有包含其中的非瞬时计算机可用程序代码的计算机可用存储介质,所述计算机可用程序代码包括:确定所述数据存储存储器中存储的数据的热度度量的计算机可用程序代码;确定与所述数据存储存储器中的所述数据的重新定位有关的重新定位度量的计算机可用程序代码;确定对于所述数据使所述热度度量与所述重新定位度量相关的所述数据的效用度量的计算机可用程序代码;使得其效用度量未达到效用度量阈值的所述数据可用于空间收回的计算机可用程序代码;以及免除其效用度量符合或超过所述效用度量阈值的所述数据的空间收回的计算机可用程序代码。22.根据权利要求21所述的计算机程序产品,还包括:权 。
11、利 要 求 书CN 104025059 A3/3页4免除最近添加到所述数据存储存储器的数据的空间收回合格的计算机可用程序代码。23.根据权利要求21所述的计算机程序产品,还包括:免除通过空间管理策略指定为不合格的数据空间收回合格的计算机可用程序代码。24.根据权利要求21所述的计算机程序产品,其中从对于所述数据存储存储器的数据的效用度量的平均值确定所述效用度量阈值。25.根据权利要求21所述的计算机程序产品,其中从用于所述数据存储存储器的LRU列表中识别的对于所述数据存储的数据的效用度量的平均值动态地确定所述效用度量阈值。26.根据权利要求21所述的计算机程序产品,其中所述数据存储存储器中存储。
12、的所述数据是页面的形式,并且其中从对于具有与试探空间收回牺牲品相似的热度度量的所述数据的页面的效用度量平均值,动态地确定对于所述数据的所述试探空间收回牺牲品页面的所述效用度量阈值。27.根据权利要求21所述的计算机程序产品,其中其中所述数据存储存储器中存储的所述数据在日志结构范围是页面的形式;以及还包括:无效收回合格的所述数据的页面的计算机可以程序代码;选择具有最大数量的无效页面的至少一个日志结构范围,用于将其中有效的页面重新定位到另一日志结构范围中,以便收回所述选择的日志结构范围的计算机可用程序代码。28.根据权利要求27所述的计算机程序产品,其中所述热度度量基于对正在确定其热度度量的数据的。
13、命中的数量;并且所述重新定位度量基于正在确定其重新定位度量的所述数据重新定位到另一日志结构范围的次数。权 利 要 求 书CN 104025059 A1/7页5用于采用热度和重新定位度量的数据存储存储器的选择性空间收回的方法和系统技术领域0001 本发明涉及计算机实现的数据存储存储器,更具体地涉及存储器空间收回。背景技术0002 计算机实现的数据存储系统典型地包括其中代表主机计算机系统存储数据的各种类型的数据存储。存储控制响应于读和写请求控制对数据存储介质和存储器的存取。存储控制可以根据安排为各种冗余、存取速度和安全等级的数据存储存储器和设备指引数据,数据存储设备诸如高速缓冲存储器、非易失性存储。
14、、RAID(独立盘的冗余阵列),JBOD(磁盘簇)等。0003 作为示例,国际商业机器公司ESS(企业存储服务器),诸如DS8000TM,具有称为“中央电子复合体”或“CECs”的计算机实体、高速缓冲存储器、非易失性存储等的冗余群集。0004 在数据存储系统中,可以采用快速存储器作为用于存储最近存取过、频繁存取的、或有可能在不久的将来存取的数据或指令的高速缓冲存储器。代替被提取或重新计算,高速缓冲存储器中存储的数据可以被迅速存取,从而节省时间和资源二者。0005 高速缓冲存储器可以提供在多个等级中。例如,高速缓冲存储器数据存储系统可以包括“第一”或“主要”高速缓冲存储器和“次级”高速缓冲存储器。
15、二者。典型地,第一高速缓冲存储器比次级高速缓冲存储器具有更快的存取并且比次级高速缓冲存储器每数据单元更昂贵,并且次级高速缓冲存储器比第一高速缓冲存储器具有更大的存储容量。例如,第一高速缓冲存储器包括DRAM(“动态随机存取存储器” ),然而次级高速缓冲存储器包括快闪存储器固态驱动器(SSD),诸如“Flash_Cache”(国际商业机器公司注册商标)。当存取数据时,计算系统或设备可以首先在第一高速缓冲存储器中查找数据,并且如果数据不存在于此,则在次级高速缓冲存储器中查找数据。当在任一存储器中数据不可用时,典型地从包括较慢存取速度的数据存储的主要数据存储(诸如,RAID、JBOD等)对数据进行存。
16、取。当读取数据时,典型地数据保留在主要数据存储中并且复制到第一高速缓冲存储器和/或次级高速缓冲存储器。如果第一高速缓冲存储器中的读取数据没有被迅速或频繁地存取,则其可以被降级到次级高速缓冲存储器或被驱逐。如果次级高速缓冲存储器中的读取数据没有被迅速或频繁地存取,则其可以被驱逐。当写入数据时,计算系统或设备可以将数据写入到第一高速缓冲存储器。如果没有迅速地或频繁地存取第一高速缓冲存储器中的写入数据,则该数据可以被降级到次级高速缓冲存储器。如果没有迅速地或频繁地从次级高速缓冲存储器存取数据,则可以将其降级到更慢存取速度的数据存储,诸如RAID、JBOD等。可替代地,写入数据在被数据存储系统接收之后。
17、可以尽快写入到主要数据存储。0006 典型地,采用LRU(最近最少使用)算法来将数据降级到下一较低等级或从第一高速缓冲存储器或次级高速缓冲存储器驱逐数据。0007 在一些存储器中,诸如次级高速缓冲存储器,数据以日志结构方式存储为(顺序说 明 书CN 104025059 A2/7页6地写入,要求在逻辑的基础上确定数据存储在哪的日志)大数据范围的页面。在LRU算法下查看数据页面,并且无效最近最少使用的页面。为了收回空间,系统将选择具有最多无效的页面的日志结构范围(log-structured extent,LSE),并且压缩有效页面,将其重新定位在新LSE中,留下一个或多个空闲LSE。重新定位招致。
18、大量的I/O(输入/输出)重新定位操作,因为许多LSE需要被读取并且一个或多个LSE在收回过程的每个迭代处被写入。发明内容0008 提供方法、计算机实现的数据存储存储器系统和计算机程序产品用于收回数据存储存储器系统的数据存储存储器的空间。在本上下文中的“存储器”是必须无效、驱逐或降级数据以为新进入的数据腾出可用空间的任何类型的存储器,其示例是高速缓冲存储器。0009 在计算机实现的数据存储存储器系统的一个实施例中,执行以下步骤:0010 确定数据存储存储器中存储的数据的热度度量;0011 确定与数据存储存储器中的数据的重新定位有关的重新定位度量;0012 确定对于数据使热度度量与重新定位度量相。
19、关的数据的效用度量;0013 使得其效用度量未达到效用度量阈值的数据可用于空间收回;以及0014 其效用度量符合或超过效用度量阈值的数据免除空间收回。0015 因此,可以另外地保存但是未达到效用度量阈值的数据被替代地无效,并且不必在数据存储存储器中重新定位。0016 在进一步的实施例中,最近添加到数据存储存储器的数据被免除空间收回合格。0017 在又进一步的实施例中,通过空间管理策略指定为不合格的数据被免除空间收回合格。0018 在另一实施例中,从对于数据存储存储器的数据的效用度量的平均值确定效用度量阈值。0019 在进一步的实施例中,跨一时间段或预定数量的已处理的请求确定对于数据存储存储器的。
20、数据的效用度量的平均值。0020 在又一实施例中,从用于数据存储存储器的LRU列表中识别的对于数据存储的数据的效用度量的平均值动态地确定效用度量阈值。0021 在另一实施例中,数据存储存储器中存储的数据是页面的形式,并且从对于具有与该试探空间收回牺牲品相似的热度度量的数据的页面的效用度量平均值,动态地确定对于数据的试探空间收回牺牲品页面的效用度量阈值。0022 在另一实施例中,数据存储存储器中存储的数据在日志结构范围是页面的形式;以及该方法还包括:0023 无效收回合格的数据页面选择具有最大数量的无效页面的至少一个日志结构范围,用于将其中有效的页面重新定位到另一日志结构范围中,以便收回选择的日。
21、志结构范围。0024 在进一步的实施例中,热度度量基于对其热度度量正在被确定的数据的命中的数量;并且重新定位度量基于其重新定位度量正在被确定的数据重新定位到另一日志结构范围的次数。说 明 书CN 104025059 A3/7页7附图说明0025 现在将参考附图仅通过示例的方式描述本发明的优选实施例,其中:0026 图1是其中实现本发明的示例性网络和计算机实现的存储服务器系统的框图;0027 图2是图1的计算机实现的数据存储存储器系统的图解示意;0028 图3是通过图2的数据存储存储器系统存储的数据的范围的图解示意;以及0029 图4是描绘操作图1和2的系统的示例性方法的流程图。具体实施方式00。
22、30 在以下参考附图的描述中以优选实施例描述本发明,其中同样的数字代表相同或相似的元件。虽然按照实现本发明目的的最佳方式描述本发明,但是本领域的技术人员将认识到鉴于这些教导不脱离本发明的范围可以完成多种变化。0031 参考图1,用计算机实现的数据存储系统110图示基于计算机的网络架构100的示例,计算机实现的数据存储系统110可以实现本文讨论的计算机实现的高速缓冲存储器数据存储系统和方法。仅以示例的方式呈现架构100,不意图对其限制。本文公开的计算机实现的高速缓冲存储器数据存储系统和方法可以应用于广泛的多种不同计算机、服务器、数据存储系统和网络架构。0032 示例性的网络架构100可以包括耦接。
23、到网络(诸如,存储域网(SAN)108)的一个或多个主机计算机系统102。网络108可以包括使用任何适当的协议的任何合当的专用或公用互连。存储系统110包括存储控制200,其配置为向和从开关202和数据存储203与204传输数据并且控制开关202和数据存储203与204的操作。例如,数据存储可以包括经由开关202可存取的固态驱动器阵列和硬盘驱动器。可替代或附加地,数据存储203和204可以包括单独的设备或者可以包括具有许多设备的数据存储库。主机系统102的全部或任何可以指引和利用存储系统110,并且利用本文的存储控制200和数据高速缓存系统。0033 高速缓存系统可以实现在存储控制200中,并。
24、且还可以可应用于其他存储系统。如所示,存储控制200包括一个或多个服务器206。控制200还可以包括主机适配器208和设备适配器210以提供将控制200分别连接到主机系统102和数据存储203与204的接口。多个服务器206a、206b可以提供冗余以确保数据总是可用于连接的主机102。因此,如果一个服务器206a故障,其他服务器206b可以保持运作以确保数据传输能够在主机系统102和数据存储203与204之间继续。该过程可以称为“故障转移(failover)”。0034 具有类似于图1中图示的架构的架构的存储系统110的一个示例是国际商业机器公司的DS8000TM企业存储服务器。DS8000T。
25、M是提供数据存储的高性能、高容量存储控制,其设计为支持数据存储的连续操作和实现数据存储的虚拟化,并且本文仅通过实施例示例的方式呈现,不意图对其限制。因此,本文讨论的存储器数据存储系统不限于DS8000TM,但是可以在任何相当的具有存储器数据无效的存储控制200中实现,而不管制造商、产品名称或者与系统110相关联的组件或组件名称。0035 在图1的示例中,每个服务器206可以包括一个或多个计算机处理器212和存储器214。计算机处理器212可以包括内部处理和存储能力以存储运行在处理器上并且和其他的事物用于存取数据存储203和204中的数据的软件模块。0036 在一个实施例中,存储器214可以包括。
26、高速缓冲存储器218。例如每当主机102在说 明 书CN 104025059 A4/7页8读取操作中从存储系统110存取数据时,执行该操作(例如,从存储204读取数据)的服务器206可以在可能再次需要该数据的情况下,将数据保存在其高速缓冲存储器218中。如果主机102再次存取该数据,则服务器206可以代替从存储203和204提取该数据而从高速缓冲存储器218提供该数据,节省了时间和资源二者。类似地,当主机系统102执行写入时,服务器206可以在高速缓冲存储器218中进行存储,或者主机系统102可以指引在高速缓冲存储器218中存储数据,以在稍后降级到存储203和204。当在高速缓冲存储器218中。
27、存储写入时,该写入也可以存储在相对的服务器206的非易失性存储器(NVS)220中,以便在第一服务器206故障的情况下可以通过相对的服务器206恢复该写入。0037 参考图1和2,存储系统110可以包括诸如硬盘驱动器的数据存储204和诸如基于快闪存储器的固态驱动器(SSD)的数据存储203二者。SSD驱动器或其他类型的固态存储器的输入/输出(I/O)性能通常远快于硬盘驱动器的I/O性能。因为较高的I/O性能,在某些实施例中SSD203可以用于在用作第一高速缓冲存储器的高速缓冲存储器218和硬盘驱动器204之间提供大次级高速缓冲存储器300。大次级高速缓冲存储器300的使用可以显著地提高存储系统。
28、110的I/O性能。0038 如果读取请求通过服务器206接收,使用次级高速缓冲存储器300,该服务器最初可以在第一高速缓冲存储器218中查找数据,如果数据不存在,在驻留在SSD203中的次级高速缓冲存储器300中查找数据。如果在任一高速缓冲存储器中数据均不可用,服务器206可以从硬盘驱动器204检索数据。类似地,当写入或修改数据时,服务器206最初可以将数据或修改的数据写入第一高速缓冲存储器218。数据最后可以降级到次级高速缓冲存储器300以在第一高速缓冲存储器218中腾出空间。数据最终可以降级到盘驱动器204以在次级高速缓冲存储器300中腾出可用空间。0039 作为示例,次级高速缓冲存储器。
29、300可以使其大小提供存储系统110的总数据存储容量的约百分之一到百分之二十。因此,对于包括约4千万兆字节的数据存储(来自硬盘驱动器204和SSD203二者)的存储系统110,该存储空间的约2百万兆字节可以用作次级高速缓冲存储器300。第一高速缓冲存储器218典型地是次级高速缓冲存储器300的大小的小百分比。作为示例性实施例,用于第一高速缓冲存储器218和次级高速缓冲存储器300二者的存储空间可以安排在各页面中以提供操作的方便。0040 参考图2、3和4,在一个实施例中,在第一高速缓冲存储器218和也在次级高速缓冲存储器300中必须收回空间以适应新数据。类似地,一旦所有的存储器满了,必须提供用。
30、于收回空间的部件以便适应新数据。如上所讨论的,在一些存储器中,诸如次级高速缓冲存储器,数据以日志结构方式在大数据范围280中存储为页面285。图1的控制200例如利用元数据以数据处理信息320跟踪数据页面。日志结构范围(LSE)的性质是所有写入是顺序写入,当存储器300包括SSD时的优点。另一优点是多个页面可以使用单个I/O(输入/输出)操作写入到存储器。又一优点是用于LSE的内部簿记可以在LSE280的开始使用小报头290完成。可替代的,小报头290也可以被放置在范围中的其他地方,诸如范围的末尾。以上讨论缺点并且缺点是有效页面可以被重新定位,并且可以被重新定位许多次,因为LSE被组合和重新安。
31、排以便以空LSE的形式收回空间。0041 在一个实施例中,根据LRU算法查看数据页面以提供LRU列表330,其可以被认为是提名要被无效的页面。如上,如果页面保留并且没有被无效,但是在包括大量无效页面的说 明 书CN 104025059 A5/7页9LSE中,则页面被重新定位到另一LSE以便可以收回当前LSE。在数据处理信息320中的页面或页面组的位置以及其中的映射当页面被重新定位时可以被相应地更新。重新定位度量,诸如重新定位的数量计数,通过重新定位度量340中的页面跟踪。0042 在一个实施例中,图1的控制200还跟踪诸如次级高速缓冲存储器300的存储器中的数据的热度度量310。0043 热度。
32、度量的一个示例是自从数据页面最后存储在数据存储系统中已经存取数据页面的次数的计数(“命中” )。例如,数据可以位于数据存储204中并且由主机系统读取以及另外存储在次级高速缓冲存储器300中。此外,新写入的数据可以存储在高速缓冲存储器300中,未决移动到数据存储204。例如,命中的数量可以以对于每个页面320的元数据条目中的计数器的形式实现。0044 热度度量的其他示例包括超过限定时间段或预定数量的已处理的请求的页面的“命中”的数量。热度度量可以可替代地包括页面的“命中”与所有页面的“命中”的平均值相比的比率。0045 此外,热度度量可以被老化,对不是最近的命中给予较小的权重。该老化可以是线性的。
33、或指数的。0046 如上所讨论的,虽然诸如LSE280的页面295的一些页面被无效,但是可以重新定位有效页面297,并且可以重新定位多次,因为LSE以空LSE的形式被组合和重新安排以收回空间。在一个实施例中,图1的控制200还利用数据处理信息320跟踪数据的位置,并且当数据重新定位在诸如次级高速缓冲存储器300的数据存储存储器中时更新位置数据。控制200对于每个页面跟踪重新定位度量340。0047 在一个实施例中,重新定位度量340包括在收回过程迭代期间页面已经被重新定位的次数的计数。为了避免答案为无限的比率的可能性,重新定位度量r(p)的分母可以被给予初始值“1”。0048 重新定位度量34。
34、0和热度度量310二者可以通过用于与元数据320相关联的每个页面的计数器来确定。0049 在一个实施例中,通过仅仅选择地重新定位符合热度效用阈值的页面增加被无效的数据量。剩下的页面将被无效和从高速缓冲存储器移除。也就是说,许多冷页面将在收回过程期间被处理为无效页面。因此,将避免大量的重新定位写入,有效地导致更高的存储器性能。0050 仍然参考图2、3和4,图1的控制200确定对于数据存储存储器300中存储的数据页面的热度度量h(p);并且确定与数据存储存储器中的数据的重新定位有关的重新定位度量r(p)。然后,确定对于数据使热度度量与重新定位度量相关的数据的效用度量u(p)。其效用度量未达到效用。
35、度量阈值T的数据被无效,使得它的空间可用于空间收回。在一个实施例中,效用度量包括热度度量与重新定位度量的比率,以公式术语:u(p)h(p)/r(p)。0051 因此,可以另外地保存但是未达到效用度量阈值T的数据替代地被无效,并且不必在数据存储存储器300中重新定位。0052 在步骤400,页面285“p”或许通过LRU算法330被提名用于驱逐。0053 在步骤410,例如通过提取对于页面的热度度量310和重新定位度量340来测试页说 明 书CN 104025059 A6/7页10面。在步骤420确定对于页面的效用度量,例如热度度量与重新定位度量的比率,u(p)h(p)/r(p)。0054 在页。
36、面最近已经被添加到数据存储存储器300并且发生要被重新定位的实例中,热度度量可以是冷,因为已经几乎没有命中机会并且重新定位给出不自然地低的效用度量。因此,在步骤430,检查添加到存储的定时,并且如果页面最近已经添加到存储,则免除其空间收回合格,并且在步骤440,使其可用于重新定位,将其保存在存储器330中。因此,该系统允许页面保留在存储器中一些时间以对其给出获得命中的机会。0055 步骤430可以安排为将其他空间管理策略350应用于免除页面空间收回合格。一些示例包括使得已经被命中仅仅一次的数据对于收回合格,但是已经被命中多于两次的数据在最后命中之后的一时间段不合格;或者通过顺序读取到达存储器的。
37、数据对于收回合格,但是由于随机读取到达的数据对于收回不合格。0056 如果步骤430确定页面对于驱逐合格,则其变为试探空间收回牺牲品页面。0057 步骤460提供效用阈值T。阈值T可以是固定值,或者可以动态设置。0058 在一个实施例中,根据对于数据存储存储器300的数据的效用度量的平均值确定效用度量阈值T。0059 在另一实施例中,对于数据存储存储器的数据的效用度量的平均值跨一时间段确定。0060 在又一实施例中,根据用于数据存储存储器300的LRU列表330中识别的对于数据存储的数据的效用度量的平均值,动态地确定效用度量阈值T。0061 步骤470比较对于作为试探空间收回牺牲品的页面p的效。
38、用度u(p)量与阈值T。该意图是仅保存和重新定位具有高效用的那些页面,并且无效未达到效用度量阈值T的页面,以便他们不必在数据存储存储器中重新定位。0062 因此,如果步骤470确定对于页面p的效用度量未达到效用度量阈值T,则步骤480使得该页面可用于空间收回。如果步骤470确定对于页面p的效用度量符合或超过效用度量阈值T,则步骤440使得页面可用于重新定位,免除页面空间收回并且将其保存在存储器300中。0063 步骤490或者移动到下一页面,或者前进以进行LSE的重新定位和重新安排。页面的重新定位包括确定数据的无效页面对于收回合格;以及选择具有最大数量的无效页面的至少一个日志结构范围,用于将其。
39、中有效的页面重新定位到另一日志结构范围中,以便收回选择的日志结构范围。0064 如果不使用LSE以日志结构方式管理存储器300,则跨整个存储器收回空间,并且重新定位算法、重新定位度量、效用度量和阈值安排为存储器安排的特有事物。0065 本领域的技术人员将认识到本文公开的本发明的实施例,包括用于收回图1的存储系统110的数据存储存储器300的空间、以及在此提供的功能,可以实施为系统、方法或计算机程序产品。因此,本方面的实施例可以采用以下形式,即完全的硬件所述、完全的软件实施例(包括固件、驻留软件、微代码等)、或者硬件和软件结合,诸如本文一般可以称为“电路”、“模块”或“系统”的组合软件和硬件方面的实施例。此外,本发明的实施还可以采用在一个或多个非瞬时计算机可读介质中实施的计算机程序产品的形式,该计算机可读介质具有实现在其上计算机可读的程序代码。说 明 书CN 104025059 A10。