后台写盘流控方法、装置、电子设备及存储介质制造方法及图纸

技术编号:19341722 阅读:32 留言:0更新日期:2018-11-07 13:44
一种后台写盘流控方法,包括:当接收到用户数据的存储命令时,将用户数据写入到配置的缓存中;当侦测到缓存中的缓存信息满足第一预设条件时,获取写入周期内的当前统计周期对应的流控阈值;基于当前统计周期对应的流控阈值,将缓存中具有第一标识的用户数据写入到硬盘中;当侦测到缓存中的缓存信息没有满足第一预设条件但满足第二预设条件时,对缓存中具有第二标识的用户数据进行清除。本发明专利技术还提供一种后台写盘流控装置、电子设备及存储介质。本发明专利技术在提高数据写入硬盘的效率、降低数据丢失风险的同时,能够避免对正常输入输出业务性能造成明显冲击;节省缓存的存储空间,提高数据写入缓存的效率。

Background writing disk flow control method, device, electronic device and storage medium

A background write disk flow control method includes: when receiving the storage command of user data, the user data is written into the configured cache; when the cache information in the cache meets the first preset condition, the flow control threshold corresponding to the current statistical period in the write cycle is obtained; and based on the corresponding current statistical period. Flow control threshold, which writes the user data with the first identifier in the cache to the hard disk; when it detects that the cache information in the cache does not meet the first default condition but meets the second default condition, it clears the user data with the second identifier in the cache. The invention also provides a backstage writing disc flow control device, an electronic device and a storage medium. The invention improves the efficiency of data writing to hard disk, reduces the risk of data loss, avoids obvious impact on normal input and output business performance, saves the storage space of caching, and improves the efficiency of data writing to caching.

