[发明专利]一种scrub压力调整方法、装置和介质有效
申请号: | 202010821283.1 | 申请日: | 2020-08-14 |
公开(公告)号: | CN112000487B | 公开(公告)日: | 2022-07-08 |
发明(设计)人: | 李彦博;孟祥瑞 | 申请(专利权)人: | 浪潮电子信息产业股份有限公司 |
主分类号: | G06F9/52 | 分类号: | G06F9/52;G06F9/50 |
代理公司: | 北京集佳知识产权代理有限公司 11227 | 代理人: | 史翠 |
地址: | 250101 山东*** | 国省代码: | 山东;37 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 scrub 压力 调整 方法 装置 介质 | ||
本发明实施例公开了一种scrub压力调整方法、装置和介质,获取集群的进程压力;依据集群的进程压力以及scrub任务的执行条件,触发scrub状态机,此时系统会自动对scrub任务进行加锁操作,为了降低本次加锁操作占用的时长,可以根据集群的进程压力,调整scrub任务中执行本次扫描任务的对象个数;依据对象个数执行本次扫描任务。每完成一次扫描任务则根据集群的进程压力,调整scrub任务中执行本次扫描任务的对象个数,直至scrub任务包含的所有扫描任务全部完成则结束操作。根据进程压力自动调整当前所需扫描的对象个数,有效的降低了scrub任务对前端业务影响。
技术领域
本发明涉及分布式存储技术领域,特别是涉及一种scrub压力调整方法、装置和计算机可读存储介质。
背景技术
对于分布式存储集群,需要保障副本之间数据的一致性。集群运行过程中,由于各种原因可能会导致副本之间数据的不一致,数据一致性校验(scrub)为我们提供了感知副本间数据不一致的机制,scrub将扫描到的副本之间的数据进行比较,发现数据不一致时会呈现出来。
scrub操作在执行时需要进行加pg锁的处理,而集群的前端业务的执行也需要加pg锁,scrub操作和前端业务由于加pg锁的关系,属于互斥操作,当存在大量scrub触发的时候,会严重影响集群的前端业务。
可见,如何降低scrub任务对前端业务影响,是本领域技术人员需要解决的问题。
发明内容
本发明实施例的目的是提供一种一种scrub压力调整方法、装置和计算机可读存储介质,可以降低scrub任务对前端业务影响。
为解决上述技术问题,本发明实施例提供一种scrub压力调整方法,包括:
获取集群的进程压力;
依据所述集群的进程压力以及scrub任务的执行条件,触发scrub状态机;
根据所述集群的进程压力,调整所述scrub任务中执行本次扫描任务的对象个数;
依据所述对象个数执行本次扫描任务,每完成一次扫描任务则根据所述集群的进程压力,调整所述scrub任务中执行本次扫描任务的对象个数,直至所述scrub任务包含的所有扫描任务全部完成,则结束操作。
可选地,所述依据所述集群的进程压力以及scrub任务的执行条件,触发scrub状态机包括:
当PG处于任务执行状态并且当前时间满足scrub任务的执行时间时,判断所述集群的进程压力是否属于预设高压力范围;
当所述集群的进程压力不属于预设高压力范围,则触发scrub状态机;
当所述集群的进程压力属于预设高压力范围,则等待所述scrub任务达到截止时间时则触发scrub状态机。
可选地,在所述依据所述对象个数执行本次扫描任务之后还包括:
判断所述集群的进程压力是否属于预设高压力范围;
当所述集群的进程压力属于预设高压力范围时,则等待预设时间后再执行所述根据所述集群的进程压力,调整所述scrub任务中执行本次扫描任务的对象个数的步骤。
可选地,所述根据所述集群的进程压力,调整所述scrub任务中执行本次扫描任务的对象个数包括:
从预先建立的对应关系列表中查找与所述集群的进程压力相匹配的对象个数,并将所述对象个数作为所述scrub任务中执行本次扫描任务的对象个数;其中,所述对应关系列表中记载了不同进程压力范围与对象个数的对应关系。
可选地,在所述依据所述对象个数执行本次扫描任务之后还包括:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于浪潮电子信息产业股份有限公司,未经浪潮电子信息产业股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010821283.1/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种备电模块及服务器电源
- 下一篇:一种用于服装染料配比使用的防外溢混合装置