一種基於動態副本策略的文件存儲系統及其存儲方法
2023-05-24 23:22:31 2
一種基於動態副本策略的文件存儲系統及其存儲方法
【專利摘要】本發明公開了一種基於動態副本策略的文件存儲系統,包含:文件熱度計算模塊,用於計算周期時間內存儲的各文件的熱度及周期時間內所有存儲文件的平均熱度;多個存儲模塊,用於存儲數據及訪問數據;分別與文件熱度計算模塊及多個存儲模塊連接的主控制模塊;所述的主控制模塊用於根據存儲文件的熱度動態調整存儲文件的副本數;與主控制模塊連接的編碼解碼模塊,用於根據存儲文件的副本數對符合編碼條件的存儲文件進行糾刪碼編碼。本發明還公開了一種文件存儲方法。本發明增加了高熱度的文件的完全副本數,提高了高熱度文件的訪問速度和負載均衡,低熱度文件減少了完全副本的個數,採用RS糾刪碼編碼後存儲提高了存儲的容錯能力和可靠性。
【專利說明】一種基於動態副本策略的文件存儲系統及其存儲方法
【技術領域】
[0001]本發明涉及文件存儲系統【技術領域】,具體是說一種根據文件被訪問的情況的不同來動態調整文件伺服器中的文件副本的個數及對文件進行糾刪碼編碼解碼的文件存儲系統及存儲方法。
【背景技術】
[0002]隨著大數據時代的到來,海量異構數據的存儲和應用給我們帶來了巨大的挑戰。雲存儲是通過分布式文件系統、網格計算和集群管理等技術,將大量的存儲設備構建成存儲資源池,共同對外提供數據存儲和管理服務。因為其具有很高的穩定性和高效性,雲存儲正在被越來越多的企業所應用。
[0003]目前,多數文件存儲系統採用的靜態完全副本冗餘機制來保證系統的高可靠性和高效性。然而,靜態完全副本策略是將每個文件複製多份副本,分別存儲在不同的數據節點上,這樣就造成存儲成本隨著副本數目的增加而線性增加,存在存儲效率低、負載均衡能力差等缺點,同時也會增加對副本的管理開銷,影響系統的可擴展性。
【發明內容】
[0004]本發明的目的在於提供一種基於動態副本策略的文件存儲系統及其存儲方法,增加了高熱度的文件的完全副本數,提高了高熱度文件的訪問速度和負載均衡,低熱度文件減少了完全副本的個數,採用舊糾刪碼編碼後存儲提高了存儲的容錯能力和可靠性,有效的節省了存儲空間。
[0005]為了達到上述目的,本發明通過以下技術方案實現:一種基於動態副本策略的文件存儲系統,其特點是,包含:
文件熱度計算模塊,用於計算周期時間內存儲的各文件的熱度及周期時間內所有存儲文件的平均熱度;
多個存儲模塊,用於存儲數據及訪問數據;
分別與文件熱度計算模塊及多個存儲模塊連接的主控制模塊;
所述的主控制模塊用於將存儲文件分塊存儲在多個存儲模塊,並記錄存儲文件的數據塊分配信息及文件的完全副本數,根據存儲文件的熱度動態調整存儲文件的副本數;
與主控制模塊連接的編碼解碼模塊,用於根據存儲文件的副本數對符合編碼條件的存儲文件進行糾刪碼編碼,形成編碼文件,以及訪問編碼文件時,對編碼文件進行解碼。
[0006]一種基於動態副本策略的文件存儲方法,其特點是,包含以下步驟:
步驟1、新存儲文件上傳至存儲系統時,主控制模塊將新存儲文件劃分為若干個數據塊,主控制模塊為每個數據塊產生砠個完全副本,並將所述的砠個完全副本存儲到不同的存儲模塊上;
步驟2、文件熱度計算模塊周期性的計算周期時間內存儲文件的熱度及周期時間內所有存儲文件的平均熱度,並將各存儲文件的熱度值及平均熱度值傳輸至主控制模塊;步驟3、主控制模塊根據各存儲文件的熱度值與平均熱度值的大小關係,確定存儲文件的熱度等級,並;
步驟4、主控制模塊對不同熱度等級的存儲文件確定不同的副本個數,
若存儲文件的熱度與平均熱度相當,則存儲文件的副本數為%
若存儲文件的熱度大於平均熱度,則存儲文件的副本數相應的增加,
若存儲文件的熱度小於平均熱度,則存儲文件的副本數相應的減少,
當存儲文件的副本數為1,該存儲文件的熱度增加時,則主控制模塊調用編碼解碼模塊的糾刪碼編碼方式進行存儲,對於副本數不為1的存儲文件採用多副本策略的方式進行存儲;
步驟5、系統每隔固定周期時間重複步驟2至步驟4。
[0007]所述的步驟1進一步包含主控制模塊記錄存儲文件的數據塊分配信息及存儲文件的副本個數。
[0008]較佳地,進一步包含當存儲文件的副本數不為1時,存儲文件被訪問時,主控制模塊根據存儲文件的數據塊分配信息及存儲文件的副本個數,從多個不同的存儲模塊上並行讀取存儲文件的數據。
[0009]較佳地,進一步包含當存儲文件的副本數為1時,存儲文件被訪問時,主控制模塊調用編碼解碼模塊對存儲文件進行解碼。
[0010]所述的步驟2中文件熱度計算模塊根據文件的大小及周期時間內存儲文件被訪問的次數來計算存儲文件的熱度。
[0011]所述的步驟2中存儲文件的熱度計算公式為:
【權利要求】
1.一種基於動態副本策略的文件存儲系統,其特徵在於,包含: 文件熱度計算模塊(1),用於計算周期時間內存儲的各文件的熱度及周期時間內所有存儲文件的平均熱度; 多個存儲模塊(2),用於存儲數據及訪問數據; 分別與文件熱度計算模塊(1)及多個存儲模塊(2)連接的主控制模塊(3); 所述的主控制模塊(3)用於將存儲文件分塊存儲在多個存儲模塊(2),並記錄存儲文件的數據塊分配信息及文件的完全副本數,根據存儲文件的熱度動態調整存儲文件的副本數; 與主控制模塊 (3)連接的編碼解碼模塊(4),用於根據存儲文件的副本數對符合編碼條件的存儲文件進行糾刪碼編碼,形成編碼文件,以及訪問編碼文件時,對編碼文件進行解碼。
2.一種基於動態副本策略的文件存儲方法,其特徵在於,包含以下步驟: 步驟1、新存儲文件上傳至存儲系統時,主控制模塊(3)將新存儲文件劃分為若干個數據塊,主控制模塊(3)為每個數據塊產生!!!個完全副本,並將所述的砠個完全副本存儲到不同的存儲模塊(2)上; 步驟2、文件熱度計算模塊(1)周期性的計算周期時間內存儲文件的熱度及周期時間內所有存儲文件的平均熱度,並將各存儲文件的熱度值及平均熱度值傳輸至主控制模塊(3); 步驟3、主控制模塊(3)根據各存儲文件的熱度值與平均熱度值的大小關係,確定存儲文件的熱度等級,並; 步驟4、主控制模塊(3)對不同熱度等級的存儲文件確定不同的副本個數, 若存儲文件的熱度與平均熱度相當,則存儲文件的副本數為III, 若存儲文件的熱度大於平均熱度,則存儲文件的副本數相應的增加, 若存儲文件的熱度小於平均熱度,則存儲文件的副本數相應的減少, 當存儲文件的副本數為1,該存儲文件的熱度增加時,則主控制模塊(3)調用編碼解碼模塊(4)的糾刪碼編碼方式進行存儲,對於副本數不為1的存儲文件採用多副本策略的方式進行存儲; 步驟5、系統每隔固定周期時間重複步驟2至步驟4。
3.如權利要求2所述的文件存儲方法,其特徵在於,所述的步驟1進一步包含主控制模塊(3)記錄存儲文件的數據塊分配信息及存儲文件的副本個數。
4.如權利要求3所述的文件存儲方法,其特徵在於,進一步包含當存儲文件的副本數不為1時,存儲文件被訪問時,主控制模塊(3)根據存儲文件的數據塊分配信息及存儲文件的副本個數,從多個不同的存儲模塊(2)上並行讀取存儲文件的數據。
5.如權利要求2所述的文件存儲方法,其特徵在於,進一步包含當存儲文件的副本數為1時,存儲文件被訪問時,主控制模塊(3)調用編碼解碼模塊(4)對存儲文件進行解碼。
6.如權利要求2所述的文件存儲方法,其特徵在於,所述的步驟2中文件熱度計算模塊(1)根據文件的大小及周期時間內存儲文件被訪問的次數來計算存儲文件的熱度。
7.如權利要求2所述的文件存儲方法,其特徵在於,所述的步驟2中存儲文件的熱度計算公式為:
8.如權利要求2所述的文件存儲方法,其特徵在於,所述的步驟2中周期時間為24小時。
9.如權利要求2所述的文件存儲方法,其特徵在於,所述的步驟4中糾刪碼編碼方式為尺3 (7, 12)方式。
【文檔編號】G06F17/30GK103838860SQ201410101119
【公開日】2014年6月4日 申請日期:2014年3月19日 優先權日:2014年3月19日
【發明者】王引娜 申請人:華存數據信息技術有限公司