一種數據文件的保護方法及系統的制作方法
【專利摘要】本發明提供了一種數據文件的保護方法,該保護方法包括:分割數據文件以形成多個數據塊;選擇存儲網絡中的多個存儲介質,該多個存儲介質中至少部分是光盤;將所述多個數據塊分別寫入所述多個存儲介質中;生成所述數據文件的索引信息,并將該索引信息寫入數據庫中,其中,所述索引信息用于記錄所述多個數據塊的存儲路徑。相應地,本發明還提供了一種數據文件的保護系統。本發明一方面將數據文件以數據塊的形式分散地寫入存儲網絡的光盤(及硬盤)中以實現對數據文件的加密,進而達到對數據文件進行有效保護的目的。
【專利說明】一種數據文件的保護方法及系統
【技術領域】
[0001]本發明涉及光盤存儲【技術領域】,尤其涉及一種數據文件的保護方法及系統。
【背景技術】
[0002]據互聯網數據中心(IDC, Internet Data Center)統計,2010年全球數據量不到1ZB,到2020年將達到35ZB以上。其中不經常使用的歸檔性數據占到總數據量的80%左右,即28ZB左右。如何對這些數據進行低成本、安全以及綠色地長期保存成為了數據存儲業界的難題之一。在眾多數據存儲介質中,光盤介質由于是通過物理方法實現數據的存儲,具有不會受到電磁輻射的干擾以及對溫度和濕度不敏感的優勢,因此被公認是歸檔數據保存的最終介質形式。
[0003]目前,利用光盤對一個數據文件進行存儲時,常見的現有技術是將該數據文件整體記錄在一張光盤內,該現有技術存在如下缺陷:一旦用于存儲數據文件的光盤發生不慎遺失的情況,則該光盤內的數據文件將面臨被他人獲取的風險。也就是說,上述現有方式雖然實現了數據文件的存儲功能,但是并不能對數據文件起到良好的保護作用。特別地,對于安全性要求較高的數據文件,采用現有方式存儲該數據文件后,若出現光盤丟失而導致數據文件泄露的情況,將有可能給數據文件的所有者造成不堪設想的損失。因此,希望針對上述缺陷提出一種數據文件的保護方法及系統。
【發明內容】
[0004]為了克服現有技術中的上述缺陷,本發明提供了一種數據文件的保護方法,該保護方法包括:
[0005]分割數據文件以形成多個數據塊;
[0006]選擇存儲網絡中的多個存儲介質,該多個存儲介質中至少部分是光盤;
[0007]將所述多個數據塊分別寫入所述多個存儲介質中;
[0008]生成所述數據文件的索引信息,并將該索引信息寫入數據庫中,其中,所述索引信息用于記錄所述多個數據塊的存儲路徑。
[0009]根據本發明的一個方面,該保護方法中選擇存儲網絡中的多個存儲介質包括:識別出所述存儲網絡中包括的所有可用存儲介質;隨機選擇所述所有可用存儲介質的一個子集,該子集內包括所述多個存儲介質。
[0010]根據本發明的另一個方面,該保護方法中選擇存儲網絡中的多個存儲介質包括:識別出所述存儲網絡中包括的所有可用存儲介質;判斷所述所有可用存儲介質的存儲負載狀況,并根據存儲負載狀況選擇所述所有可用存儲介質的一個子集,該子集內包括所述多個存儲介質。
[0011]根據本發明的又一個方面,該保護方法中所述多個存儲介質中除光盤外還包括硬盤。
[0012]根據本發明的又一個方面,該保護方法還包括:創建所述多個數據塊的副本,其中,每一所述數據塊具有至少一個副本;選擇所述存儲網絡中的多個備份存儲介質,該多個備份存儲介質中至少部分是光盤;將所述副本分別寫入所述多個備份存儲介質中;生成所述數據文件的備份索引信息,并將該備份索引信息寫入所述數據庫中,其中,所述備份索引信息用于記錄所述副本的存儲路徑。
[0013]根據本發明的又一個方面,該保護方法中選擇所述存儲網絡中的多個備份存儲介質包括:識別出所述存儲網絡中包括的所有可用備份存儲介質;隨機選擇所述所有可用備份存儲介質的一個子集,該子集內包括所述多個備份存儲介質。
[0014]根據本發明的又一個方面,該保護方法中選擇所述存儲網絡中的多個備份存儲介質包括:識別出所述存儲網絡中包括的所有可用備份存儲介質;判斷所述所有可用備份存儲介質的存儲負載狀況,并根據所述存儲負載狀況選擇所述所有可用備份存儲介質的一個子集,該子集內包括所述多個備份存儲介質。
[0015]根據本發明的又一個方面,該保護方法中所述多個備份存儲介質中除光盤外還包括硬盤。
[0016]根據本發明的又一個方面,該保護方法中所述硬盤是機械硬盤、固態硬盤或混合硬盤。
[0017]根據本發明的又一個方面,該保護方法中所述存儲網絡包括至少一個光盤庫。
[0018]本發明還提供了一種數據文件的保護系統,該保護系統包括:
[0019]存儲網絡,該存儲網絡用于提供存儲介質;
[0020]分割模塊,用于分割數據文件以形成多個數據塊;
[0021]選擇模塊,用于選擇所述存儲網絡中的多個存儲介質,該多個存儲介質中至少部分是光盤;
[0022]寫入模塊,用于將所述多個數據塊分別寫入所述多個存儲介質中;
[0023]索引模塊,用于生成所述數據文件的索引信息,并將該索引信息寫入數據庫中,其中,所述索引信息用于記錄所述多個數據塊的存儲路徑;
[0024]所述數據庫,用于存儲所述索引信息。
[0025]根據本發明的一個方面,該保護系統中所述選擇模塊包括:第一識別單元,用于識別出所述存儲網絡中包括的所有可用存儲介質;第一選擇單元,用于隨機選擇所述所有可用存儲介質的一個子集,該子集內包括所述多個存儲介質。
[0026]根據本發明的另一個方面,該保護系統中所述選擇模塊包括:第二識別單元,用于識別出所述存儲網絡中包括的所有可用存儲介質;第二選擇單元,用于判斷所述所有可用存儲介質的存儲負載狀況,并根據所述存儲負載狀況選擇所述所有可用存儲介質的一個子集,該子集內包括所述多個存儲介質。
[0027]根據本發明的又一個方面,該保護系統中所述多個存儲介質中除光盤外還包括硬盤。
[0028]根據本發明的又一個方面,該保護系統還包括:備份創建模塊,用于創建所述多個數據塊的副本,其中,每一所述數據塊具有至少一個副本;備份選擇模塊,用于選擇所述存儲網絡中的多個備份存儲介質,該多個備份存儲介質中至少部分是光盤;備份寫入模塊,用于將所述副本分別寫入所述多個備份存儲介質中;備份索引模塊,用于生成所述數據文件的備份索引信息,并將該備份索引信息寫入所述數據庫中,其中,所述備份索引信息用于記錄所述副本的存儲路徑。
[0029]根據本發明的又一個方面,該保護系統中所述備份選擇模塊包括:第三識別單元,用于識別出所述存儲網絡中包括的所有可用備份存儲介質;第三選擇單元,用于隨機選擇所述所有可用備份存儲介質的一個子集,該子集內包括所述多個備份存儲介質。
[0030]根據本發明的又一個方面,該保護系統中所述備份選擇模塊包括:第四識別單元,用于識別出所述存儲網絡中包括的所有可用備份存儲介質;第四選擇單元,用于判斷所述所有可用備份存儲介質的存儲負載狀況,并根據所述存儲負載狀況選擇所述所有可用備份存儲介質的一個子集,該子集內包括所述多個備份存儲介質。
[0031]根據本發明的又一個方面,該保護系統中所述多個備份存儲介質中除光盤外還包括硬盤。
[0032]根據本發明的又一個方面,該保護系統中所述硬盤是機械硬盤、固態硬盤或混合硬盤。
[0033]根據本發明的又一個方面,該保護系統中所述存儲網絡包括至少一個光盤庫。
[0034]本發明提供的數據文件的保護方法及系統將數據文件本發明提供的數據文件的保護方法及系統通過將數據文件以數據塊的形式分散地存儲至存儲網絡包括的存儲介質中以實現對數據文件的加密,使得非數據文件的所有者即使獲得部分存儲介質也無法從中讀取出完整的數據文件。此外,本發明還采用光盤作為數據文件的主要存儲介質,充分地利用了光盤所具有的不會受到電磁輻射干擾以及對溫度和濕度不敏感的優勢,使得數據文件不會由于受到外界環境的影響而損壞丟失,從而進一步實現了對數據文件的保護。
【專利附圖】
【附圖說明】
[0035]通過閱讀參照以下附圖所作的對非限制性實施例所作的詳細描述,本發明的其它特征、目的和優點將會變得更明顯:
[0036]圖1是根據本發明的數據文件的保護方法的一個【具體實施方式】的流程圖;
[0037]圖2是根據本發明的數據塊副本存儲的一個【具體實施方式】的流程圖;
[0038]圖3是根據本發明的數據文件的保護系統的一個【具體實施方式】的結構示意圖;
[0039]圖4是根據本發明的數據文件的保護系統的另一個【具體實施方式】的結構示意圖。
[0040]附圖中相同或相似的附圖標記代表相同或相似的部件。
【具體實施方式】
[0041]為了更好地理解和闡釋本發明,下面將結合附圖對本發明作進一步的詳細描述。
[0042]請參考圖1,圖1是根據本發明的數據文件的保護方法的一個【具體實施方式】的流程圖。如圖所示,該保護方法包括:
[0043]在步驟SlOl中,分割數據文件以形成多個數據塊;
[0044]在步驟S102中,選擇存儲網絡中的多個存儲介質,該多個存儲介質中至少部分是光盤;
[0045]在步驟S103中,將所述多個數據塊分別寫入所述多個存儲介質中;
[0046]在步驟S104中,生成所述數據文件的索引信息,并將該索引信息寫入數據庫中,其中,所述索引信息用于記錄所述多個數據塊的存儲路徑。[0047]具體地,在步驟SlOl中,存儲網絡是指由通過互聯網或局域網連接的多個存儲設備所構成的用于提供存儲空間的架構,其中,存儲設備內設置存儲介質,該存儲介質利用電、磁和/或光學的特性對信息進行保存。由于光盤具有不會受到電磁輻射干擾以及對溫度和濕度不敏感的優勢,因此,在本發明所涉及的存儲網絡中部分或全部存儲介質采用光盤。下文中,將以存儲介質包括光盤和硬盤為例對本發明進行說明。本領域的技術人員可以理解的是,存儲網絡除了提供光盤和硬盤以外,還可以提供現有的其他類型的存儲介質,為了簡明起見,在此不再一一列舉。
[0048]在將數據文件寫入存儲網絡進行保存之前,首先需要將數據文件進行分割以形成多個數據塊。在本實施例中,將數據文件分割成為大小相等的數據塊,其中,數據塊的大小等于預設值,例如512K、1M或5M等。在其他實施例中,也可以根據實際應用的需要將數據文件分割成為大小不等的數據塊。
[0049]在步驟S102中,從存儲網絡中選擇多個存儲介質用于該多個數據塊的存儲,其中,在該多個存儲介質中至少部分是光盤。一種情況是該多個存儲介質全部是光盤。另一種可能是該多個存儲介質除了光盤之外還包括硬盤。進一步地,所述硬盤可以是機械硬盤、固態硬盤或混合硬盤。在本實施例中,所述存儲網絡中包括至少一個光盤庫,該至少一個光盤庫用于提供光盤。
[0050]在進一步對如何選擇存儲網絡中的多個存儲介質進行說明之前,還需要對存儲介質與存儲設備之間的關系進行進一步說明,一個存儲設備可能僅包括一個存儲介質(例如存儲設備內只設置有一塊硬盤作為存儲介質),也可能包括多個存儲介質(例如光盤庫作為存儲設備包括上百張甚至上千張作為存儲介質的光盤)。因此,與該多個存儲介質相對應的存儲設備的數目也許等于I (該多個存儲介質均位于同一存儲設備內),也許小于存儲介質的數目(至少兩個存儲介質位于同一存儲設備內),也許等于存儲介質的數目(任意兩個存儲介質都不在同一存儲設備內)。下面,對如何選擇存儲網絡中的多個存儲介質的過程進行具體描述。
[0051]在一個優選實施例中,選擇存儲網絡中的多個存儲介質的步驟包括:首先,識別出所述存儲網絡中包括的所有可用存儲介質。在本實施例中,通過獲取存儲網絡中包括的存儲介質的存儲狀態信息來識別所有可用存儲介質,其中,所述存儲狀態信息包括但不限于存儲介質的閑忙狀態以及存儲介質內可用空間的大小。然后,隨機選擇所述所有可用存儲介質的一個子集,該子集內包括所述多個存儲介質。優選地,所述子集內包括的存儲介質的數目等于所述數據塊的數目,即所述多個數據塊被存儲至不同的存儲介質內。更優選地,所述存儲介質分布在不同的存儲設備中,即所述數據塊被存儲至不同的存儲設備內。
[0052]在另一個優選實施例中,選擇存儲網絡中的多個存儲介質的步驟包括:首先,識別出所述存儲網絡中包括的所有可用存儲介質。在本實施例中,同樣可以通過上述獲取存儲網絡中包括的存儲介質的存儲狀態信息的方法來識別所有可用存儲介質。然后,判斷所述所有可用存儲介質的存儲負載狀況,并根據存儲負載狀況選擇所述所有可用存儲介質的一個子集,該子集內包括所述多個存儲介質。同樣地,所述子集內包括的存儲介質的數目優選等于所述數據塊的數目。更優選地,所述存儲介質分布在不同的存儲設備中。與上述隨機選擇可用存儲介質的一個子集的方式相比,本實施例中的通過存儲負載狀況選擇可用存儲介質的一個子集的方式可以更好地使存儲網絡運行在一個負載均衡的狀態下。[0053]在步驟S103中,將分割數據文件所形成的多個數據塊寫入所述多個存儲介質中。針對于多個數據塊的寫入方式,一種方式是等待所有存儲介質均進入寫入準備狀態后同步并行地將該多個數據塊寫入多個存儲介質中,另一種方式是一旦檢測到任一存儲介質進入寫入準備狀態后即寫入向該存儲介質寫入與其對應的數據塊。本領域的技術人員可以理解的是,本發明并不限于上述兩種寫入方式,凡是可以將該多個數據塊相應寫入到多個存儲介質中的方式都包括在本發明所保護的范圍內。
[0054]在步驟S104中,將多個數據塊寫入存儲網絡的多個存儲介質中之后,生成數據文件的索引信息,其中,該索引信息用于記錄所述多個數據塊的存儲路徑;數據文件的索引信息生成之后,將該索引信息寫入數據庫中進行保存。優選地,數據庫所在的存儲設備獨立于用于存儲數據文件的存儲介質所在的存儲設備,即索引信息與數據文件分開存儲,如此一來,即使非數據文件的所有者獲得了用于存儲數據文件的所有存儲介質,也會因為缺少索引信息而無法對存儲介質內的數據塊進行組合以恢復數據文件。數據文件存儲至存儲網絡中之后,當需要讀取數據文件時,首先從數據庫中獲取數據文件的索引信息,然后根據該索引信息從存儲網絡中包括的存儲介質中讀取相應的數據塊并組合形成數據文件。
[0055]需要說明的是,步驟S102中提及的存儲介質的存儲狀態信息可以存儲在上述數據庫中,并根據存儲網絡中包括的存儲介質的存儲狀態的變化相應進行更新。如此一來,在選擇存儲網絡中的多個存儲介質時只需要直接從數據庫中讀取該存儲狀態信息,而無需逐一對存儲網絡中包括的存儲介質進行檢測以獲取其存儲狀態信息,從而提高了數據塊寫入的效率。本領域的技術人員可以理解的是,所述存儲狀態信息也可以與索引信息分別存儲在不同的數據庫中。
[0056]通過上述步驟SlOl至步驟S104可知,與現有技術中將數據文件完整地存儲至一個存儲介質中(例如一個硬盤內或一張光盤內)相比,本發明是將數據文件以數據塊的形式分散地存儲至存儲網絡包括的存儲介質中,如此一來,起到了對數據文件進行加密的效果,即,非數據文件的所有者獲得部分存儲介質也無法從中讀取出完整的數據文件。舉例說明,存儲網絡中某一存儲設備內設置一塊硬盤,非法用戶進入該硬盤讀取數據,在這種情況下,由于該硬盤內存儲的僅僅是部分數據塊而非完整的數據文件,因此該非法用戶無法獲取完整的數據文件。此外,在上述將數據文件分散存儲的基礎上,本發明還采用光盤作為數據文件的主要存儲介質,充分地利用了光盤所具有的不會受到電磁輻射干擾以及對溫度和濕度不敏感的優勢,使得數據文件不會由于受到外界環境的影響而損壞丟失,從而進一步實現了對數據文件的保護。
[0057]本發明所提供的數據文件的保護方法進一步地通過形成數據塊的副本并將該副本存儲至存儲網絡包括的存儲介質中以達到對數據文件更好的保護效果。請參考圖2,圖2是根據本發明的數據塊副本存儲的一個【具體實施方式】的流程圖。如圖所示,形成數據塊的副本并將該副本存儲至存儲網絡包括的存儲介質中包括以下步驟:
[0058]在步驟S201中,創建所述多個數據塊的副本,其中,每一所述數據塊具有至少一個副本;
[0059]在步驟S202中,選擇所述存儲網絡中的多個備份存儲介質,該多個備份存儲介質中至少部分是光盤;
[0060]在步驟S203中,將所述副本分別寫入所述多個備份存儲介質中;[0061]在步驟S204中,生成所述數據文件的備份索引信息,并將該備份索引信息寫入所述數據庫中,其中,所述備份索引信息用于記錄所述副本的存儲路徑。
[0062]具體地,在步驟S201中,針對每一數據塊創建至少一個副本,其中,副本的數目越多,數據塊損壞丟失之后能被恢復的概率就越高,但是與此同時占用的存儲空間也越多,因此,副本的具體數目根據實際應用的需求進行設定。
[0063]在步驟S202中,從存儲網絡中選擇多個備份存儲介質用于數據塊副本的存儲,其中,在該多個備份存儲介質中至少部分是光盤。同樣地,一種情況是該多個備份存儲介質全部是光盤。另一種可能是該多個備份存儲介質除了光盤之外還包括硬盤。進一步地,所述硬盤可以是機械硬盤、固態硬盤或混合硬盤。在本實施例中,所述光盤同樣是通過光盤庫提供。
[0064]在一個優選實施例中,選擇存儲網絡中的多個備份存儲介質的步驟包括:首先,識別出所述存儲網絡中包括的所有可用備份存儲介質;然后,隨機選擇所述所有可用備份存儲介質的一個子集,該子集內包括所述多個備份存儲介質。在另一個優選實施例中,選擇存儲網絡中的多個備份存儲介質的步驟包括:首先,識別出所述存儲網絡中包括的所有可用備份存儲介質;然后,判斷所述所有可用備份存儲介質的存儲負載狀況,并根據存儲負載狀況選擇所述所有可用備份存儲介質的一個子集,該子集內包括所述多個備份存儲介質。本領域的技術人員可以理解的是,從存儲網絡中選擇多個備份存儲介質用于存儲副本的步驟與選擇多個存儲介質用于存儲數據塊的步驟本質上是相同的,因此可以參考前述步驟S102中相應部分的說明,為了簡明起見,在此就不再展開描述。
[0065]需要對用于存儲數據塊的存儲介質與用于存儲副本的備份存儲介質之間的關系進行說明。將其二者視為兩個集合,則該兩個集合可以完全重合(即數據塊及其副本采用相同的存儲介質進行保存)、也可以部分重合(即部分數據塊和部分副本采用相同的存儲介質進行保存),還可以完全不重合(即數據塊及副本分別存儲在不同的存儲介質中)。
[0066]在步驟S203中,將數據塊的副本寫入所述多個備份存儲介質中。同樣地,寫入方式在此不做任何限定。
[0067]在步驟S204中,將數據塊的副本寫入存儲網絡的多個備份存儲介質中之后,生成數據文件的備份索引信息,其中,該備份索引信息用于記錄所述副本的存儲路徑;數據文件的備份索引信息生成之后,保存該備份索引信息。在一個實施例中,將該備份索引信息與前述步驟S104中數據文件的索引信息保存在同一數據庫中,便于讀取。
[0068]當數據塊以及副本存儲至存儲網絡中之后,若出現數據塊損壞丟失的情況,此時可以從數據庫中獲取數據文件的備份索引信息,然后根據該備份索引信息從存儲網絡中包括的備份存儲介質中讀取出該數據塊的副本并利用該副本對損壞丟失的數據塊進行恢復,從而進一步對數據文件起到了保護作用。
[0069]需要說明的是,盡管在附圖中以特定順序描述了本發明方法的操作,但是,這并非要求或者暗示必須按照該特定順序來執行這些操作,或是必須執行全部所示的操作才能實現期望的結果。相反,流程圖中描繪的步驟可以改變執行順序。附加地或備選地,可以省略某些步驟,將多個步驟合并為一個步驟執行,和/或將一個步驟分解為多個步驟執行。
[0070]相應地,本發明還提供了一種數據文件的保護系統,請參考圖3,圖3是根據本發明的數據文件的保護系統的一個【具體實施方式】的結構示意圖。如圖3所示,該保護系統包括:
[0071]存儲網絡10,該存儲網絡10用于提供存儲介質101 ;
[0072]分割模塊201,用于分割數據文件以形成多個數據塊;
[0073]選擇模塊202,用于選擇所述存儲網絡10中的多個存儲介質101,該多個存儲介質101中至少部分是光盤;
[0074]寫入模塊203,用于將所述多個數據塊分別寫入所述多個存儲介質101中;
[0075]索引模塊204,用于生成所述數據文件的索引信息,并將該索引信息寫入數據庫30中,其中,所述索引信息用于記錄所述多個數據塊的存儲路徑;
[0076]所述數據庫30,用于存儲所述索引信息。
[0077]下面,對上述各模塊的工作過程進行具體描述。
[0078]具體地,如圖所示,存儲網絡10是指由通過互聯網或局域網連接的多個存儲設備(諸如圖中存儲設備1、存儲設備2以及存儲設備N所示)所構成的用于提供存儲空間的架構,其中,存儲設備內設置存儲介質101,該存儲介質101利用電、磁和/或光學的特性對信息進行保存。下文中,將以存儲介質101包括光盤和硬盤為例對本發明進行說明。
[0079]分割模塊201將數據文件進行分割以形成多個數據塊。在本實施例中,分割模塊201將數據文件分割成為大小相等的數據塊,其中,數據塊的大小等于預設值,例如512K、IM或5M等。在其他實施例中,分割模塊201也可以根據實際應用的需要將數據文件分割成為大小不等的數據塊。
[0080]選擇模塊202從存儲網絡10中選擇多個存儲介質101用于該多個數據塊的存儲,其中,在該多個存儲介質101中至少部分是光盤。一種情況是該多個存儲介質101全部是光盤。另一種可能是該多個存儲介質101除了光盤之外還包括硬盤。進一步地,所述硬盤可以是機械硬盤、固態硬盤或混合硬盤。在本實施例中,所述存儲網絡10中包括至少一個光盤庫,該至少一個光盤庫用于提供光盤。
[0081]在一個優選實施例中,選擇模塊202包括第一識別單元2021以及第一選擇單元2022,其中,所述第一識別單元2021用于識別出所述存儲網絡10中包括的所有可用存儲介質101 (可用存儲介質本質上還是存儲介質,因此也采用101編號表示)。在本實施例中,所述第一識別單元2021通過獲取存儲網絡10中包括的存儲介質101的存儲狀態信息來識別所有可用存儲介質101,其中,所述存儲狀態信息包括但不限于存儲介質101的閑忙狀態以及存儲介質101內可用空間的大小。所述第一選擇單元2022用于隨機選擇所述所有可用存儲介質101的一個子集,該子集內包括所述多個存儲介質101。優選地,所述子集內包括的存儲介質101的數目等于所述數據塊的數目,即所述多個數據塊被存儲至不同的存儲介質101內。更優選地,所述存儲介質101分布在不同的存儲設備中,即所述數據塊被存儲至不同的存儲設備內。
[0082]在另一個優選實施例中,選擇模塊202包括第二識別單元2023以及第二選擇單元2024,其中,所述第二識別單元2023用于識別出所述存儲網絡中包括的所有可用存儲介質101,所述第二選擇單元2024用于判斷所述所有可用存儲介質101的存儲負載狀況,并根據存儲負載狀況選擇所述所有可用存儲介質101的一個子集,該子集內包括所述多個存儲介質 101。
[0083]需要說明的是,如圖所示,所述選擇模塊202同時包括第一識別單元2021和第一選擇單元2022、以及第二識別單元2023和第二選擇單元2024。在其他實施例中,所述選擇模塊202也可以僅包括第一識別單元2021和第一選擇單元2022、或僅包括第二識別單元2023和第二選擇單元2024。
[0084]寫入模塊203將分割數據文件所形成的多個數據塊寫入所述多個存儲介質101中。針對于多個數據塊的寫入方式,一種方式是寫入模塊203等待所有存儲介質101均進入寫入準備狀態后同步并行地將該多個數據塊寫入多個存儲介質101中,另一種方式是寫入模塊203 —旦檢測到任一存儲介質101進入寫入準備狀態后即寫入向該存儲介質101寫入與其對應的數據塊。
[0085]寫入模塊203將多個數據塊寫入存儲網絡10的多個存儲介質101中之后,索引模塊204生成數據文件的索引信息,其中,該索引信息用于記錄所述多個數據塊的存儲路徑;數據文件的索引信息生成之后,索引模塊204將該索引信息寫入數據庫30中進行保存。優選地,數據庫30所在的存儲設備獨立于用于存儲數據文件的存儲介質101所在的存儲設備,即索引信息與數據文件分開存儲,如此一來,即使非數據文件的所有者獲得了用于存儲數據文件的所有存儲介質101,也會因為缺少索引信息而無法對存儲介質101內的數據塊進行組合以恢復數據文件。
[0086]需要說明的是,前述提及的存儲介質的存儲狀態信息可以存儲在上述數據庫30中,并根據存儲網絡10中包括的存儲介質101的存儲狀態的變化相應進行更新。如此一來,選擇模塊202在選擇存儲網絡10中的多個存儲介質101時只需要直接從數據庫30中讀取該存儲狀態信息,而無需逐一對存儲網絡10中包括的存儲介質101進行檢測以獲取其存儲狀態信息,從而提高了數據塊寫入的效率。本領域的技術人員可以理解的是,所述存儲狀態信息也可以與索引信息分別存儲在不同的數據庫中。
[0087]與現有技術相比,本發明是將數據文件以數據塊的形式分散地存儲至存儲網絡10包括的存儲介質101中,如此一來,起到了對數據文件進行加密的效果,即,非數據文件的所有者獲得部分存儲介質101也無法從中讀取出完整的數據文件。舉例說明,存儲網絡10中某一存儲設備內設置一塊硬盤,非法用戶進入該硬盤讀取數據,在這種情況下,由于該硬盤內存儲的僅僅是部分數據塊而非完整的數據文件,因此該非法用戶無法獲取完整的數據文件。此外,在上述將數據文件分散存儲的基礎上,本發明還采用光盤作為數據文件的主要存儲介質101,充分地利用了光盤所具有的不會受到電磁輻射干擾以及對溫度和濕度不敏感的優勢,使得數據文件不會由于受到外界環境的影響而損壞丟失,從而進一步實現了對數據文件的保護。
[0088]請參考圖4,圖4是根據本發明的數據文件的保護系統的另一個【具體實施方式】的結構示意圖。如圖4所示,與圖3所示系統相比,本發明所提供的數據文件的保護系統進一步還包括:
[0089]備份創建模塊205,用于創建所述多個數據塊的副本,其中,每一所述數據塊具有至少一個副本;
[0090]備份選擇模塊206,用于選擇所述存儲網絡10中的多個備份存儲介質101 (備份存儲介質本質上還是存儲介質,因此也采用101編號表示),該多個備份存儲介質101中至少部分是光盤;
[0091]備份寫入模塊207,用于將所述副本分別寫入所述多個備份存儲介質101中;[0092]備份索引模塊208,用于生成所述數據文件的備份索引信息,并將該備份索引信息寫入所述數據庫30中,其中,所述備份索引信息用于記錄所述副本的存儲路徑。
[0093]圖4與圖3中相同的附圖標記代表相同的部件,為了簡明起見,在此對于圖4中與圖3中具有相同附圖標記的部件不再進行贅述,請參考前文中相關內容的描述。
[0094]下面,對備份創建模塊205、備份選擇模塊206、備份寫入模塊207以及備份索引模塊208的工作過程進行具體說明。
[0095]具體地,備份創建模塊205針對每一數據塊創建至少一個副本,其中,副本的具體數目根據實際應用的需求進行設定。
[0096]備份選擇模塊206從存儲網絡10中選擇多個備份存儲介質101用于數據塊副本的存儲,其中,在該多個備份存儲介質101中至少部分是光盤。同樣地,一種情況是該多個備份存儲介質101全部是光盤。另一種可能是該多個備份存儲介質101除了光盤之外還包括硬盤。進一步地,所述硬盤可以是機械硬盤、固態硬盤或混合硬盤。在本實施例中,所述光盤同樣是通過光盤庫提供。
[0097]在一個優選實施例中,備份選擇模塊206包括第三識別單元2061以及第三選擇單元2062。其中,第三識別單元2061用于識別出所述存儲網絡10中包括的所有可用備份存儲介質101 (可用備份存儲介質本質上還是存儲介質,因此也采用101編號表示),第三選擇單元2062用于隨機選擇所述所有可用備份存儲介質101的一個子集,該子集內包括所述多個備份存儲介質101。在另一個優選實施例中,備份選擇模塊206包括第四識別單元2063以及第四選擇單元2064,其中,第四識別單元2063用于識別出所述存儲網絡10中包括的所有可用備份存儲介質101,第四選擇單元2064用于判斷所述所有可用備份存儲介質101的存儲負載狀況,并根據存儲負載狀況選擇所述所有可用備份存儲介質101的一個子集,該子集內包括所述多個備份存儲介質。
[0098]需要說明的是,如圖所示,所述備份選擇模塊206同時包括第三識別單元2061和第三選擇單元2062、以及第四識別單元2063和第四選擇單元2064。在其他實施例中,所述備份選擇模塊206也可以僅包括第三識別單元2061和第三選擇單元2062、或僅包括第四識別單元2063和第四選擇單元2064。
[0099]備份寫入模塊207將數據塊的副本寫入所述多個備份存儲介質101中。同樣地,寫入方式在此不做任何限定。
[0100]備份寫入模塊207將數據塊的副本寫入存儲網絡的多個備份存儲介質101中之后,備份索引模塊208生成數據文件的備份索引信息,其中,該備份索引信息用于記錄所述副本的存儲路徑;數據文件的備份索引信息生成之后,備份寫入模塊207將該備份索引信息寫入所述數據庫30中。
[0101]當數據塊以及副本存儲至存儲網絡中之后,若出現數據塊損壞丟失的情況,可以根據備份索引信息從存儲網絡10中包括的備份存儲介質101中讀取出該數據塊的副本并利用該副本對損壞丟失的數據塊進行恢復,從而進一步對數據文件起到了保護作用。
[0102]需要說明的是,分割模塊201、選擇模塊202、寫入模塊203、索引模塊204、備份創建模塊205、備份選擇模塊206、備份寫入模塊207和備份索引模塊208及其包括的各部分優選地實施為一種計算機程序產品,且該計算機程序產品運行在一臺服務器內。上述計算機程序產品的實施例可以通過使用用于計算機可讀信息的任何記錄介質來實現,所述記錄介質包括磁介質、光介質或其他適合的介質。
[0103]本部分出現的術語和名詞與前文中相同的術語或名詞具有一致的含義,例如所述“存儲網絡”、“存儲設備”、“存儲介質”等,上述術語或名詞及其涉及的工作原理均可參考前文中相關部分的描述和解釋,為了簡便起見在此不再贅述。
[0104]本發明提供的數據文件的保護方法可以使用可編程邏輯器件來實現,也可以實施為計算機程序軟件,例如根據本發明的實施例可以是一種計算機程序產品,運行該程序產品使計算機執行用于所示范的方法。所述計算機程序產品包括計算機可讀存儲介質,該介質上包含計算機程序邏輯或代碼部分,用于實現上述方法的各個步驟。所述計算機可讀存儲介質可以是被安裝在計算機中的內置介質或者可從計算機主體拆卸的可移動介質(例如熱拔插技術存儲設備)。所述內置介質包括但不限于可重寫的非易失性存儲器,例如RAM、ROM、快閃存儲器和硬盤。所述可移動介質包括但不限于:光存儲媒體(例如CD-ROM和DVD )、磁光存儲媒體(例如MO)、磁存儲媒體(例如盒帶或移動硬盤)、具有內置的可重寫的非易失性存儲器的媒體(例如存儲卡)和具有內置ROM的媒體(例如ROM盒)。
[0105]本領域技術人員應當理解,任何具有適當編程裝置的計算機系統都將能夠執行包含在程序產品中的本發明的方法的諸步驟。盡管本說明書中描述的多數【具體實施方式】都側重于軟件程序,但是作為固件和硬件實現本發明提供的方法的替代實施例同樣在本發明要求保護的范圍之內。
[0106]對于本領域技術人員而言,顯然本發明不限于上述示范性實施例的細節,而且在不背離本發明的精神或基本特征的情況下,能夠以其他的具體形式實現本發明。因此,無論從哪一點來看,均應將實施例看作是示范性的,而且是非限制性的,本發明的范圍由所附權利要求而不是上述說明限定,因此旨在將落在權利要求的等同要件的含義和范圍內的所有變化涵括在本發明內。不應將權利要求中的任何附圖標記視為限制所涉及的權利要求。此夕卜,顯然“包括” 一詞不排除其他部件、單元或步驟,單數不排除復數。裝置權利要求中陳述的多個部件、單元或裝置也可以由一個部件、單元或裝置通過軟件或者硬件來實現。
[0107]本發明提供的數據文件的保護方法及系統通過將數據文件以數據塊的形式分散地存儲至存儲網絡包括的存儲介質中以實現對數據文件的加密,使得非數據文件的所有者即使獲得部分存儲介質也無法從中讀取出完整的數據文件。此外,本發明還采用光盤作為數據文件的主要存儲介質,充分地利用了光盤所具有的不會受到電磁輻射干擾以及對溫度和濕度不敏感的優勢,使得數據文件不會由于受到外界環境的影響而損壞丟失,從而進一步實現了對數據文件的保護。
[0108]以上所揭露的僅為本發明的一些較佳實施例而已,當然不能以此來限定本發明之權利范圍,因此依本發明權利要求所作的等同變化,仍屬本發明所涵蓋的范圍。
【權利要求】
1.一種數據文件的保護方法,該保護方法包括: 分割數據文件以形成多個數據塊; 選擇存儲網絡中的多個存儲介質,該多個存儲介質中至少部分是光盤; 將所述多個數據塊分別寫入所述多個存儲介質中; 生成所述數據文件的索引信息,并將該索引信息寫入數據庫中,其中,所述索引信息用于記錄所述多個數據塊的存儲路徑。
2.根據權利要求1所述的保護方法,其中,選擇存儲網絡中的多個存儲介質包括: 識別出所述存儲網絡中包括的所有可用存儲介質; 隨機選擇所述所有可用存儲介質的一個子集,該子集內包括所述多個存儲介質。
3.根據權利要求1所述的保護方法,其中,選擇存儲網絡中的多個存儲介質包括: 識別出所述存儲網絡中包括的所有可用存儲介質; 判斷所述所有可用存儲介質的存儲負載狀況,并根據存儲負載狀況選擇所述所有可用存儲介質的一個子集,該子集內包括所述多個存儲介質。
4.根據權利要求1所述的保護方法,其中,所述多個存儲介質中除光盤外還包括硬盤。
5.根據權利要求1至3中任一項所述的保護方法,該保護方法還包括: 創建所述多個數據塊的副本,其中,每一所述數據塊具有至少一個副本; 選擇所述存儲網絡中的多個備份存儲介質,該多個備份存儲介質中至少部分是光盤; 將所述副本分別寫入所述多個備份存儲介質中; 生成所述數據文件的備份索引信息,并將該備份索引信息寫入所述數據庫中,其中,所述備份索引信息用于記錄所述副本的存儲路徑。
6.根據權利要求5所述的保護方法,其中,選擇所述存儲網絡中的多個備份存儲介質包括: 識別出所述存儲網絡中包括的所有可用備份存儲介質; 隨機選擇所述所有可用備份存儲介質的一個子集,該子集內包括所述多個備份存儲介質。
7.根據權利要求5所述的保護方法,其中,選擇所述存儲網絡中的多個備份存儲介質包括: 識別出所述存儲網絡中包括的所有可用備份存儲介質; 判斷所述所有可用備份存儲介質的存儲負載狀況,并根據所述存儲負載狀況選擇所述所有可用備份存儲介質的一個子集,該子集內包括所述多個備份存儲介質。
8.根據權利要求5所述的保護方法,其中,所述多個備份存儲介質中除光盤外還包括硬盤。
9.根據權利要求4或8所述的保護方法,其中,所述硬盤是機械硬盤、固態硬盤或混合硬盤。
10.根據權利要求1或5所述的保護方法,其中,所述存儲網絡包括至少一個光盤庫。
11.一種數據文件的保護系統,該保護系統包括: 存儲網絡,該存儲網絡用于提供存儲介質; 分割模塊,用于分割數據文件以形成多個數據塊; 選擇模塊,用于選擇所述存儲網絡中的多個存儲介質,該多個存儲介質中至少部分是光盤; 寫入模塊,用于將所述多個數據塊分別寫入所述多個存儲介質中; 索引模塊,用于生成所述數據文件的索引信息,并將該索引信息寫入數據庫中,其中,所述索引信息用于記錄所述多個數據塊的存儲路徑; 所述數據庫,用于存儲所述索引信息。
12.根據權利要求11所述的保護系統,其中,所述選擇模塊包括: 第一識別單元,用于識別出所述存儲網絡中包括的所有可用存儲介質; 第一選擇單元,用于隨機選擇所述所有可用存儲介質的一個子集,該子集內包括所述多個存儲介質。
13.根據權利要求11所述的保護系統,其中,所述選擇模塊包括: 第二識別單元,用于識別出所述存儲網絡中包括的所有可用存儲介質; 第二選擇單元,用于判斷所述所有可用存儲介質的存儲負載狀況,并根據所述存儲負載狀況選擇所述所有可用存儲介質的一個子集,該子集內包括所述多個存儲介質。
14.根據權利要求11所述的保護系統,其中,所述多個存儲介質中除光盤外還包括硬盤。
15.根據權利要求11至13中任一項所述的保護系統,該保護系統還包括: 備份創建模塊,用于創建所述多個數據塊的副本,其中,每一所述數據塊具有至少一個副本; 備份選擇模塊,用于選擇所述存儲網絡中的多個備份存儲介質,該多個備份存儲介質中至少部分是光盤; 備份寫入模塊,用于將所述副本分別寫入所述多個備份存儲介質中; 備份索引模塊,用于生成所述數據文件的備份索引信息,并將該備份索引信息寫入所述數據庫中,其中,所述備份索引信息用于記錄所述副本的存儲路徑。
16.根據權利要求15所述的保護系統,其中,所述備份選擇模塊包括: 第三識別單元,用于識別出所述存儲網絡中包括的所有可用備份存儲介質; 第三選擇單元,用于隨機選擇所述所有可用備份存儲介質的一個子集,該子集內包括所述多個備份存儲介質。
17.根據權利要求15所述的保護系統,其中,所述備份選擇模塊包括: 第四識別單元,用于識別出所述存儲網絡中包括的所有可用備份存儲介質; 第四選擇單元,用于判斷所述所有可用備份存儲介質的存儲負載狀況,并根據所述存儲負載狀況選擇所述所有可用備份存儲介質的一個子集,該子集內包括所述多個備份存儲介質。
18.根據權利要求15所述的保護系統,其中,所述多個備份存儲介質中除光盤外還包括硬盤。
19.根據權利要求14或18所述的保護系統,其中,所述硬盤是機械硬盤、固態硬盤或混合硬盤。
20.根據權利要求11或15所述的保護系統,其中,所述存儲網絡包括至少一個光盤庫。
【文檔編號】G06F21/80GK103793666SQ201410037042
【公開日】2014年5月14日 申請日期:2014年1月24日 優先權日:2014年1月24日
【發明者】鄧吉, 劉恒昌, 李珅, 鄭維, 謝之恒 申請人:中經云數據存儲科技(北京)有限公司