[發明專利]一種文件系統緩存增量刷新方法及系統在審
申請號: | 201710363593.1 | 申請日: | 2017-05-22 |
公開(公告)號: | CN107193947A | 公開(公告)日: | 2017-09-22 |
發明(設計)人: | 李文鵬 | 申請(專利權)人: | 鄭州云海信息技術有限公司 |
主分類號: | G06F17/30 | 分類號: | G06F17/30 |
代理公司: | 北京集佳知識產權代理有限公司11227 | 代理人: | 古利蘭,王寶筠 |
地址: | 450018 河南省鄭州市*** | 國省代碼: | 河南;41 |
權利要求書: | 查看更多 | 說明書: | 查看更多 |
摘要: | |||
搜索關鍵詞: | 一種 文件系統 緩存 增量 刷新 方法 系統 | ||
技術領域
本發明涉及數據處理技術領域,更具體地說,涉及一種文件系統緩存增量刷新方法及系統。
背景技術
在海量存儲源文件的場景中,源文件的頻繁創建、讀寫、下盤引出了很多問題,有很多公司針對這種場景將源文件聚合成一個聚合文件。當創建源文件時,為提高寫操作效率,采用寫緩存模式即寫入文件系統緩存即認為數據寫成功,當緩存寫滿時數據落盤。
但是在文件已存入緩存,但緩存尚未存滿情況下,節點異常等情況下會導致使數據丟失。為讓緩存中源文件安全落盤存儲,通常采用定時刷新方案,將整個緩存全部數據刷新落盤。伴隨著用戶頻繁的寫入和定時刷新,落盤的緩存數據大小并不相等,由此為聚合文件的統一操作和小文件的管理會帶來許多麻煩。因此,如何實現緩存安全、高效、快速的刷新是一項亟待解決的問題。
發明內容
有鑒于此,本發明的目的在于提供一種文件系統緩存增量刷新方法,能夠實現緩存安全、高效、快速的刷新。
為實現上述目的,本發明提供如下技術方案:
一種文件系統緩存增量刷新方法,包括:
讀取文件系統緩存記錄信息,所述緩存記錄信息中包含緩存數據大小和緩存偏移量;
判斷所述緩存數據大小是否為0且所述緩存數據量大小是否等于所述緩存數據偏移量;
當所述緩存數據大小不為0且不等于所述緩存數據偏移量時,判斷所述緩存數據大小是否大于所述緩存偏移量;
當所述緩存數據大小大于所述緩存偏移量時,將所述緩存數據偏移量與所述緩存數據大小之間的緩存數據增量刷新落盤。
優選地,所述當所述緩存數據大小大于所述緩存偏移量時,將所述緩存數據偏移量與所述緩存數據大小之間的緩存數據增量刷新落盤后,還包括:
更新所述文件系統緩存數據記錄信息。
優選地,所述讀取文件系統緩存記錄信息,所述緩存記錄信息中包含緩存數據大小和緩存偏移量后,還包括:
判斷所述文件系統緩存數據記錄信息距離上次更新的時間是否大于預設閾值;
當所述文件系統緩存數據記錄信息距離上次更新的時間大于預設閾值時,判斷所述緩存數據大小是否為0且所述緩存數據量大小是否等于所述緩存數據偏移量。
優選地,當所述緩存數據大小小于所述緩存偏移量時,記錄失敗信息。
優選地,當所述緩存數據大小等于0或所述緩存偏移量等于所述緩存數據大小時,再次讀取文件系統緩存記錄信息。
一種文件系統緩存增量刷新系統,包括:
讀取模塊,用于讀取文件系統緩存記錄信息,所述緩存記錄信息中包含緩存數據大小和緩存偏移量;
第一判斷模塊,用于判斷所述緩存數據大小是否為0且所述緩存數據量大小是否等于所述緩存數據偏移量;
第二判斷模塊,用于當所述緩存數據大小不為0且不等于所述緩存數據偏移量時,判斷所述緩存數據大小是否大于所述緩存偏移量;
處理模塊,用于當所述緩存數據大小大于所述緩存偏移量時,將所述緩存數據偏移量與所述緩存數據大小之間的緩存數據增量刷新落盤。
優選地,所述系統還包括:
更新模塊,用于更新所述文件系統緩存數據記錄信息。
優選地,所述系統還包括:
第三判斷模塊,用于判斷所述文件系統緩存數據記錄信息距離上次更新的時間是否大于預設閾值;
當所述文件系統緩存數據記錄信息距離上次更新的時間大于預設閾值時,所述第一判斷模塊判斷所述緩存數據大小是否為0且所述緩存數據量大小是否等于所述緩存數據偏移量。
優選地,當所述緩存數據大小小于所述緩存偏移量時,所述系統還包括:
記錄模塊,用于記錄失敗信息。
優選地,所述系統當所述緩存數據大小等于0或所述緩存偏移量等于所述緩存數據大小時,所述讀取模塊再次讀取文件系統緩存記錄信息。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于鄭州云海信息技術有限公司,未經鄭州云海信息技術有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201710363593.1/2.html,轉載請聲明來源鉆瓜專利網。