[發明專利]一種空閑block查詢的方法及系統在審
| 申請號: | 201710897364.8 | 申請日: | 2017-09-28 |
| 公開(公告)號: | CN107656703A | 公開(公告)日: | 2018-02-02 |
| 發明(設計)人: | 張傳慶 | 申請(專利權)人: | 鄭州云海信息技術有限公司 |
| 主分類號: | G06F3/06 | 分類號: | G06F3/06 |
| 代理公司: | 北京集佳知識產權代理有限公司11227 | 代理人: | 羅滿 |
| 地址: | 450018 河南省鄭州市*** | 國省代碼: | 河南;41 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 空閑 block 查詢 方法 系統 | ||
技術領域
本申請涉及存儲系統領域,特別涉及一種空閑block查詢的方法、系統及計算機可讀存儲介質。
背景技術
現有技術中通過使用bitmap的方法來查詢存儲系統中的存儲容量是否分配,然而隨著存儲容量的增長,特別是PB、EB、ZB等存儲容量級別的存儲系統出現,僅使用bitmap來查詢容量已經相當困難。
以1TB硬盤、4KB的block(容量存儲單位)為例,總共由268435456(總容量/block容量=1024*1024*1024KB/4KB)個block組成。按照uint64,即一次查詢64個block為例,遍歷一次需要查詢4194304(總數/一次查詢個數=268435456/64)次,對于存儲系統來說太過繁瑣。同時,1TB容量的bitmap需要32MB(總數/8/1024/1024=268435456/8/1024/1024)的內存空間,而1PB(1PB=1024TB)存儲系統中,存儲bitmap需要的內存為1024*32MB=32GB,存儲系統難以一次將bitmap載入,更不用提EB、ZB等存儲容量級別的存儲系統了。
因此,如何快速查詢大存儲容量的存儲系統中的空閑block是本領域技術人員目前需要解決的技術問題。
發明內容
本申請的目的是提供一種空閑block查詢的方法、系統及計算機可讀存儲介質,該方法能夠快速查詢大存儲容量的存儲系統中的空閑block。
為解決上述技術問題,本申請提供一種空閑block查詢的方法,該方法包括:
判斷block信息隊列的狀態是否為空閑狀態;
若是,則將所述block信息隊列載入內存;
依次判斷載入內存的所述block信息隊列中的block信息是否為空閑block信息;其中,所述空閑block信息為對應的block處于空閑狀態時的表現信息;
若為空閑block信息,則確定所述空閑block信息對應的block為空閑block。
可選的,當所述block信息隊列中包括空閑數量時,還包括:
判斷接收到的指令為空閑block分配指令或繁忙block收回指令;
若所述指令為所述空閑block分配指令,則分配所述空閑block,并將所述空閑block對應的block信息修改為繁忙block信息;其中,所述繁忙block信息為對應的block處于繁忙狀態時的表現信息;
若所述指令為所述繁忙block收回指令,則收回所述繁忙block,并將所述繁忙block對應的block信息修改為所述空閑block信息;
將所述空閑數量更新為現有的所述空閑信息的數量。
可選的,在將所述block信息隊列載入內存之后,還包括:
判斷所述block信息隊列中的空閑數量是否小于閾值;
若是,則將新block信息隊列載入所述內存,并判斷所述空閑數量是否為零;
若所述空閑數量為零,則將所述block信息隊列從所述內存中移除。
本申請還提供一種空閑block查詢的系統,該系統包括:
第一判斷模塊,用于判斷block信息隊列的狀態是否為空閑狀態;
載入模塊,用于當所述block信息隊列的狀態為空閑狀態時,將所述block信息隊列載入內存;
第二判斷模塊,用于依次判斷載入內存的所述block信息隊列中的block信息是否為空閑block信息;其中,所述空閑block信息為對應的block處于空閑狀態時的表現信息;
確定模塊,用于當載入內存的所述block信息隊列中的block信息為所述空閑block信息時,確定所述空閑block信息對應的block為空閑block。
可選的,該系統還包括:
第三判斷模塊,用于判斷接收到的指令為空閑block分配指令或繁忙block收回指令;
第一分配修改模塊,用于當所述指令為所述空閑block分配指令時,分配所述空閑block,并將所述空閑block對應的block信息修改為繁忙block信息;其中,所述繁忙block信息為對應的block處于繁忙狀態時的表現信息;
第二分配修改模塊,用于當所述指令為所述繁忙block收回指令時,收回所述繁忙block,并將所述繁忙block對應的block信息修改為所述空閑block信息;
更新模塊,用于當所述block信息隊列中包括空閑數量時,將所述空閑數量更新為現有的所述空閑信息的數量。
可選的,所述載入模塊還包括:
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于鄭州云海信息技術有限公司,未經鄭州云海信息技術有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201710897364.8/2.html,轉載請聲明來源鉆瓜專利網。





