[發(fā)明專利]基于分布式哈希表和糾刪碼的數(shù)據(jù)存儲方法在審
| 申請?zhí)枺?/td> | 201310480833.8 | 申請日: | 2013-10-15 |
| 公開(公告)號: | CN103561057A | 公開(公告)日: | 2014-02-05 |
| 發(fā)明(設(shè)計)人: | 陳康;高品;周佳祥 | 申請(專利權(quán))人: | 深圳清華大學(xué)研究院 |
| 主分類號: | H04L29/08 | 分類號: | H04L29/08 |
| 代理公司: | 深圳市鼎言知識產(chǎn)權(quán)代理有限公司 44311 | 代理人: | 孔麗霞 |
| 地址: | 518057 廣東省深圳市南山區(qū)高*** | 國省代碼: | 廣東;44 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 基于 分布式 哈希表 糾刪碼 數(shù)據(jù) 存儲 方法 | ||
1.一種基于分布式哈希表和糾刪碼的數(shù)據(jù)存儲方法,其特征在于,該方法包括如下步驟:
節(jié)點創(chuàng)建步驟:?通過分布式哈希表建立各服務(wù)器節(jié)點的拓?fù)溥壿嫿Y(jié)構(gòu),并通過一致性哈希算法,確定各個鍵key對應(yīng)的block塊所在的服務(wù)器的位置;
數(shù)據(jù)寫入步驟:?客戶端采用糾刪碼對原始數(shù)據(jù)進(jìn)行編碼,將每個鍵對應(yīng)的block塊編碼為若干個chunk塊,并通過寫操作將編碼后的若干個chunk塊存儲到多個服務(wù)器節(jié)點,其中,該若干個chunk塊包含預(yù)定數(shù)量的數(shù)據(jù)冗余塊;及
數(shù)據(jù)維護(hù)步驟:?每隔預(yù)設(shè)時間間隔,通過基于分布式哈希表的協(xié)議檢測服務(wù)器節(jié)點的增加和刪除,并依據(jù)糾刪碼的方式計算各個chunk塊所在的服務(wù)器節(jié)點的位置,維護(hù)數(shù)據(jù)冗余塊的個數(shù)保持在該預(yù)定數(shù)量。
2.如權(quán)利要求1所述的基于分布式哈希表和糾刪碼的數(shù)據(jù)存儲方法,其特征在于:
每個節(jié)點的服務(wù)器中存儲有一個路由表和一個數(shù)據(jù)塊表;
所述路由表存儲各個鍵對應(yīng)的block塊所在服務(wù)器的路由信息,將該block塊對應(yīng)的鍵key的id稱為RID,將服務(wù)器的id稱為NID;
所述數(shù)據(jù)塊表存儲block塊的基本信息、chunk塊的基本信息和chunk塊在服務(wù)器的文件系統(tǒng)中的存儲路徑。
3.如權(quán)利要求2所述的基于分布式哈希表和糾刪碼的數(shù)據(jù)存儲方法,其特征在于:
所述block塊的基本信息通過以下方式記錄,以block塊標(biāo)識block-ID為鍵key,以block塊對應(yīng)的最新的版本block-Version為值value;
所述chunk塊的基本信息通過以下方式記錄,以block-ID?+?$?+?block-Version+?$?+?chunk塊標(biāo)識chunk-ID?為鍵key,以chunk塊在服務(wù)器的文件系統(tǒng)中的存儲路徑為值value,其中,$為分割各個屬性的分割字符。
4.如權(quán)利要求2所述的基于分布式哈希表和糾刪碼的數(shù)據(jù)存儲方法,其特征在于:
所述路由表中,以當(dāng)前服務(wù)器的NID+2^Nk為鍵key,將這個key作為一個RID,以維護(hù)這個RID對應(yīng)的服務(wù)器編號NID為value,Nk取值為從0到log2(N),N為系統(tǒng)中服務(wù)器節(jié)點的個數(shù)。
5.如權(quán)利要求1所述的基于分布式哈希表和糾刪碼的數(shù)據(jù)存儲方法,其特征在于,?所述數(shù)據(jù)寫入步驟包括:
客戶端將block塊通過糾刪碼,產(chǎn)生m個chunk塊,其中,數(shù)據(jù)冗余塊為m-k個,m和k為預(yù)設(shè)值;
通過基于分布式哈希表的協(xié)議,從路由表中查找到鍵key對應(yīng)的服務(wù)器s1;
將第一個chunk塊傳輸?shù)綄?yīng)的服務(wù)器上,依次將后續(xù)的chunk塊傳輸?shù)絪1的后繼節(jié)點列表上;及
在數(shù)據(jù)塊表中更新block塊對應(yīng)的版本號。
6.如權(quán)利要求1所述的基于分布式哈希表和糾刪碼的數(shù)據(jù)存儲方法,其特征在于,?該方法還包括:
數(shù)據(jù)讀取步驟:?當(dāng)客戶端讀取一個指定鍵key對應(yīng)的block塊時,根據(jù)該指定鍵的鍵值通過讀操作從相應(yīng)的服務(wù)器節(jié)點中獲取若干個chunk塊,利用糾刪碼對獲取的若干個chunk塊進(jìn)行解碼,將獲取的若干個chunk塊還原成block塊。
7.如權(quán)利要求6所述的基于分布式哈希表和糾刪碼的數(shù)據(jù)存儲方法,其特征在于,所述數(shù)據(jù)讀取步驟包括:
通過基于分布式哈希表的協(xié)議,從路由表中找到對應(yīng)的管理該指定鍵key對應(yīng)block塊的服務(wù)器s1;
從數(shù)據(jù)塊表中獲取當(dāng)前block塊最新的版本號;
從s1及其后繼節(jié)點列表中選取k個節(jié)點,每個節(jié)點根據(jù)數(shù)據(jù)塊表中記錄的信息,查找到block塊標(biāo)識和block塊最新版本對應(yīng)的chunk塊在服務(wù)器的文件系統(tǒng)中的存儲路徑,將對應(yīng)的chunk塊返回給客戶端;及
客戶端獲取k個chunk塊,利用糾刪碼對該k個chunk塊進(jìn)行解碼,將該k個chunk塊還原成block塊。
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于深圳清華大學(xué)研究院,未經(jīng)深圳清華大學(xué)研究院許可,擅自商用是侵權(quán)行為。如果您想購買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201310480833.8/1.html,轉(zhuǎn)載請聲明來源鉆瓜專利網(wǎng)。
- 使用哈希表森林?jǐn)?shù)據(jù)結(jié)構(gòu)的分組分類方法與裝置
- 一種哈希表動態(tài)適應(yīng)數(shù)據(jù)的方法及裝置
- 訪問哈希表的裝置和方法
- 一種生成哈希連接表的方法及裝置
- 用于管理哈希表的方法、設(shè)備和計算機(jī)程序產(chǎn)品
- 哈希表修復(fù)方法及裝置
- 一種哈希沖突的處理方法、裝置及計算機(jī)可讀存儲介質(zhì)
- 搜索目標(biāo)鍵的方法、系統(tǒng)和非暫時性計算機(jī)可讀介質(zhì)
- 一種基于硬件實現(xiàn)的哈希表結(jié)構(gòu)以及插入、查詢和刪除方法
- 一種動態(tài)哈希方法、裝置、設(shè)備及存儲介質(zhì)
- 發(fā)送裝置及發(fā)送方法
- 一種存儲系統(tǒng)糾刪碼編碼、解碼電路及編解碼電路
- 基于NVRAM存儲系統(tǒng)直接糾刪碼的優(yōu)化方法和系統(tǒng)
- 一種數(shù)據(jù)存儲、重構(gòu)方法和裝置、及電子設(shè)備
- 一種通過糾刪碼對數(shù)據(jù)的處理方法及裝置
- 一種基于糾刪碼的糾刪池的創(chuàng)建方法及相關(guān)裝置
- 一種糾刪碼讀請求處理方法、系統(tǒng)、設(shè)備及計算機(jī)介質(zhì)
- 數(shù)據(jù)操作方法、裝置和分布式存儲系統(tǒng)
- 一種基于糾刪碼的新媒體圖像的篡改恢復(fù)方法及裝置
- 一種數(shù)據(jù)處理方法、裝置、設(shè)備及介質(zhì)





