[發明專利]分布式存儲系統中的數據重建的方法、裝置和系統有效
| 申請號: | 201580044798.2 | 申請日: | 2015-12-31 |
| 公開(公告)號: | CN106662983B | 公開(公告)日: | 2019-04-12 |
| 發明(設計)人: | 曾永強 | 申請(專利權)人: | 華為技術有限公司 |
| 主分類號: | G06F3/06 | 分類號: | G06F3/06 |
| 代理公司: | 北京中博世達專利商標代理有限公司 11274 | 代理人: | 申健 |
| 地址: | 518129 廣東*** | 國省代碼: | 廣東;44 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 分布式 存儲系統 中的 數據 重建 方法 裝置 系統 | ||
一種分布式存儲系統中的數據重建的方法、裝置和系統。分布式存儲系統中的主存儲節點對待寫入數據進行EC編碼,生成EC條帶,將EC條帶中的各個EC塊分別存儲在各個存儲節點上,當部分存儲節點由于故障導致寫入EC塊失敗時,主存儲節點將分配給寫入失敗的存儲節點的EC塊存儲在本地,并生成數據重建所需的元數據信息,當存儲節點故障恢復后,主存儲節點將存儲的分配給寫入失敗的存儲節點的EC塊以及該EC塊對應的元數據信息重新發送給該存儲節點,以使得故障恢復后的該存儲節點完成數據重建。本申請提供的分布式存儲系統中的數據重建的方案,當部分存儲節點故障時,無需執行EC反編碼以恢復故障節點上的數據,而是由主存儲節點緩存分配給故障節點的EC塊,再故障節點恢復后再將緩存的EC塊重新發送給故障節點進行數據重建。避免了存儲節點故障恢復進行數據重建時執行EC反編碼帶來的計算資源消耗,同時也避免了執行EC反編碼時傳遞大量數據帶來的網絡資源消耗。
技術領域
本發明涉及IT技術領域,尤其涉及分布式存儲系統中的數據重建的方法、裝置和系統。
背景技術
存儲系統中,為了保證數據的安全,通常使用多副本存儲技術來實現數據的冗余備份。多副本冗余技術就是對一份數據同時存儲多份相同的副本,當一份數據丟失時,可以通過其他副本的數據將丟失的數據恢復出來,從而降低數據丟失的概率。副本個數的增加將會大大增加系統存儲空間和網絡帶寬的消耗,從而增加數據存儲的成本。如兩副本情況下,用戶真正可用空間是整個系統總存儲空間的50%,而在三副本的情況下,用戶真正可用空間則只有33%。
由于多副本存儲技術存在存儲空間浪費的缺點,現階段的分布式存儲系統越來越多的采用糾刪碼(EC,Erasure Code)技術對數據進行存儲。目前在存儲領域廣泛應用的是Reed-Solomen類糾刪碼,具體原理是,將數據分割成m個數據塊,采用冗余算法對m個數據塊進行校驗編碼,用編碼矩陣和m個數據塊做乘法運算,從而生成k個校驗塊,該m個數據塊與k個校驗塊組成一個EC條帶。由于矩陣運算是可逆,當EC條帶中的m+k個塊中小于或等于k個塊丟失時,均可以還原丟失的塊中的數據。
相對副本而言,糾刪碼的編碼技術無疑對存儲空間利用率帶來很大提升,但由于引入額外的編碼、解碼運算,對分布式存儲系統的計算能力帶來額外的要求。
發明內容
本申請描述了一種分布式存儲系統中的數據重建的方法、裝置和系統,解決了故障節點恢復后重建故障節點上的數據的問題,無需使用EC反編碼的方式來恢復數據,降低了計算資源以及網絡資源的消耗。
一方面,本發明實施例提供了一種分布式存儲系統中數據重建的方法,第一存儲節點獲取待寫入數據,確定所述待寫入數據的key值,刷新所述key值對應的版本號,對所述待寫入數據進行EC編碼,生成EC條帶,所述EC條帶包括m+k個EC塊,其中m個EC塊為數據塊,k個EC塊為校驗塊,m為大于等于2的正整數,k為自然數;第一存儲節點查詢分區視圖,確定所述待寫入數據所在的分區對應的第二存儲節點,所述第一存儲節點為所述分區對應的主存儲節點,所述第二存儲節點為所述分區對應的備存儲節點;所述第一存儲節點向所述第二存儲節點發送寫入請求,所述寫入請求攜帶所述待寫入數據所在的分區標識(ID)、所述待寫入數據的key值和版本號,以及分配給所述第二存儲節點的EC塊的數據、塊內數據偏移和塊內數據長度;第一存儲節點確定所述第二存儲節點寫入失敗,存儲所述分配給所述第二存儲節點的EC塊的數據,生成與所述分配給所述第二存儲節點的EC塊對應的元數據信息,所述元數據信息包括所述待寫入數據所在的分區的分區ID、所述待寫入數據的key值和版本號,以及分配給所述第二存儲節點的EC塊的塊內數據偏移和塊內數據長度;當所述第二存儲節點故障恢復后,所述第一存儲節點將存儲的所述分配給所述第二存儲節點的EC塊的數據以及所述元數據信息發送給所述第二存儲節點,以使得所述第二存儲節點進行數據重建。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于華為技術有限公司,未經華為技術有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201580044798.2/2.html,轉載請聲明來源鉆瓜專利網。
- 數據顯示系統、數據中繼設備、數據中繼方法、數據系統、接收設備和數據讀取方法
- 數據記錄方法、數據記錄裝置、數據記錄媒體、數據重播方法和數據重播裝置
- 數據發送方法、數據發送系統、數據發送裝置以及數據結構
- 數據顯示系統、數據中繼設備、數據中繼方法及數據系統
- 數據嵌入裝置、數據嵌入方法、數據提取裝置及數據提取方法
- 數據管理裝置、數據編輯裝置、數據閱覽裝置、數據管理方法、數據編輯方法以及數據閱覽方法
- 數據發送和數據接收設備、數據發送和數據接收方法
- 數據發送裝置、數據接收裝置、數據收發系統、數據發送方法、數據接收方法和數據收發方法
- 數據發送方法、數據再現方法、數據發送裝置及數據再現裝置
- 數據發送方法、數據再現方法、數據發送裝置及數據再現裝置





