[發明專利]一種基于位數組的臟數據下刷方法、裝置及設備在審
| 申請號: | 202010680365.9 | 申請日: | 2020-07-15 |
| 公開(公告)號: | CN111880729A | 公開(公告)日: | 2020-11-03 |
| 發明(設計)人: | 孔祥斐 | 申請(專利權)人: | 北京浪潮數據技術有限公司 |
| 主分類號: | G06F3/06 | 分類號: | G06F3/06 |
| 代理公司: | 北京集佳知識產權代理有限公司 11227 | 代理人: | 張春輝 |
| 地址: | 100085 北京*** | 國省代碼: | 北京;11 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 基于 數組 數據 方法 裝置 設備 | ||
本申請公開了一種基于位數組的臟數據下刷方法,首先獲取位數組,該位數組中的每一位用于表示存儲系統中相應的卷是否待執行臟數據下刷操作,然后根據位數組的置1位進行臟數據下刷。在查找置1位的過程中,為避免逐個遍歷查找置1位,該方法對位數組進行分層,將位數組的全部位存儲在第一層,當且僅當當前層中連續的預設數量的位均為0時,上層相應的位才為0,因此,在查找置1位的時候,能夠通過上層快速定位置1位所在的區間,顯著提升查找速度,提高存儲系統中的臟數據下刷效率。此外,本申請還提供了一種基于位數組的臟數據下刷裝置、設備及可讀存儲介質,其技術效果與上述方法的技術效果相對應。
技術領域
本申請涉及計算機技術領域,特別涉及一種基于位數組的臟數據下刷方法、裝置、設備及可讀存儲介質。
背景技術
在云計算時代,海量數據需要存儲,對存儲的可靠性和性能要求也越來越高。存儲系統中經常需要用數組存儲大量的數據,為了節省內存空間采用位數組來存儲相關信息,例如利用位數組記錄存儲系統中各個卷是否待執行臟數據下刷。
位數組的容量經常可以達到數萬個或者更多,位數組在初始化時將全部位置為0,如果某個卷需要執行臟數據下刷,則將位數組中相應的位置1。這樣可能會出現一種情形:兩個置1位中間有大量的置0的位。舉例說明,位數組A是用來記錄需要執行下刷操作的卷,假如存儲支持的卷最多是32768個,那么位數組A的大小也是32768個位(從右到左依次是從第0位到第32767位,共32768個位),創建位數組A時這32678個位全部初始化0,當id是0的卷需要執行下刷操作時需要把位數組A的最右邊的第0位置為1,當id是32767的卷需要執行下刷操作時需要把位數組最左邊的位置為1。
因此,執行臟數據下刷的線程經常需要查找當前置1位的下一個置1位,當前的查找方案為:遍歷位數組A以尋找需要下刷臟數據的卷,即位數組A中置1位時。由于位數組A中只有第0位和第32767位置為1,因此如果采用上述遍歷查找方案,在找到第0位后需要再查找32767次才能找到下一個置為1的位,查找速度非常慢,導致臟數據下刷效率低下。
發明內容
本申請的目的是提供一種基于位數組的臟數據下刷方法、裝置、設備及可讀存儲介質,用以解決當前在位數組中查找置1位的速度較慢,導致臟數據下刷效率低下的問題。其具體方案如下:
第一方面,本申請提供了一種基于位數組的臟數據下刷方法,包括:
S1、獲取位數組,所述位數組中的每一位用于表示存儲系統中相應的卷是否待執行臟數據下刷操作,當位被置1時表示相應的卷待執行臟數據下刷操作;
S2、對所述位數組進行分層,根據當前層中相鄰的預設數量的位生成上一層的一位,當且僅當當前層中相鄰的預設數量的位均為0時,所述上一層的一位為0;
S3、根據已經完成臟數據下刷操作的卷,確定位于所述位數組第一層的當前置1位;
S4、在當前層中,確定與所述當前置1位對應的目標置1位,判斷除所述目標置1位之外是否存在其他置1位,若存在,則進入S5;否則進入S7;
S5、確定與目標置1位最近的置1位,判斷該置1位是否存在下一層,若存在,則將下一層作為當前層,并進入S6;否則將所述與目標置1位最近的置1位作為查找結果;
S6、在當前層中,判斷是否存在置1位,若存在,則進入S5;
S7、判斷所述目標置1位是否存在上一層,若存在,則將上一層作為當前層,進入S4;否則確定查找結果為空;
S8、根據查找結果確定待執行臟數據下刷操作的卷,并對該卷進行臟數據下刷。
優選的,所述對所述位數組進行分層,根據當前層中相鄰的預設數量的位生成上一層的一位,包括:
對所述位數組進行分層,根據當前層中相鄰的32個位生成上一層的一位。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于北京浪潮數據技術有限公司,未經北京浪潮數據技術有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202010680365.9/2.html,轉載請聲明來源鉆瓜專利網。
- 數據顯示系統、數據中繼設備、數據中繼方法、數據系統、接收設備和數據讀取方法
- 數據記錄方法、數據記錄裝置、數據記錄媒體、數據重播方法和數據重播裝置
- 數據發送方法、數據發送系統、數據發送裝置以及數據結構
- 數據顯示系統、數據中繼設備、數據中繼方法及數據系統
- 數據嵌入裝置、數據嵌入方法、數據提取裝置及數據提取方法
- 數據管理裝置、數據編輯裝置、數據閱覽裝置、數據管理方法、數據編輯方法以及數據閱覽方法
- 數據發送和數據接收設備、數據發送和數據接收方法
- 數據發送裝置、數據接收裝置、數據收發系統、數據發送方法、數據接收方法和數據收發方法
- 數據發送方法、數據再現方法、數據發送裝置及數據再現裝置
- 數據發送方法、數據再現方法、數據發送裝置及數據再現裝置





