[發明專利]一種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.szxzyx.cn/pat/books/202010821283.1/2.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:一種備電模塊及服務器電源
- 下一篇:一種用于服裝染料配比使用的防外溢混合裝置





