[發明專利]基于多層一致性哈希的分布式數據存儲方法與系統有效
| 申請號: | 201880005526.5 | 申請日: | 2018-07-10 |
| 公開(公告)號: | CN110169040B | 公開(公告)日: | 2021-09-28 |
| 發明(設計)人: | 郝斌 | 申請(專利權)人: | 深圳花兒數據技術有限公司 |
| 主分類號: | H04L29/08 | 分類號: | H04L29/08;G06F16/13;H04L12/26 |
| 代理公司: | 深圳鼎合誠知識產權代理有限公司 44281 | 代理人: | 彭愿潔;彭家恩 |
| 地址: | 518000 廣東省深圳市前海深港合作區前*** | 國省代碼: | 廣東;44 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 基于 多層 一致性 分布式 數據 存儲 方法 系統 | ||
1.一種基于多層一致性哈希的分布式數據存儲系統,其特征在于,包括:
多個提供數據存儲和冗余保護的存儲節點,所述存儲節點采用分層樹結構,其中父節點的所有直接子節點共享同一哈希空間;
多個維護所述存儲節點屬性及虛擬組-存儲節點映射信息的管理節點,所述虛擬組對應哈希空間的一個分區,即哈希子空間,所述虛擬組-存儲節點映射信息是基于哈希的映射信息,包括:從虛擬組到合格存儲節點列表的映射信息,從虛擬組和故障存儲節點到故障存儲節點對應替換節點的映射信息;其中,所述合格存儲節點列表由主節點和一個或多個輔助節點組成;
多個維護所述存儲節點狀態,處理所述存儲節點的狀態變化的監控節點,所述存儲節點的狀態變化包括存儲節點的添加、刪除和故障,所述監控節點根據虛擬組的合格存儲節點列表檢索存儲節點狀態,所述主節點和輔助節點互相上報對方的故障消息;和
一個或多個提供應用程序或用戶訪問存儲系統接入點的客戶端,所述客戶端用于發起對象訪問請求,并使用兩階段映射找到與此對象相對應的主節點,其中第一映射是將對象映射到作為對象容器的虛擬組,第二映射是將虛擬組映射到合格節點列表,由此實現對象訪問方法,包括:
對象寫入過程:所述客戶端將新對象上傳到存儲系統;
對象讀取過程:所述客戶端從所述存儲系統下載對象;
對象更新過程:所述客戶端修改所述存儲系統中的已有對象;
對象刪除過程:所述客戶端從所述存儲系統中刪除已有對象。
2.根據權利要求1所述的系統,其特征在于,所述存儲節點的屬性包括:節點標識,父節點標識,層級類型,存儲節點容量權重值、節點虛擬標識、節點所屬主機標識、節點所屬機架標識、節點所屬集群標識、IP、Port和節點狀態,其中,根據所述存儲節點容量權重值設置所述節點虛擬標識的數量。
3.根據權利要求1所述的系統,其特征在于,所述分層樹的每一層都是其直接子節點的父層,父節點權重等于其所有直接子節點權重總和。
4.根據權利要求1所述的系統,其特征在于,所述監控節點作為協調者處理所述存儲節點的狀態變更。
5.根據權利要求1所述的系統,其特征在于,所述客戶端始終將包含對象操作的請求發送給主節點,所述主節點將請求重組并轉發到同一合格節點列表中的輔助節點,所述客戶端與所述主節點、所述主節點與所述輔助節點之間采用消息機制。
6.根據權利要求1所述的系統,其特征在于,每個虛擬組的合格存儲節點列表由兩種方法產生:
所述主節點選擇:以深度優先搜索的方式從集群層次結構中的根節點到葉節點選擇節點;
所述輔助節點選擇:使用存儲規則作為修剪策略,以深度優先搜索的方式從所述集群層次結構中的根節點到葉節點逐個選擇所述輔助節點。
7.根據權利要求6所述的系統,其特征在于,所述存儲規則包括:
用于定義故障保護域的故障域級別;
為虛擬組或對象定義每個層中存儲的副本/塊的最大數量的存儲策略;
定義用于選擇節點的系統設置的負載均衡參數。
8.根據權利要求1所述的系統,其特征在于,所述存儲節點以兩種方式通過心跳消息交換其狀態:
在進行數據傳輸時,從主節點到輔助節點的轉發請求同時被視為心跳包;
空閑時,不包含任何對象數據的從所述主節點到所述輔助節點消息將用作心跳包,所述輔助節點向所述主節點發送回復以聲明處于在線狀態。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于深圳花兒數據技術有限公司,未經深圳花兒數據技術有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201880005526.5/1.html,轉載請聲明來源鉆瓜專利網。





