一种控制缓存池水位的方法、系统、设备及介质技术方案

技术编号:28033715 阅读:15 留言:0更新日期:2021-04-09 23:15
本发明专利技术公开了一种控制缓存池水位的方法、系统、设备和存储介质,方法包括:部署分布式存储集群,并在分布式集群中分别创建高速缓存池和低速存储池;响应于接收到数据,判断数据在单位时间内的读写次数是否超过第一阈值;响应于数据在单位时间内的读写次数未超过第一阈值,根据脏数据的范围将该数据写入高速缓存池对应的位置,并判断高速缓存池的水位是否超过第二阈值;以及响应于高速缓存池的水位超过第二阈值,根据高速缓存池的当前水位确定对应的下刷速度,并根据下刷速度将高速缓存池中的数据按照脏数据的范围从大到小下刷到低速存储池。本发明专利技术按照脏数据的范围对非热点数据进行下刷,在保证缓存池水位正常的情况下将热点数据保存在缓存池中。

【技术实现步骤摘要】
一种控制缓存池水位的方法、系统、设备及介质
本专利技术涉及分布式集群领域,更具体地,特别是指一种控制缓存池水位的方法、系统、计算机设备及可读介质。
技术介绍
在存储系统安全可靠、成本有限的情况下,利用有限的资源获取最大的存储容量、充分发挥系统应硬件的性能变得极为重要,而通过利用“数据分层存储”恰好可以实现此目标。数据分层存储一般采取分级存储池的策略,即用户高频访问的热点数据放在高速缓存池中,用户低频访问的非热点数据存放在性能低但是存储容量高的普通数据池中。高速缓存池一般以高性能、小容量但是价格相对较高的Nvme、SSD或Nvdim为存储介质,普通数据池一般采用速度慢、容量高但是价格相对便宜的HDD为存储介质。受限于产品成本及高速存储介质的存储容量,高速缓存池的存储容量也不会太高,但为了存储性能,高速缓存池需要尽可能多地存储热点数据,淘汰非热点数据。但是现有技术中暂无将高频数据保存在缓存池中并尽可能的淘汰非热点数据到慢速存储池中的方法,并且现有技术中缓存池的水位往往较高,无法发挥出正常的性能。
技术实现思路
有鉴于此,本专利技术实施例的目的在于提出一种控制缓存池水位的方法、系统、计算机设备及计算机可读存储介质,本专利技术根据在单位时间内的读写次数区分热点数据和非热点数据,并根据脏数据的范围对非热点数据进行划分,并在缓存池水位过高时进行下刷,从而实现将热点数据保存在缓存池中并保持缓存池的水位处于健康状态,提高了分布式集群的性能。基于上述目的,本专利技术实施例的一方面提供了一种控制缓存池水位的方法,包括如下步骤:部署分布式存储集群,并在所述分布式集群中分别创建高速缓存池和低速存储池;响应于接收到数据,判断所述数据在单位时间内的读写次数是否超过第一阈值;响应于所述数据在单位时间内的读写次数未超过第一阈值,根据所述数据的脏数据的范围将所述数据写入所述高速缓存池对应的位置,并判断所述高速缓存池的水位是否超过第二阈值;以及响应于所述高速缓存池的水位超过第二阈值,根据所述高速缓存池的当前水位确定对应的下刷速度,并根据所述下刷速度将所述高速缓存池中的数据按照脏数据的范围从大到小下刷到所述低速存储池。在一些实施方式中,所述根据所述数据的脏数据的范围将所述数据写入所述高速缓存池对应的位置包括:通过对象元数据记录所述数据的脏数据的范围,并将所述对象元数据插入到所述高速缓存池的LRU链表中。在一些实施方式中,所述将所述对象元数据插入到所述高速缓存池的LRU链表中包括:响应于所述数据的脏数据的范围大于等于第三阈值,将所述数据写入所述LRU链表的非热点区域的第一子区域;响应于所述数据的脏数据的范围小于第三阈值且大于等于第四阈值,将所述数据写入所述LRU链表的非热点区域的第二子区域;以及响应于所述数据的脏数据的范围小于第四阈值,将所述数据写入所述LRU链表的非热点区域的第三子区域。在一些实施方式中,方法还包括:响应于所述数据在单位时间内的读写次数超过第一阈值,将所述数据写入所述LRU链表的热点区域。在一些实施方式中,所述根据所述下刷速度将所述高速缓存池中的数据按照脏数据的范围从大到小下刷到所述低速存储池包括:将所述第一子区域的数据下刷到所述低速存储池;以及响应于所述第一子区域的数据下刷完成,将所述第二子区域的数据下刷到所述低速存储池并实时检测所述第一子区域是否存在新写入的数据。在一些实施方式中,所述根据所述高速缓存池的当前水位确定对应的下刷速度包括:响应于所述高速缓存池的水位超过第二阈值且不超过第五阈值,使用第一下刷速度和第一下刷间隔进行下刷;以及响应于所述高速缓存池的水位超过第五阈值,增大所述第一下刷速度并减小所述第一下刷间隔。在一些实施方式中,所述根据所述高速缓存池的当前水位确定对应的下刷速度包括:响应于存在所述分布式存储集群的性能数据不在预设范围内,增加所述第一下刷速度并减少所述第一下刷间隔。本专利技术实施例的另一方面,还提供了一种控制缓存池水位系统,包括:创建模块,配置用于部署分布式存储集群,并在所述分布式集群中分别创建高速缓存池和低速存储池;判断模块,配置用于响应于接收到数据,判断所述数据在单位时间内的读写次数是否超过第一阈值;写入模块,配置用于响应于所述数据在单位时间内的读写次数未超过第一阈值,根据所述数据的脏数据的范围将所述数据写入所述高速缓存池对应的位置,并判断所述高速缓存池的水位是否超过第二阈值;以及下刷模块,配置用于响应于所述高速缓存池的水位超过第二阈值,根据所述高速缓存池的当前水位确定对应的下刷速度,并根据所述下刷速度将所述高速缓存池中的数据按照脏数据的范围从大到小下刷到所述低速存储池。本专利技术实施例的又一方面,还提供了一种计算机设备,包括:至少一个处理器;以及存储器,所述存储器存储有可在所述处理器上运行的计算机指令,所述指令由所述处理器执行时实现如上方法的步骤。本专利技术实施例的再一方面,还提供了一种计算机可读存储介质,计算机可读存储介质存储有被处理器执行时实现如上方法步骤的计算机程序。本专利技术具有以下有益技术效果:本专利技术根据在单位时间内的读写次数区分热点数据和非热点数据,并根据脏数据的范围对非热点数据进行划分,并在缓存池水位过高时进行下刷,从而实现将热点数据保存在缓存池中并保持缓存池的水位处于健康状态,提高了分布式集群的性能。附图说明为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的实施例。图1为本专利技术提供的控制缓存池水位的方法的实施例的示意图;图2为本专利技术提供的控制缓存池水位的计算机设备的实施例的硬件结构示意图。具体实施方式为使本专利技术的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本专利技术实施例进一步详细说明。需要说明的是,本专利技术实施例中所有使用“第一”和“第二”的表述均是为了区分两个相同名称非相同的实体或者非相同的参量,可见“第一”“第二”仅为了表述的方便,不应理解为对本专利技术实施例的限定,后续实施例对此不再一一说明。基于上述目的,本专利技术实施例的第一个方面,提出了一种控制缓存池水位的方法的实施例。图1示出的是本专利技术提供的控制缓存池水位的方法的实施例的示意图。如图1所示,本专利技术实施例包括如下步骤:S1、部署分布式存储集群,并在分布式集群中分别创建高速缓存池和低速存储池;S2、响应于接收到数据,判断数据在单位时间内的读写次数是否超过第一阈值;S3、响应于数据在单位时间内的读写次数未超过第一阈值,根据数据的脏数据的范围将所述数据写入高速缓存池对应的位置,并判断高速缓存池的水位是否超过第二阈值;以及S4、响应于高速缓存池的水位超过第二阈值,根据高速缓存池的当前水位确定对应的下刷速度,并根据下刷速度将高速缓存池中的数据按照脏数据的范围从大到小本文档来自技高网...

