一種基于kdfs系統的文件備份方法與系統的制作方法
【技術領域】
[0001]本發明涉及文件備份領域,特別是涉及一種基于KDFS系統的文件備份方法與系統。
【背景技術】
[0002]在云存儲服務中,文件冗余備份是非常重要的組成部分。由于容量、擴容、數據安全、數據備份等方面的優勢,文件都是存儲在分布式文件系統中。KDFS為一種跨集群的分布式文件系統,如圖1所示,KDFS系統包括Hadoop分布式文件系統HDFS和FASTDFS輕量級分布式文件系統FastDFS。
[0003]用戶上傳文件后,分布式文件系統會將文件的多個備份分散存儲在集群內的多個服務器上,保證文件不會因為某個服務器宕機或磁盤損壞等故障導致文件丟失,在現有的分布式文件系統和云存儲服務中普遍采用冗余備份的方式保存文件。
[0004]然而,現有的文件備份機制都是基于集群的,開發者只能設置文件在單個集群中的備份數量,這就導致在KDFS中文件的備份數量過多,有些備份為非必要的,進行不必要的備份可能會對磁盤空間造成負擔。
【發明內容】
[0005]有鑒于此,本發明的主要目的在于提供一種基于KDFS系統的文件備份方法與系統,可以有針對地調整集群的備份數量進行文件備份。
[0006]為實現上述目的,本發明提供了一種基于KDFS系統的文件備份方法,包括:
[0007]步驟A:獲取用戶上傳文件;
[0008]步驟B:通過預設級別判定規則判定所述文件所屬的應用標識的級別;
[0009]步驟C:根據所述級別通過預設備份數量確定規則確定KDFS系統中各集群的目標備份數量;
[0010]步驟D:根據所述目標備份數量對所述各集群分別進行所述文件的備份。
[0011]優選地,通過預設級別判定規則判定所述文件所屬的應用標識的級別包括:
[0012]判斷所述文件所屬的應用標識是否存儲于優先級列表中,如果是,則確定所述文件所屬的應用標識為優先級別,否則將所有評級的應用標識對應的訪問參數由大到小進行排序,當所述應用標識對應的訪問參數在所述排序中位于前第一預設比例時,確定所述應用標識為第一級別,當在所述排序中位于前第一預設比例至前第二預設比例之間時,確定所述應用標識為第二級別,當在所述排序中位于前第二預設比例之后時,確定所述應用標識為第三級別。
[0013]優選地,所述訪問參數包括:
[0014]所述應用標識對應的訪問用戶數量與所述應用標識對應的訪問次數。
[0015]優選地,根據所述級別通過預設備份數量確定規則確定KDFS系統中各集群的目標備份數量包括:
[0016]當所述文件所屬的應用標識為優先級別時,根據指令確定KDFS系統中各集群的目標備份數量;
[0017]當所述文件所屬的應用標識為第一級別時,確定KDFS系統中各集群的目標備份數量均為第一預設數量;
[0018]當所述文件所屬的應用標識為第二級別時,確定上傳的所述文件所在集群的目標備份數量為第一預設數量,確定KDFS系統中除上傳的所述文件所在集群之外的其他各集群的目標備份數量均為小于第一預設數量的第二預設數量;
[0019]當所述文件所屬的應用標識為第三級別時,確定KDFS系統中各集群的目標備份數量均為第二預設數量。
[0020]優選地,根據所述目標備份數量對所述各集群分別進行所述文件的備份后還包括:
[0021 ]獲取所述應用標識對應的訪問記錄;
[0022]根據應用標識對應的訪問記錄調整級別,返回步驟C。
[0023]優選地,根據所述目標備份數量對所述各集群分別進行所述文件的備份后還包括:
[0024]響應用戶的下載指令在指定的集群中下載所述文件。
[0025]本發明還提供了一種基于KDFS系統的文件備份系統,包括:
[0026]文件獲取模塊,用于獲取用戶上傳文件;
[0027]級別確定模塊,與所述文件獲取模塊相連接,用于通過預設級別判定規則判定所述文件所屬的應用標識的級別;
[0028]集群備份數量確定模塊,與所述級別確定模塊相連接,用于根據所述級別通過預設備份數量確定規則確定KDFS系統中各集群的目標備份數量;
[0029]集群備份模塊,與所述集群備份數量確定模塊相連接,用于根據所述目標備份數量對所述各集群分別進行所述文件的備份。
[0030]優選地,所述基于KDFS系統的文件備份系統還包括:
[0031]訪問記錄獲取模塊,用于獲取所述應用標識對應的訪問記錄。
[0032]優選地,所述基于KDFS系統的文件備份系統還包括:
[0033]級別調整模塊,與所述訪問記錄獲取模塊以及所述集群備份數量確定模塊均相連接,用于根據應用標識對應的訪問記錄調整級別,令所述集群備份數量確定模塊工作。
[0034]優選地,所述基于KDFS系統的文件備份系統還包括:
[0035]文件下載模塊,與所述集群備份模塊相連接,用于響應用戶的下載指令在指定的集群中下載所述文件。
[0036]應用本發明提供的一種基于KDFS系統的文件備份方法與系統,獲取用戶上傳文件,通過預設級別判定規則判定所述文件所屬的應用標識的級別,根據所述級別通過預設備份數量確定規則確定KDFS系統中各集群的目標備份數量,根據所述目標備份數量對所述各集群分別進行所述文件的備份,可以為上傳文件所屬的應用標識進行等級劃分,根據不同的等級對KDFS系統中的各集群分別進行不同備份數量的文件備份,可以根據文件所屬應用標識對應的重要程度有針對地調整集群的備份數量進行文件備份,在保證文件安全的同時,極大地減少文件備份對磁盤空間的負擔。
【附圖說明】
[0037]為了更清楚地說明本發明實施例或現有技術中的技術方案,下面將對實施例或現有技術描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發明的實施例,對于本領域普通技術人員來講,在不付出創造性勞動的前提下,還可以根據提供的附圖獲得其他的附圖。
[0038]圖1為KDFS系統的結構示意圖;
[0039]圖2為本發明一種基于KDFS系統的文件備份方法實施例一的流程圖;
[0040]圖3為本發明一種基于KDFS系統的文件備份方法實施例一的原理示意圖;
[0041]圖4為本發明一種基于KDFS系統的文件備份系統實施例二的結構示意圖;
[0042]圖5為本發明一種基于KDFS系統的文件備份系統實施例三的結構示意圖。
【具體實施方式】
[0043]下面將結合本發明實施例中的附圖,對本發明實施例中的技術方案進行清楚、完整地描述,顯然,所描述的實施例僅僅是本發明一部分實施例,而不是全部的實施例。基于本發明中的實施例,本領域普通技術人員在沒有做出創造性勞動前提下所獲得的所有其他實施例,都屬于本發明保護的范圍。
[0044]實施例一:
[0045]本發明提供了一種基于KDFS系統的文件備份方法,圖2示出了本發明基于KDFS系統的文件備份方法實施例一的流程圖,包括:
[0046]步驟SlOl:獲取用戶上傳文件;
[0047]步驟S102:通過預設級別判定規則判定所述文件所屬的應用標識的級別;
[0048]使用KDFS的應用標識為APPID,判斷所述文件所屬的APPID是否存儲于優先級列表中,如果是,則確定所述文件所屬的APPID為優先級別,否則將所有評級的APPID對應的訪問參數由大到小進行排序,訪問參數包括所述APPID對應的訪問用戶數量與所述APPID對應的訪問次數,當所述APPID對應的訪問參數在所述排序中位于前第一預設比例時,確定所述APPID為第一級別,當在所述排序中位于前第一預設比例至前第二預設比例之間時,確定所述APPID為第二級別,當在所述排序中位于前第二預設比例之后時,確定所述APPID為第三級別,例如將所有參與評級的APPID中,排在前面的20%為確定為I級,最后的20%確定為3級,其他的確定為2級。
[0049]步驟S103:根據所述級別通過預設備份數量確定規則確定KDFS系統中各集群的目標備份數量;
[0050]當所述APPID為優先級別時,根據指令確定KDFS系統中各集群的目標備份數量,SP可根據用戶設置指定各集群的備份數量;
[0051]當所述文件所屬的應用標識為第一級別時,確定KDFS系統中各集群的目標備份數量均為第一預設數量;
[0052]當所述文件所屬的應用標識為第二級別時,確定上傳的所述文件所在集群的目標備份數量為第一預設數量,確定KDFS系統中除上傳的所述文件所在集群之外的其他各集群的目標備份數量均為小于第一預設數量的第二預設數量;
[0053]當所述文件所屬的應用標識為第三級別時,確定KDFS系統中各集群的目標備份數量均為第二預設數量;
[0054]例如:第一預設數量為12,第二預設數量為I,當所述APPID為I級時,確定KDFS系統中各集群的目標備份數量均為2;當所述APPID為2級時,確定上傳的所述文件所在集群的目標備份數量為2,確定KDFS系統中除上傳的所述文件所在集群之外的其他各集群的目標備份數量均為I,即用戶最初上傳的集群增加I個備份;當所述APPID為3級時,確定