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也很繁忙,因此错峰操作可能并不适用。另外,在将缓存数据写入硬盘时,会将一些不需要写入硬盘中的缓存数据写入硬盘,浪费写入时间,挤占了应当被写入硬盘中的缓存数据的时间。
技术实现思路
鉴于以上内容,有必要提出一种后台写盘流控方法、装置、电子设备及存储介质,能够在提高将缓存中的数据写入到硬盘中的效率、降低数据丢失风险的同时,避免对正常输入输出业务性能造成明显冲击,具有很好的流控效果写入。本专利技术的第一方面提供一种后台写盘流控方法,所述方法包括:当接收到用户数据的存储命令时,将所述用户数据写入到配置 ...
【技术保护点】
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
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。