【技术实现步骤摘要】
后台写盘流控方法、装置、电子设备及存储介质
本专利技术涉及计算机
,具体涉及一种后台写盘流控方法、装置、电子设备及存储介质。
技术介绍
缓存就是数据交换的缓冲区(也称作“Cache”),硬盘接到写入数据的指令之后,并不会马上将数据写入到盘片上,而是先暂时存储在缓存里,然后发送一个“数据已写入”的信号给系统,这时系统就会认为数据已经写入,并继续执行下面的工作。而缓存往往使用的是RAM(断电即掉的非永久储存),所以在缓存中的数据用完后还是会将数据存储到硬盘等存储器里永久存储,这种操作称为后台写盘。然而,在将缓存中的数据存储到硬盘等存储器的过程中,会产生大量的用户应用的输入输出(input/output,IO),如果此时正好是用户应用的IO高峰期,则会影响用户应用的响应时间,给用户带来不好的体验。传统的解决方法是采取错峰操作,即白天用户应用比较繁忙时,系统IO负载重,此时不进行将缓存中的数据存储到硬盘中的操作,而选择夜晚用户应用较少的时间段执行;但即使是夜晚用户应用的IO也很繁忙,因此错峰操作可能并不适用。另外,在将缓存数据写入硬盘时,会将一些不需要写入硬盘中的缓存数据写入硬盘,浪费写入时间,挤占了应当被写入硬盘中的缓存数据的时间。
技术实现思路
鉴于以上内容,有必要提出一种后台写盘流控方法、装置、电子设备及存储介质,能够在提高将缓存中的数据写入到硬盘中的效率、降低数据丢失风险的同时,避免对正常输入输出业务性能造成明显冲击,具有很好的流控效果写入。本专利技术的第一方面提供一种后台写盘流控方法,所述方法包括:当接收到用户数据的存储命令时,将所述用户数据写入到配置的缓存中;当侦测到所述缓存中的缓存信息满足第一预设条件时,获取写入周期内的当前统计周期对应的流控阈值;基于所述当前统计周期对应的流控阈值,将所述缓存中数据标识为第一标识对应的用户数据写入到硬盘中;当侦测到所述缓存中的缓存信息没有满足所述第一预设条件但满足第二预设条件时,对所述缓存中数据标识为第二标识对应的用户数据进行清除。优选的,所述获取写入周期内的当前统计周期对应的流控阈值包括:判断当前统计周期是否为第一个统计周期;当确定所述当前统计周期为第一个统计周期时,将预设流控阈值确定为所述当前统计周期对应的流控阈值;当确定所述当前统计周期不为第一个统计周期时,获取上一个统计周期内用户应用的IO负载,根据所述上一个统计周期内用户应用的IO负载,确定所述当前统计周期对应的流控阈值。优选的,根据所述上一个统计周期内用户应用的IO负载,确定所述当前统计周期对应的流控阈值包括:获取上一个统计周期内用户应用的每一个IO的数据块大小,计算所述上一个统计周期内的IO的平均数据块大小;获取所述上一个统计周期内的每个数据块的传输时延,计算所述上一个统计周期内的IO的平均数据块时延;获取预先设置的IO的数据块大小的基准值及对应的数据块时延的基准值;根据所述上一个统计周期内的所述IO的平均数据块大小、平均数据块时延、数据块大小的基准值、对应的数据块时延的基准值,计算所述上一个统计周期内的IO负载强度;根据所述上一个统计周期内的IO负载强度,利用预先训练好的负载分类模型确定所述上一个统计周期内的IO负载类别;根据上一个统计周期内的IO负载类别计算当前统计周期对应的流控阈值。优选的,所述根据所述上一个统计周期内的所述IO的平均数据块大小、平均数据块时延、数据块大小的基准值、对应的数据块时延的基准值,计算所述上一个统计周期内的IO负载强度的计算公式为:其中,X为上述上一个统计周期内的所述IO的平均数据块大小,Y为所述平均数据块时延,M为所述数据块大小的基准值,N为所述对应的数据块时延的基准值。优选的,所述根据上一个统计周期内的IO负载类别计算当前统计周期对应的流控阈值包括:当所述上一个统计周期内的IO负载类别为高负载类别时,将所述上一个统计周期对应的流控阈值降低第一预设幅度,得到当前统计周期对应的流控阈值;当所述上一个统计周期内的IO负载类别为低负载类别时,将所述上一个统计周期对应的流控阈值提高第二预设幅度,得到下一个统计周期对应的流控阈值;当所述上一个统计周期内的IO负载类别为正常负载类别时,将所述上一个统计周期对应的流控阈值作为当前统计周期对应的流控阈值。优选的,所述侦测所述缓存中的缓存信息是否满足第一预设条件包括以下一种或多种的组合:侦测所述缓存中的剩余存储空间是否小于预设空间阈值;侦测所述缓存中的用户数据的总量是否大于预设限制阈值。优选的,所述侦测所述缓存中的缓存信息是否满足第二预设条件为:侦测所述缓存中的用户数据的缓存时间是否早于预设时间阈值。本专利技术的第二方面提供一种后台写盘流控装置,所述装置包括:缓存写入模块,用于当接收到用户数据的存储命令时,将所述用户数据写入到配置的缓存中;第一侦测模块,用于侦测所述缓存中的缓存信息是否满足第一预设条件;流控获取模块,用于当所述第一侦测模块侦测到所述缓存中的缓存信息满足第一预设条件时,获取写入周期内的当前统计周期对应的流控阈值;硬盘写入模块,用于基于所述当前统计周期对应的流控阈值,将所述缓存中数据标识为第一标识对应的用户数据写入到硬盘中;第二侦测模块,用于当所述第一侦测模块侦测到所述缓存中的缓存信息没有满足第一预设条件时,侦测所述缓存中的缓存信息是否满足第二预设条件;缓存清除模块,用于当所述第二侦测模块侦测到所述缓存中的缓存信息满足所述第二预设条件时,对所述缓存中数据标识为第二标识对应的用户数据进行清除。本专利技术的第三方面提供一种电子设备,所述电子设备包括处理器和存储器,所述处理器用于执行所述存储器中存储的计算机程序时实现所述后台写盘流控方法。本专利技术的第四方面提供一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现所述后台写盘流控方法。本专利技术所述的后台写盘流控方法、装置、电子设备及存储介质,将用户数据写入到配置的缓存中,通过侦测所述缓存中的缓存信息满足第一预设条件时,能够根据不同的流控阈值对当前统计周期内的所述缓存中数据标识为第一标识对应的用户数据写入到所指向的硬盘中,在提高用户数据写入硬盘的效率、降低数据丢失风险的同时,能够避免对正常输入输出业务性能造成明显冲击,具有很好的流控效果;另外,在侦测到所述缓存中的缓存信息不满足第一预设条件但满足第二预设条件时,将用户数据从缓存中清除,可以节省缓存的存储空间,提高用户数据写入缓存中的效率。附图说明为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。图1是本专利技术实施例一提供的后台写盘流控方法的流程图。图2是本专利技术实施例二提供的根据上一个统计周期内用户应用的IO负载确定当前统计周期对应的流控阈值的方法的流程图。图3是本专利技术实施例三提供的后台写盘流控装置的功能模块图。图4是本专利技术实施例四提供的电子设备的示意图。如下具体实施方式将结合上述附图进一步说明本专利技术。具体实施方式为了能够更清楚地理解本专利技术的上述目的、特征和优点,下面结合附图和具体实施例对本专利技术进本文档来自技高网...

