• 
    <ul id="o6k0g"></ul>
    <ul id="o6k0g"></ul>

    分布式存儲的方法、裝置和系統制造方法及圖紙

    技術編號:10316163 閱讀:123 留言:0更新日期:2014-08-13 17:36
    本發明專利技術的實施例提供了一種分布式數據存儲的方法、裝置和系統。該方法包括:對數據文件進行分割,生成K個數據切片,對K個數據切片中的每個數據切片進行分割,針對每個數據切片生成M個數據塊,并且采用冗余算法對M個數據塊進行校驗編碼,生成N個校驗塊;利用隨機算法確定與M個數據塊和N個校驗塊中的一個塊對應的第一物理存儲節點,并且基于所確定的第一物理存儲節點按照規則的第一排序方式確定至少M+1個不同的物理存儲節點;將M個數據塊和N個校驗塊中的至少M+1個塊分別存儲在至少M+1不同的存儲節點上,K、M和N為整數。本發明專利技術的實施例能夠提高分布式存儲系統的可靠性。

    【技術實現步驟摘要】
    分布式存儲的方法、裝置和系統
    本專利技術涉及數據存儲領域,尤其是涉及一種分布式存儲的方法、裝置和系統。
    技術介紹
    在分布式存儲系統中,為了實現可靠性,采用文件級別的多副本冗余技術,或者采用數據塊級別的冗余編碼技術,例如,糾刪編碼(Erasure Coding)技術。在多副本冗余技術中,可以通過為一份數據文件存儲多份的相同的副本來降低數據丟失的概率,而在冗余編碼技術中,可以通過為文件中的任何局部數據增加校驗塊來提高可靠性。通常,可以采用分布式哈希表(Distributed Hash Table,DHT)對數據塊和校驗塊進行存儲。然而,由于DHT的隨機性,因此無法避免將同一數據切片的多個數據塊部署在同一物理存儲節點上,從而無法避免單一物理存儲節點(例如,機架、服務器、或硬盤時)失效導致數據丟失的風險。例如,采用M+N的糾刪編碼技術,其中M為數據塊個數,N為校驗塊個數,當有N+1個以上的數據塊或校驗塊部署在同一個硬盤上時,該硬盤故障將導致上述M個數據塊的丟失,從而可能導致整個文件不可用。以12+3的冗余存儲機制為例,當4個以上的數據塊丟失時,數據切片會丟失并且無法恢復。換句話說,在現有的分布式存儲系統中,單點(例如,硬盤、服務器或機架)故障可能會導致數據丟失,尤其在分布式存儲系統的規模較小時,故障的風險和概率特別大,從而降低了分布式存儲系統的可靠性。
    技術實現思路
    本專利技術的實施例提供了一種分布式存儲系統和分布式存儲方法、裝置和系統,能夠提高分布式存儲系統的可靠性。第一方面,提供了一種分布式存儲方法,包括:對數據文件進行分割,生成K個數據切片,對K個數據切片中的每個數據切片進行分割,針對每個數據切片生成M個數據塊,并且采用冗余算法對M個數據塊進行校驗編碼,生成N個校驗塊;利用隨機算法確定與M個數據塊或N個校驗塊中的一個數據塊或一個校驗塊對應的第一物理存儲節點,并且基于第一物理存儲節點按照符合預設規則的第一排序方式確定至少M+1個不同的物理存儲節點;將M個數據塊和N個校驗塊中的至少M+1個塊分別存儲在至少M+1不同的物理存儲節點上,K、M和N為正整數。結合第一方面,在第一種可能的實現方式中,上述利用隨機算法確定與M個數據塊或N個校驗塊中的一個數據塊或校驗塊對應的第一物理存儲節點,包括:對M個數據塊或N個校驗塊中的一個數據塊或校驗塊的標識符進行哈希計算生成關鍵值;根據關鍵值確定與M個數據塊或N個校驗塊中的一個數據塊或者校驗塊對應的物理存儲節點,并將物理存儲節點作為的第一物理存儲節點。結合第一方面,在第二種可能的實現方式中,上述利用隨機算法確定與M個數據塊或N個校驗塊中的一個數據塊或校驗塊對應的第一物理存儲節點,包括:對分割成M個數據塊的數據切片的標識符進行哈希計算生成關鍵值;根據關鍵值確定與M個數據塊或N個校驗塊中的一個數據塊或者校驗快對應的物理存儲節點,并將物理存儲節點作為的第一物理存儲節點。結合第一方面或上述任何一種可能的實現方式,在第三種可能的實現方式中,上述基于所確定的第一物理存儲節點按照第一排序方式確定至少M+1個不同的物理存儲節點,包括:基于第一物理存儲節點按照第一排序方式確定M+N個不同的物理存儲節點,其中上述將M個數據塊和N個校驗塊中的至少M+1個塊分別存儲在至少M+1個不同的物理存儲節點上,包括:將M個數據塊和N個校驗塊分別存儲在M+N個不同的物理存儲節點上。結合第一方面或上述任何一種可能的實現方式,在第四種可能的實現方式中,上述基于第一物理存儲節點按照第一排序方式確定至少M+1個不同的物理存儲節點,包括:將所述第一物理存儲節點與所述至少M+1個塊中的I個塊對應,以第一物理存儲節點的位置為基準,按照第一排序方式確定至少M+1個塊中的其它至少M個塊對應的物理存儲節點,其中M+1個不同的物理存儲節點包括第一物理存儲節點;或者,以第一物理存儲節點的位置為基準,按照第一排序方式確定至少M+1個塊對應的物理存儲節點,其中M+1個不同的物理存儲節點不包括第一物理存儲節點。結合第一方面或上述任何一種可能的實現方式,在第五種可能的實現方式中,不同的物理存儲節點為硬盤,硬盤的數目等于或者大于M+1 ;或者,不同的物理存儲節點為服務器,其中服務器的數目等于或者大于M+1 ;或者,不同的物理存儲節點為機架,其中機架的數目等于或者大于M+1。結合第一方面或上述任何一種可能的實現方式,在第六種可能的實現方式中,第一方面的方法還包括:在存儲有M個數據塊和N個校驗塊中的至少M+1個塊的至少M+1個不同的物理存儲節點之一發生故障的情況下,將至少M+1個不同的物理存儲節點中發生故障的物理存儲節點上的數據恢復到物理存儲節點所在的分布式存儲系統中的熱備用存儲節點上。結合第一方面或上述任何一種可能的實現方式,在第七種可能的實現方式中,第一方面的方法還包括:在至少M+1個不同的物理存儲節點中存儲的、按照第一排序方式排序的M個數據塊和N個校驗塊中的第L個塊的物理存儲節點發生故障的情況下,如果L不大于(M+N)/2,則將按照第一排序方式排序的M個數據塊和N個校驗塊中的第L個塊及第L個塊之前的塊依次向沿第一方向相鄰的物理存儲節點搬移,其中第一方向與第一排序方式的順序方向相逆,如果L大于(M+N)/2,則將按照第一排序方式排序的M個數據塊和N個校驗塊中的第L個塊及第L個塊之后的塊依次向沿第二方向相鄰的物理存儲節點搬移,其中第二方向與第一排序方式的順序方向相同;或者,在至少M+1個不同的物理存儲節點中存儲的、按照第一排序方式排序的M個數據塊和N個校驗塊中的第L個塊的物理存儲節點發生故障的情況下,將按照第一排序方式排序的M個數據塊和N個校驗塊中的第L個塊及第L個塊之前的塊依次向沿第一方向相鄰的物理存儲節點搬移;或者,在至少M+1個不同的物理存儲節點中存儲的、按照第一排序方式排序的M個數據塊和N個校驗塊中的第L個塊的物理存儲節點發生故障的情況下,則將按照第一排序方式排序的M個數據塊和N個校驗塊中的第L個塊及第L個塊之后的塊依次向沿第二方向相鄰的物理存儲節點搬移。結合第一方面或上述第一種至第六種可能的實現方式中的任何一種,在第八種可能的實現方式中,第一方面的方法還包括:在至少M+1個不同的物理存儲節點中存儲的、按照第一排序方式排序的M個數據塊和N個校驗塊中的第P個塊的物理存儲節點之后添加新的物理存儲節點的情況下,如果P不大于(M+N)/2,則將按照第一排序方式排序的M個數據塊和N個校驗塊中的第P個塊向新的物理存儲節點搬移,并且將按照第一排序方式排序的M個數據塊和N個校驗塊中第P個塊之前的塊依次向沿第一方向相鄰的物理存儲節點搬移,其中第一方向與第一排序方式的順序方向相同,如果P大于(M+N)/2,則將按照第一排序方式排序的M個數據塊和N個校驗塊中的第P+1個塊向新的物理存儲節點搬移,并將按照第一排序方式排序的M個數據塊和N個校驗塊中第P+1個塊之后的塊依次向沿第二方向相鄰的物理存儲節點搬移,其中第二方向與第一排序方式的順序方向相逆,其中P為整數;或者,在至少M+1個不同的物理存儲節點中存儲的、按照第一排序方式排序的M個數據塊和N個校驗塊中的第P個塊的物理存儲節點之后添加新的物理存儲節點的情況下,將按照第一排序方式排序的M個數據塊和N個校本文檔來自技高網...

    【技術保護點】
    一種分布式存儲方法,其特征在于,包括:對數據文件進行分割,生成K個數據切片,對所述K個數據切片中的每個數據切片進行分割,針對每個數據切片生成M個數據塊,并且采用冗余算法對所述M個數據塊進行校驗編碼,生成N個校驗塊;利用隨機算法確定與所述M個數據塊或N個校驗塊中的一個數據塊或一個校驗塊對應的第一物理存儲節點,并且基于所述第一物理存儲節點按照符合預設規則的第一排序方式確定至少M+1個不同的物理存儲節點;將所述M個數據塊和所述N個校驗塊中的至少M+1個塊分別存儲在所述至少M+1不同的物理存儲節點上,所述K、M和N為正整數。

    【技術特征摘要】
    1.一種分布式存儲方法,其特征在于,包括: 對數據文件進行分割,生成K個數據切片,對所述K個數據切片中的每個數據切片進行分割,針對每個數據切片生成M個數據塊,并且采用冗余算法對所述M個數據塊進行校驗編碼,生成N個校驗塊; 利用隨機算法確定與所述M個數據塊或N個校驗塊中的一個數據塊或一個校驗塊對應的第一物理存儲節點,并且基于所述第一物理存儲節點按照符合預設規則的第一排序方式確定至少M+1個不同的物理存儲節點; 將所述M個數據塊和所述N個校驗塊中的至少M+1個塊分別存儲在所述至少M+1不同的物理存儲節點上,所述K、M和N為正整數。2.根據權利要 求1所述的分布式存儲方法,其特征在于,所述利用隨機算法確定與所述M個數據塊或N個校驗塊中的一個數據塊或校驗塊對應的第一物理存儲節點,包括: 對所述M個數據塊或N個校驗塊中的一個數據塊或校驗塊的標識符進行哈希計算生成關鍵值; 根據所述關鍵值確定與所述M個數據塊或N個校驗塊中的一個數據塊或者校驗塊對應的物理存儲節點,并將所述物理存儲節點作為所述的第一物理存儲節點。3.根據權利要求1所述的分布式存儲方法,其特征在于,所述利用隨機算法確定與所述M個數據塊或N個校驗塊中的一個數據塊或校驗塊對應的第一物理存儲節點,包括: 對分割成所述M個數據塊的所述數據切片的標識符進行哈希計算生成關鍵值; 根據所述關鍵值確定與所述M個數據塊或N個校驗塊中的一個數據塊或者校驗快對應的物理存儲節點,并將所述物理存儲節點作為所述的第一物理存儲節點。4.根據權利要求1至3中的任一項所述的分布式存儲方法,其特征在于,所述基于所確定的第一物理存儲節點按照所述第一排序方式確定至少M+1個不同的物理存儲節點,包括: 基于所述第一物理存儲節點按照所述第一排序方式確定M+N個不同的物理存儲節點, 其中所述將所述M個數據塊和所述N個校驗塊中的至少M+1個塊分別存儲在至少M+1個不同的物理存儲節點上,包括: 將所述M個數據塊和所述N個校驗塊分別存儲在所述M+N個不同的物理存儲節點上。5.根據權利要求1至4中的任一項所述的分布式存儲方法,其特征在于,所述基于所述第一物理存儲節點按照所述第一排序方式確定至少M+1個不同的物理存儲節點,包括: 將所述第一物理存儲節點與所述至少M+1個塊中的I個塊對應,并以所述第一物理存儲節點的位置為基準,按照所述第一排序方式確定所述至少M+1個塊中的其它至少M個塊對應的物理存儲節點,其中所述M+1個不同的物理存儲節點包括所述第一物理存儲節點; 或者, 以所述第一物理存儲節點的位置為基準,按照所述第一排序方式確定所述至少M+1個塊對應的物理存儲節點,其中所述M+1個不同的物理存儲節點不包括所述第一物理存儲節點。6.根據權利要求1至5中的任一項所述的分布式存儲方法,其特征在于,所述不同的物理存儲節點為硬盤,所述硬盤的數目等于或者大于M+1 ; 或者,所述不同的物理存儲節點為服務器,其中所述服務器的數目等于或者大于M+1 ; 或者, 所述不同的物理存儲節點為機架,其中所述機架的數目等于或者大于M+1。7.根據權利要求1至6中的任一項所述的分布式存儲方法,其特征在于,還包括: 在存儲有所述M個數據塊和所述N個校驗塊中的至少M+1個塊的所述至少M+1個不同的物理存儲節點之一發生故障的情況下,將所述至少M+1個不同的物理存儲節點中發生故障的物理存儲 節點上的數據恢復到所述物理存儲節點所在的分布式存儲系統中的熱備用存儲節點上。8.根據權利要求1至6中的任一項所述的分布式存儲方法,其特征在于,還包括: 在所述至少M+1個不同的物理存儲節點中存儲的、按照所述第一排序方式排序的所述M個數據塊和所述N個校驗塊中的第L個塊的物理存儲節點發生故障的情況下,如果L不大于(M+N)/2,則將按照所述第一排序方式排序的所述M個數據塊和所述N個校驗塊中的第L個塊及第L個塊之前的塊依次向沿第一方向相鄰的物理存儲節點搬移,其中所述第一方向與所述第一排序方式的順序方向相逆,如果L大于(M+N)/2,則將按照所述第一排序方式排序的所述M個數據塊和所述N個校驗塊中的第L個塊及第L個塊之后的塊依次向沿第二方向相鄰的物理存儲節點搬移,其中所述第二方向與所述第一排序方式的順序方向相同;或者, 在所述至少M+1個不同的物理存儲節點中存儲的、按照所述第一排序方式排序的所述M個數據塊和所述N個校驗塊中的第L個塊的物理存儲節點發生故障的情況下,將按照所述第一排序方式排序的所述M個數據塊和所述N個校驗塊中的第L個塊及第L個塊之前的塊依次向沿所述第一方向相鄰的物理存儲節點搬移; 或者, 在所述至少M+1個不同的物理存儲節點中存儲的、按照所述第一排序方式排序的所述M個數據塊和所述N個校驗塊中的第L個塊的物理存儲節點發生故障的情況下,則將按照所述第一排序方式排序的所述M個數據塊和所述N個校驗塊中的第L個塊及第L個塊之后的塊依次向沿所述第二方向相鄰的物理存儲節點搬移。9.根據權利要求1至8中的任一項所述的分布式存儲方法,其特征在于,還包括: 在所述至少M+1個不同的物理存儲節點中存儲的、按照所述第一排序方式排序的所述M個數據塊和所述N個校驗塊中的第P個塊的物理存儲節點之后添加新的物理存儲節點的情況下,如果P不大于(M+N)/2,則將按照所述第一排序方式排序的所述M個數據塊和所述N個校驗塊中的所述第P個塊向所述新的物理存儲節點搬移,并且將按照所述第一排序方式排序的所述M個數據塊和所述N個校驗塊中第P個塊之前的塊依次向沿第一方向相鄰的物理存儲節點搬移,其中所述第一方向與所述第一排序方式的順序方向相同,如果P大于(M+N)/2,則將按照所述第一排序方式排序的所述M個數據塊和所述N個校驗塊中的第P+1個塊向所述新的物理存儲節點搬移,并將按照所述第一排序方式排序的所述M個數據塊和所述N個校驗塊中第P+1個塊之后的塊依次向沿第二方向相鄰的物理存儲節點搬移,其中所述第二方向與所述第一排序方式的順序方向相逆,其中所述P為整數; 或者, 在所述至少M+1個不同的物理存儲節點中存儲的、按照所述第一排序方式排序的所述M個數據塊和所述N個校驗塊中的第P個塊的物理存儲節點之后添加新的物理存儲節點的情況下,將按照所述第一排序方式排序的所述M個數據塊和所述N個校驗塊中的第P個塊向所述新的物理存儲節點搬移,并且將按照所述第一排序方式排序的所述M個數據塊和所述N個校驗塊中的第P個塊之前的塊依次向沿所述第一方向相鄰的物理存儲節點搬移; 或者, 在所述至少M+1個不同的物理存儲節點中存儲的、按照所述第一排序方式的所述M個數據塊和所述N個校驗塊中第P個塊所在的物理存儲節點之后添加新的物理存儲節點的情況下,將按照所述第一排序方式排序的所述M個數據塊和所述N個校驗塊中的第P+1個塊向所述新的物理存儲節點搬移,并且將按照所述第一排序方式排序的所述M個數據塊和所述N個校驗塊中的第P+1個塊之后的塊依次向沿所述第二方向相鄰的物理存儲節點搬移。10.根據權利要求1至9中的任一項所述的分布式存儲方法,其特征在于,還包括: 在需要讀取所述數據文件時,利用隨機算法確定與所述M個數據塊或N個校驗塊中的一個數據塊或校驗塊對應的所述第一物理存儲節點,基于所述所確定的所述第一物理存儲節點按照所述第一排序方式確定至少M個不同的物理存儲節點; 從所述至少M個不同的物理存儲節點上讀取至少M個塊,所讀取的M個塊包括所述M個數據塊,或包括所述M個數據塊中的部分數據塊和所述N個校驗塊中的部分校驗塊; 對所述至少M個塊進行解碼和去校驗,生成解碼的M個數據塊,并且對所述解碼的M個數據塊進行合并,生成所述數據文件。11.根據權利要求1至10中的任一項所述的分布式存儲方法,其特征在于,所述數據文件從所述分布式存儲系統外部獲取,或者所述數據文件從所述分布式存儲系統的部分物理存儲節點獲取。12.根據權利要求1至11中的任一項所述的分布式存儲方法,其特征在于,所述冗余算法為糾刪編碼算法,所述隨機算法為分布式哈希表算法。13.根據權利要求1至12中的任一項所述的分布式存儲方法,其特征在于,所述不同的物理存儲節點為分布式存儲系統上的不同的物理存儲節點,所述不同的物理存儲節點中的每個物理存儲節點包括多個虛擬存儲節點,編號連續的虛擬存儲節點按照符合預設規則的第二排序方式部署在不同的物理存儲節點上, 其中所述利用隨機算法確定與所述M個數據塊和N個校驗塊中的一個塊對應的第一物理存儲節點,并且基于所確定的第一物理存儲節點按照所述第一排序方式確定至少M+1個不同的物理存儲節點,包括: 利用隨機算法確定與所述M個數據塊和N個校驗塊中的一個塊對應的所述第一虛擬存儲節點的編號,并且基于所述第一虛擬存儲節點的編號按照所述第一排序方式確定至少M+1個虛擬存儲節點的編號, 其中將所述M個數據塊和所述N個校驗塊中的至少M+1個塊分別存儲在所述至少M+1不同的物理存儲節點上,包括: 將所述M個數據塊 和所述N個校驗塊中的至少M+1個塊分別存儲在所述至少M+1個虛擬存儲節點的編號對應的虛擬存儲節點上。14.根據權利要求...

    【專利技術屬性】
    技術研發人員:馮斌黃澄龔學文
    申請(專利權)人:華為技術有限公司
    類型:發明
    國別省市:廣東;44

    網友詢問留言 已有0條評論
    • 還沒有人留言評論。發表了對其他瀏覽者有用的留言會獲得科技券。

    1
    主站蜘蛛池模板: 亚洲AV永久无码精品水牛影视| 无码人妻熟妇AV又粗又大| 亚洲AV无码不卡无码| 亚洲成a人片在线观看无码专区| 蜜桃成人无码区免费视频网站 | 日韩精品无码免费一区二区三区 | 色视频综合无码一区二区三区| 亚洲中文字幕无码一区 | 亚洲一区二区三区AV无码| 无码夫の前で人妻を侵犯| 精品久久久久久无码人妻热| 亚洲色无码专区一区| 无码h黄动漫在线播放网站| 无码日韩人妻AV一区二区三区| 精品无码久久久久国产动漫3d| 国99精品无码一区二区三区| 免费无码一区二区| 无码毛片内射白浆视频| 性无码一区二区三区在线观看| 国产麻豆天美果冻无码视频| 亚洲aⅴ无码专区在线观看| 国产成人精品无码播放| 中文字幕AV中文字无码亚| AV无码小缝喷白浆在线观看| 狠狠爱无码一区二区三区| 亚洲a∨无码精品色午夜| 无码H黄肉动漫在线观看网站| 久久青青草原亚洲AV无码麻豆| 最新国产AV无码专区亚洲| 国产av无码久久精品| 免费无码一区二区三区蜜桃大| 少妇仑乱A毛片无码| 亚洲中文字幕无码久久| 无码人妻丰满熟妇区BBBBXXXX| AAA级久久久精品无码片| 久久AV高潮AV无码AV| 日韩av无码成人无码免费| 日韩精品中文字幕无码专区| 日韩精品人妻系列无码av东京| 白嫩无码人妻丰满熟妇啪啪区百度| 无码人妻丰满熟妇啪啪网站牛牛|