【技术保护点】
1.一种控制缓存池水位的方法,其特征在于,包括以下步骤:/n部署分布式存储集群,并在所述分布式集群中分别创建高速缓存池和低速存储池;/n响应于接收到数据,判断所述数据在单位时间内的读写次数是否超过第一阈值;/n响应于所述数据在单位时间内的读写次数未超过第一阈值,根据所述数据的脏数据的范围将所述数据写入所述高速缓存池对应的位置,并判断所述高速缓存池的水位是否超过第二阈值;以及/n响应于所述高速缓存池的水位超过第二阈值,根据所述高速缓存池的当前水位确定对应的下刷速度,并根据所述下刷速度将所述高速缓存池中的数据按照脏数据的范围从大到小下刷到所述低速存储池。/n

【技术特征摘要】
1.一种控制缓存池水位的方法,其特征在于,包括以下步骤:
部署分布式存储集群,并在所述分布式集群中分别创建高速缓存池和低速存储池;
响应于接收到数据,判断所述数据在单位时间内的读写次数是否超过第一阈值;
响应于所述数据在单位时间内的读写次数未超过第一阈值,根据所述数据的脏数据的范围将所述数据写入所述高速缓存池对应的位置,并判断所述高速缓存池的水位是否超过第二阈值;以及
响应于所述高速缓存池的水位超过第二阈值,根据所述高速缓存池的当前水位确定对应的下刷速度,并根据所述下刷速度将所述高速缓存池中的数据按照脏数据的范围从大到小下刷到所述低速存储池。


2.根据权利要求1所述的方法,其特征在于,所述根据所述数据的脏数据的范围将所述数据写入所述高速缓存池对应的位置包括:
通过对象元数据记录所述数据的脏数据的范围,并将所述对象元数据插入到所述高速缓存池的LRU链表中。


3.根据权利要求2所述的方法,其特征在于,所述将所述对象元数据插入到所述高速缓存池的LRU链表中包括:
响应于所述数据的脏数据的范围大于等于第三阈值,将所述数据写入所述LRU链表的非热点区域的第一子区域;
响应于所述数据的脏数据的范围小于第三阈值且大于等于第四阈值,将所述数据写入所述LRU链表的非热点区域的第二子区域;以及
响应于所述数据的脏数据的范围小于第四阈值,将所述数据写入所述LRU链表的非热点区域的第三子区域。


4.根据权利要求2所述的方法,其特征在于,还包括:
响应于所述数据在单位时间内的读写次数超过第一阈值,将所述数据写入所述LRU链表的热点区域。


5.根据权利要求3所述的方法,其特征在于,所述根据所述下刷速度将所述高速缓存池中的数据按照脏数据的范围从大到小下刷到所述低速存储池包括:
将所述第一子区域的数据下刷到所述低速存储池;以及
响应于所述第一子区域的数据下...

【专利技术属性】
技术研发人员:李吉龙
申请(专利权)人:苏州浪潮智能科技有限公司
类型:发明
国别省市:江苏;32

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1