【技术保护点】
1.一种后台写盘流控方法,其特征在于,所述方法包括:当接收到用户数据的存储命令时,将所述用户数据写入到配置的缓存中;当侦测到所述缓存中的缓存信息满足第一预设条件时,获取写入周期内的当前统计周期对应的流控阈值;基于所述当前统计周期对应的流控阈值,将所述缓存中数据标识为第一标识对应的用户数据写入到硬盘中;当侦测到所述缓存中的缓存信息没有满足所述第一预设条件但满足第二预设条件时,对所述缓存中数据标识为第二标识对应的用户数据进行清除。

【技术特征摘要】
1.一种后台写盘流控方法,其特征在于,所述方法包括:当接收到用户数据的存储命令时,将所述用户数据写入到配置的缓存中;当侦测到所述缓存中的缓存信息满足第一预设条件时,获取写入周期内的当前统计周期对应的流控阈值;基于所述当前统计周期对应的流控阈值,将所述缓存中数据标识为第一标识对应的用户数据写入到硬盘中;当侦测到所述缓存中的缓存信息没有满足所述第一预设条件但满足第二预设条件时,对所述缓存中数据标识为第二标识对应的用户数据进行清除。2.如权利要求1所述的方法,其特征在于,所述获取写入周期内的当前统计周期对应的流控阈值包括:判断当前统计周期是否为第一个统计周期;当确定所述当前统计周期为第一个统计周期时,将预设流控阈值确定为所述当前统计周期对应的流控阈值;当确定所述当前统计周期不为第一个统计周期时,获取上一个统计周期内用户应用的IO负载,根据所述上一个统计周期内用户应用的IO负载,确定所述当前统计周期对应的流控阈值。3.如权利要求2所述的方法,其特征在于,根据所述上一个统计周期内用户应用的IO负载,确定所述当前统计周期对应的流控阈值包括:获取上一个统计周期内用户应用的每一个IO的数据块大小,计算所述上一个统计周期内的IO的平均数据块大小;获取所述上一个统计周期内的每个数据块的传输时延,计算所述上一个统计周期内的IO的平均数据块时延;获取预先设置的IO的数据块大小的基准值及对应的数据块时延的基准值;根据所述上一个统计周期内的所述IO的平均数据块大小、平均数据块时延、数据块大小的基准值、对应的数据块时延的基准值,计算所述上一个统计周期内的IO负载强度;根据所述上一个统计周期内的IO负载强度,利用预先训练好的负载分类模型确定所述上一个统计周期内的IO负载类别;根据上一个统计周期内的IO负载类别计算当前统计周期对应的流控阈值。4.如权利要求3所述的方法,其特征在于,所述根据所述上一个统计周期内的所述IO的平均数据块大小、平均数据块时延、数据块大小的基准值、对应的数据块时延的基准值,计算所述上一个统计周期内的IO负载强度的计算公式为:其中,X为上述上一个统计周期内的所述IO的平均数据块大小,Y为所述平均数据块时延,M为所述数据块大小的基准值,N为所述对应的数据块时延的基准值。5.如权利要求3或4所述的...

【专利技术属性】
技术研发人员:陈学伟
申请(专利权)人:平安科技深圳有限公司
类型:发明
国别省市:广东,44

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

1