用于缓存管理的方法和系统的制作方法_3

文档序号:9687371阅读:来源:国知局
一比例高于第一阈值,表明与该类别相关联的当前预计失效事件时间点可能偏晚。此时,可以将该类别的失效事件的预计时间点适当提前。例如,在一个实施例中,可以将失效事件的预计时间点提前到第一时间点。当然,失效事件的预计时间点可被提前到任何其他适当的时间。
[0045]作为示例,假设与缓存条目的一个给定类别相关联的失效事件的当前预计时间点为上午10:00,第一时间点为上午9:55,并且第一阈值为10%。此时,将会在上午9:55检测属于该类别的每个缓存条目是否已经失效。在上午9:55已经失效的那些缓存条目构成了第一组缓存条目。如果发现第一缓存条目占该类别的所有缓存条目的比例超过10% (即,在上午9:55时,属于该类别的缓存条目中超过10%的缓存条目已经失效),则可以将失效事件的预计时间点提前。例如,在一个实施例中,失效事件的预计时间点可被提前到上午9:55。
[0046]备选地或附加地,在一个实施例中,对于任何给定的类别,可以确定该类别的缓存条目中的、实际失效时间点晚于预计时间点的缓存条目(称为“第二组缓存条目”)的数目。继而,可以计算第二组缓存条目在该类别的所有缓存条目中所占的比例,称为“第二比例”。例如,在一个实施例中,可以在该类别的失效事件的预计时间点之后的一个预定时间点(称为“第二时间点”),检测该类别的缓存条目中有多少条目仍然保持有效。在此实施例中,在第二时间点保持有效的缓存条目构成了第二组缓存条目。类似于第一组缓存条目,第二组缓存条目可包括在运行时被指派到该类别的实际缓存条目。
[0047]第二比例可与预定的阈值(称为“第二阈值”)进行比较。如果第二比例高于第二阈值,表明与该类别相关联的当前预计失效事件时间点可能偏早。此时,可以将该类别的失效事件的预计时间点适当延后。例如,在一个实施例中,可以将失效事件的预计时间点延后到第二时间点。当然,失效事件的预计时间点可被延后到任何其他适当的时间。
[0048]仍然考虑上文描述的示例,其中类别的失效事件的当前预计时间点为上午10:00。假设第二时间点为上午10:05,并且第二阈值为10%。注意,尽管在此示例中第一阈值等于第二阈值,但是这仅仅是示例性的。在其他实施例中,第一阈值可以不等于第二阈值。如果通过检测发现在上午10:05时属于该类别的缓存条目中超过10%的条目仍然保持有效,则可以将失效事件的预计时间点延后,例如延后到上午10:05。
[0049]特别地,在一个实施例中,可以执行第一比例与第一阈值的比较,并且还执行第二比例与第二阈值的比较。如果第一比例大于第一阈值并且第二比例大于第二阈值,说明该类别中相当数目的缓存条目在失效事件的预计时间点之前已经失效。同时,该类别中相当数目的缓存条目在失效事件的预计时间点之后仍然保持有效。属于同一类别的缓存条目失效时间的这种分散性表明:该类别未能正确地反映缓存条目的失效事件在时间上的规律,因此是不适当的。此时,在一个实施例中,可以通过调整类别本身来修改失效事件的预计时间点。
[0050]例如,在一个实施例中,对类别的调整可以包括重新对训练缓存条目执行聚类过程,以便产生新的类别。备选地或附加地,在一个实施例中,对类别的调整可以包括从类别中移除在失效事件的预计时间点之前失效的缓存条目。备选地或附加地,在又一个实施例中,对类别的调整可以包括从类别中移除在失效事件的预计时间点之后仍然保持有效的缓存条目。对类别的任何其他适当调整都是可能的。
[0051]通过动态地提前和/或延后失效事件的预计时间点,可以在运行态动态地适应一个或多个类别的失效事件的变化。例如,在上文示例中,当通过聚类生成预定义类别时,给定类别的失效事件可能的确在上午10:00发生。然而,服务提供方可能随后调整该失效事件的时间点。例如,web站点的托管方可以将更新有关数据的时间点从上午10:00调整到上午10:30。在这样的情况下,通过在使用中动态地将失效事件的预计时间点延后一次或多次,可以逐步地使失效事件的预计时间点再次与实际时间点相吻合。
[0052]而且,在同时使用第一比例和第二比例的实施例中,还可以对类别的改变做出正确、及时的响应。例如,随着时间的变化,最初被划分为相同类别的缓存条目的失效事件时间点可能变得彼此异质。根据本发明的实施例,这种变化可以被检测到,并且可以通过对类别所做的调整而得到有效的补偿。
[0053]图3示出了根据本发明实施例的用于缓存管理的系统300的示意性框图。如图所示,系统300包括:类别确定单元310,被配置为响应于缓存条目被创建,确定所述缓存条目的类别;时间点确定单元320,被配置为确定与所述类别相关联的失效事件的预计时间点,所述失效事件的发生将导致所述类别的缓存条目失效;以及有效周期设置单元330,被配置为基于所述预计时间点,设置所述缓存条目的有效周期。
[0054]在一个实施例中,所述类别确定单元310可以包括:属性提取单元,被配置为提取所述缓存条目的属性;以及类别选择单元,被配置为基于所述属性从多个预定义类别中选择所述缓存条目的所述类别,所述多个预定义类别通过按照多个训练缓存条目的失效事件时间点对所述多个训练缓存条目进行分组而获得。
[0055]在一个实施例中,所述时间点确定单元320包括:训练时间点确定单元,被配置为确定所述多个训练缓存条目中属于所述类别的训练缓存条目的所述失效事件时间点;以及时间点计算单元,被配置为基于属于所述类别的所述训练缓存条目的所述失效事件时间点来计算所述预计时间点。
[0056]在一个实施例中,系统300还可以包括:时间点修改单元,被配置为基于属于所述类别的多个缓存条目的实际失效时间点,修改所述预计时间点。
[0057]在一个实施例中,所述时间点修改单元可以包括:第一比例计算单元,被配置为计算第一组缓存条目在所述多个缓存条目中所占的第一比例,所述第一组缓存条目的所述实际失效时间点早于所述预计时间点;以及时间点提前单元,被配置为响应于所述第一比例超过第一阈值,将所述预计时间点提前。
[0058]备选地或附加地,在一个实施例中,所述时间点修改单元可以包括:第二比例计算单元,被配置为计算第二组缓存条目在所述多个缓存条目中所占的第二比例,所述第二组缓存条目的所述实际失效时间点晚于所述预计时间点;以及时间点延后单元,被配置为响应于所述第二比例超过第二阈值,将所述预计时间点延后。
[0059]特别地,在一个实施例中,所述时间点修改单元可以同时包括上述第一比例计算单元和第二比例计算单元。在这样的实施例中,系统300还可以包括类别调整单元,被配置为响应于所述第一比例超过第一阈值并且所述第二比例超过第二阈值,调整所述类别以修改所述预计时间点。
[0060]应当注意,为清晰起见,图3中没有示出系统300所包括的可选单元或者子单元。上文所描述的所有特征和操作分别适用于系统300,故在此不再赘述。而且,系统300中的单元或子单元的划分不是限制性的而是示例性的,旨在从逻辑上描述其主要功能或操作。一个单元的功能可以由多个单元来实现;反之,多个单元亦可由一个单元来实现。本发明的范围在此方面不受限制。
[0061]而且,系统300所包含的单元可以利用各种方式来实现,包括软件、硬件、固件或其任意组合。例如,在某些实施方式中,系统300可以利用软件和/或固件来实现。备选地或附加地,系统300可以部分地或者完全地基于硬件来实现。例如,系统300中的一个或多个单元可以实现为集成电路(1C)芯片、专用集成电路(ASIC)、片上系统(S0C)、现场可编程门阵列(FPGA),等等。本发明的范围在此方面不受限制。
[0062]本发明可以是系统、方法和/或计算机程序产品。计算机程序产品可以包括计算机可读存储介质,其上载有用于使处理器实现本发明的各个方面的计算机可读程序指令。
[0063]计算机可读存储介质可以是可以保持和存储由指令执行设备使用的指令的有形设备。计算机可读存储介质例如可以是一但不限于一电存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备或者上述的任意合适的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPR0M或闪存)、静态随机存取存储器(SRAM)、便携式压缩盘只读存储器(⑶-ROM)、数字多功能盘(DVD)、记忆棒、软盘、机械编码设备、例如其上存储有指令的打孔卡或凹槽内凸起结构、以及上述的任意合适的组合。这里所使用的计算机可读存储介质不被解释为瞬时信号本身,诸如无线电波或者其他自由传播的电磁波、通过波导或其他传输媒介传播的电磁波(例如,通过光纤电缆的光脉冲)、或者通过电线传输的电信号。
[0064]这里所描述的计算机可读程序指令可以从计算机可读存储介质下载到各个计算/处理设备,或者通过网络、例如因特网、局域网、广域网和/或无线网下载到外部计算机或外部存储设备。网络可以包括铜传输电缆、光纤传输、无线传输、路由器、防火墙、交换机、网关计算机和/或边缘服务器。每个计算/处理设备中的网络适配
当前第3页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1