[發明專利]一種小文件聚合存儲處理方法有效
| 申請號: | 201710355383.8 | 申請日: | 2017-05-19 |
| 公開(公告)號: | CN107168651B | 公開(公告)日: | 2020-09-25 |
| 發明(設計)人: | 張書揚 | 申請(專利權)人: | 蘇州浪潮智能科技有限公司 |
| 主分類號: | G06F3/06 | 分類號: | G06F3/06 |
| 代理公司: | 濟南舜源專利事務所有限公司 37205 | 代理人: | 張亮 |
| 地址: | 215100 江蘇省蘇州市吳*** | 國省代碼: | 江蘇;32 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 文件 聚合 存儲 處理 方法 | ||
1.一種小文件聚合存儲處理方法,其特征在于,方法包括:
S1:在緩存中設置信息清單,信息清單用于記錄小文件的ino和大小信息;
S2:小文件寫入聚合對象的緩存中,將小文件的ino信息記錄到信息清單中;
S3:當聚合對象緩存達到刷新條件時,從信息清單中取出小文件的ino記錄到數組中;
S4:所有小文件的ino記錄到數組中后,將數組插入到聚合對象的預設位置;依據數組記錄的小文件ino次序,提取數組中的小文件ino,數組中儲存的小文件ino對應在聚合對象儲存有該ino對應的小文件時,數組中的該小文件ino置有;
數組中儲存的小文件ino對應在聚合對象中未儲存該ino對應的小文件時,數組中的該小文件ino置無;
從聚合對象中依次提取每個小文件,并將各小文件的大小進行累加;
累加完成后,當數組中置有的小文件數量超過數組總位數的一半時,將該聚合對象設置為1;
當數組中置有的小文件數量少于數組總位數的一半時,將該聚合對象設置為0。
2.根據權利要求1所述的小文件聚合存儲處理方法,其特征在于,
當聚合文件緩存達到刷新條件時,設置對象頭位圖信息。
3.根據權利要求2所述的小文件聚合存儲處理方法,其特征在于,
對象頭位圖信息的位圖大小為128B,共計1024位,位圖中每一位對應對象中4KB存儲空間。
4.根據權利要求1所述的小文件聚合存儲處理方法,其特征在于,
在進行緩存掃描時,獲取每個聚合對象中位圖信息;
對每個設置為0的聚合對象進行小文件處理,對聚合對象的數組依次讀取數組中的小文件的ino,通過小文件的ino獲取小文件在聚合對象中的位置信息,并依據小文件的ino查找目標小文件;
當依據小文件的ino未查找到目標小文件時,將數組中小文件的ino刪除,同時釋放緩存空間;
對聚合對象緩存重新進行儲存量計算。
5.根據權利要求1所述的小文件聚合存儲處理方法,其特征在于,設置聚合對象的容量,將聚合對象的結構設置為對象頭儲存區和數據儲存區;對象頭儲存區儲存數組,數組儲存當前聚合對象所存儲的所有小文件的ino和小文件在聚合對象中的位圖信息;
數據儲存區儲存小文件。
6.根據權利要求1所述的小文件聚合存儲處理方法,其特征在于,
啟動聚合對象緩存刷新條件包括:當聚合對象緩存使用率高于閾值時,啟動聚合對象緩存清理任務,對聚合對象緩存進行清理。
7.根據權利要求1所述的小文件聚合存儲處理方法,其特征在于,
讀取小文件時,將聚合對象移到緩存中,依次讀取聚合對象中的小文件的ino,通過小文件的ino獲取小文件在聚合對象中的位置信息,并依據小文件的ino查找目標小文件,讀取目標小文件。
8.根據權利要求1所述的小文件聚合存儲處理方法,其特征在于,
數組大小為8KB,類型為uint64_t,共包含1024個元素,元素初始值為0。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于蘇州浪潮智能科技有限公司,未經蘇州浪潮智能科技有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201710355383.8/1.html,轉載請聲明來源鉆瓜專利網。





