国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      一種適用于云存儲系統(tǒng)的元數(shù)據(jù)分布式存儲方法

      文檔序號:6634402閱讀:978來源:國知局
      一種適用于云存儲系統(tǒng)的元數(shù)據(jù)分布式存儲方法
      【專利摘要】本發(fā)明提供一種適用于云存儲系統(tǒng)的元數(shù)據(jù)分布式存儲方法,該方法通過SHA-1算法對數(shù)據(jù)塊進行簽名運算,并對運算后的數(shù)據(jù)塊進行分布式存儲;再通過映射方法將數(shù)據(jù)塊和元數(shù)據(jù)進行混合存儲。本發(fā)明解決了傳統(tǒng)元數(shù)據(jù)存儲需要專門元數(shù)據(jù)服務器的問題,通過該方法可以直接把元數(shù)據(jù)的存儲與塊數(shù)據(jù)存儲合并,不僅提高了元數(shù)據(jù)的安全性和可擴展性,也避免了因元數(shù)據(jù)單點失效而導致整個存儲網(wǎng)絡不能使用的問題。
      【專利說明】一種適用于云存儲系統(tǒng)的元數(shù)據(jù)分布式存儲方法

      【技術(shù)領域】
      [0001]本發(fā)明涉及網(wǎng)絡數(shù)據(jù)存儲領域,具體涉及一種適用于云存儲系統(tǒng)的元數(shù)據(jù)分布式存儲方法。

      【背景技術(shù)】
      [0002]現(xiàn)有GFS(G00gle File System)文件系統(tǒng)主要由元數(shù)據(jù)服務器和數(shù)據(jù)塊服務器組成,其中元數(shù)據(jù)服務器是集中化存儲,由于元數(shù)據(jù)的重要性,所以不得不對元數(shù)據(jù)服務器進行再集群或鏡像。隨著云存儲技術(shù)的進步,無中心的分布式網(wǎng)絡也被應用于持久存儲,但是元數(shù)據(jù)的分布式存儲成為了難題,在元數(shù)據(jù)集中化存儲過程中存在以下技術(shù)問題:1)需要專門的元數(shù)據(jù)服務器;2)元數(shù)據(jù)本地存儲不易于擴展:在海量數(shù)據(jù)存儲環(huán)境下,本地的元數(shù)據(jù)容量會隨著數(shù)據(jù)量的增長而膨脹,這時候,元數(shù)據(jù)服務器的整體性能、內(nèi)存與硬盤空間就會成為瓶頸。3)為了防止單點失效而對元數(shù)據(jù)服務器進行集群。


      【發(fā)明內(nèi)容】

      [0003]為了解決解決了元數(shù)據(jù)集中化存儲所帶來的以上技術(shù)問題:本發(fā)明涉及一種適用于云存儲系統(tǒng)的兀數(shù)據(jù)分布式存儲方法。
      [0004]本發(fā)明解決上述技術(shù)問題的技術(shù)方案是:
      [0005]一種適用于云存儲系統(tǒng)的元數(shù)據(jù)分布式存儲方法,包括以下步驟:(a)通過SHA-1算法對數(shù)據(jù)塊進行簽名運算;(b)對運算后的數(shù)據(jù)塊進行分布式存儲;(c)通過映射方法將數(shù)據(jù)塊和元數(shù)據(jù)進行混合存儲;所述步驟(c)包括:(cl)對每個訪問的客戶端分配唯一的編號i ; (c2)設定該客戶要訪問一個對象表object的第j條記錄;(c3)根據(jù)編號i和對象表object的第j條記錄構(gòu)造出一個地址字符串meta.1.0bject, j ; (c4)將構(gòu)造出的地址字符串進行SHA-1運算,得到一個指向混合數(shù)據(jù)塊的摘要KEY ;(c5)將得到的摘要KEY通過映射方法f (key) — N找到相應服務器,并寫入存儲網(wǎng)絡,當寫入數(shù)據(jù)塊時,僅當數(shù)據(jù)塊不存在時,才寫入存儲網(wǎng)絡;(c6)將存儲網(wǎng)絡中所寫入的混合數(shù)據(jù)塊的操作結(jié)果進行返回。
      [0006]進一步地,所述步驟(c5)中,當寫入元數(shù)據(jù)時,總是以覆蓋的方式寫入存儲網(wǎng)絡。
      [0007]進一步地,當數(shù)據(jù)塊存在時,把數(shù)據(jù)塊對應的摘要KEY的引用計數(shù)器加1。
      [0008]本發(fā)明具有以下優(yōu)點:
      [0009]1、通過元數(shù)據(jù)的分布式存儲,使得元數(shù)據(jù)與數(shù)據(jù)塊可以同時混合存儲,并具備與數(shù)據(jù)塊有相同的冗余度,解決了元數(shù)據(jù)集中化存儲帶來的瓶頸問題,降低了元數(shù)據(jù)損壞的風險性;當增加更多存儲服務器時,元數(shù)據(jù)可以與數(shù)據(jù)存儲同步擴展。
      [0010]2、該發(fā)明解決了傳統(tǒng)元數(shù)據(jù)存儲需要專門元數(shù)據(jù)服務器的問題,直接把元數(shù)據(jù)的存儲與塊數(shù)據(jù)存儲合并,提高了元數(shù)據(jù)的安全性和可擴展性,即元數(shù)據(jù)的冗余度與擴展性保持與數(shù)據(jù)塊存儲一致,避免了因元數(shù)據(jù)單點失效而導致整個存儲網(wǎng)絡不能使用的問題。

      【具體實施方式】
      [0011]以下結(jié)合實施例對本發(fā)明作進一步詳細說明,但這些實施例不得用于解釋對本發(fā)明保護范圍的限制。
      [0012]實施例1:
      [0013]本發(fā)明提供的一種適用于云存儲系統(tǒng)的元數(shù)據(jù)分布式存儲方法,通過元數(shù)據(jù)的分布式存儲,使得元數(shù)據(jù)與數(shù)據(jù)塊可以同時混合存儲,并具備與數(shù)據(jù)塊有相同的冗余度,解決了元數(shù)據(jù)集中化存儲帶來的瓶頸問題,降低了元數(shù)據(jù)損壞的風險性;當增加更多存儲服務器時,元數(shù)據(jù)可以與數(shù)據(jù)存儲同步擴展,本方法包括以下步驟:
      [0014]步驟1:通過SHA-1算法對數(shù)據(jù)塊進行簽名運算,并對運算后的數(shù)據(jù)塊進行存儲;
      [0015]步驟2:通過映射方法將數(shù)據(jù)塊和元數(shù)據(jù)進行混合存儲。第一步,對每個訪問的客戶端分配唯一的編號i ;第二步,設定該客戶要訪問一個對象表object的第j條記錄;第三步,根據(jù)編號i和對象表object的第j條記錄構(gòu)造出一個地址字符串meta.1.0bject, j ;第四步,將構(gòu)造出的地址字符串進行SHA-1運算,并得到一個指向混合數(shù)據(jù)塊的摘要KEY ;第五步,將得到的摘要KEY通過f (key) — N找到相應服務器,寫入操作:僅當數(shù)據(jù)塊不存在時,才寫入存儲網(wǎng)絡;當寫入元數(shù)據(jù)時,總是以覆蓋的方式寫入存儲網(wǎng)絡;當數(shù)據(jù)塊存在時,把數(shù)據(jù)塊對應的摘要KEY的引用計數(shù)器加1 ;前進到第六步。讀取操作:直接讀取混合數(shù)據(jù)塊,前進到第七步。第六步:將寫入的的操作結(jié)果進行返回;第七步:讀取混合數(shù)據(jù)塊的元數(shù)據(jù)部分。
      [0016]實現(xiàn)上述步驟1中基于分布式哈希算法(DHT)的存儲系統(tǒng),首先對一個數(shù)據(jù)塊進行SHA-1簽名運算,到一個簽名(或摘要),本申請中稱之為KEY,對一個數(shù)據(jù)塊的操作分為三個基本操作:Put寫入,Get讀出,Del刪除。然后通過尋址方法f,使得給定一個Key,就可以定位到用于存儲該該數(shù)據(jù)塊的服務器,表示為:f(KEY) —N;最簡單的可以采用模運算。如現(xiàn)共有8臺存儲服務器,通過計算一個數(shù)據(jù)塊的Key,它的值等于10,尋址過程就是10對8取模,即10除以8的余數(shù)為2,最后把該數(shù)據(jù)塊存儲于節(jié)點2上。
      [0017]讀取過程的讀取方法與普通數(shù)據(jù)塊的讀取過程一致,其區(qū)別是普通數(shù)據(jù)塊讀取時只考慮返回混合數(shù)據(jù)塊的“數(shù)據(jù)塊部分”,而元數(shù)據(jù)只考慮返回混合數(shù)據(jù)塊的“元數(shù)據(jù)部分”。該方法中,通過映射方法實現(xiàn)元數(shù)據(jù)與數(shù)據(jù)塊混合存儲,并解決可能存在的沖突。具體為:首先為每個訪問的客戶端分配唯一的編號i,其次假定該客戶要訪問一個對象表(object)的第j條記錄,然后構(gòu)造出一個地址字符串:meta.1.0bject, j,最后對該字符串進行SHA-1運算,得到一個摘要KEY。其中構(gòu)造出的地址字符串,實際為一個特殊的小數(shù)據(jù)塊,因此,該小數(shù)據(jù)塊有可能已經(jīng)存在于存儲網(wǎng)絡中。當將KEY指向的內(nèi)容當元數(shù)據(jù)存儲時,另外一個用戶卻把這個KEY指向的內(nèi)容當普通數(shù)據(jù)塊,兩個用戶同時對此KEY進行讀寫操作時,就會產(chǎn)生不一致的情況,即沖突,后寫入的一方就會把前面寫入的內(nèi)容覆蓋。為了能夠借用這個特定的地址來存儲元數(shù)據(jù),解決此沖突,具體操作流程中,僅當數(shù)據(jù)塊不存在時,才寫入存儲網(wǎng)絡;當寫入元數(shù)據(jù)時,總是以覆蓋的方式寫入存儲網(wǎng)絡;當數(shù)據(jù)塊存在時,把數(shù)據(jù)塊對應的摘要KEY的引用計數(shù)器加1。
      [0018]“混合數(shù)據(jù)塊”中可以看出元數(shù)據(jù)其實是借用了數(shù)據(jù)塊的地址,然后把元數(shù)據(jù)附加在原來的數(shù)據(jù)塊后面。所以,服務器上的數(shù)據(jù)塊內(nèi)容由“原始數(shù)據(jù)塊”和“元數(shù)據(jù)”兩部分組成。對于數(shù)據(jù)塊的存取,只需要訪問混合數(shù)據(jù)塊的“數(shù)據(jù)塊”部分,而對元數(shù)據(jù)的訪問,則只要訪問“元數(shù)據(jù)”部分。元數(shù)據(jù)在產(chǎn)生的時候,一并生成了兩部分,數(shù)據(jù)塊部分就是元數(shù)據(jù)地址字符串本身:meta.1.0bject, j。
      [0019]為了更清楚地說明該元數(shù)據(jù)分布式存儲方法,以下舉例說明,編號為100的客戶端,要寫入對象表(object)的第5條記錄的過程,具體步驟如下:
      [0020]步驟1、構(gòu)造元數(shù)據(jù)地址字符串:meta.100.0bject.5 ;
      [0021]步驟2、對 meta.100.0bject.5 做 SHA-1 簽名運算,即:
      [0022]SHA1( “meta.100.0bject.5”)= 41554EC52FAE35B9F5FDA5EF2ABE805916CB6EFB
      [0023]步驟3、現(xiàn)在要寫入一條對象(object)記錄信息如下:
      [0024]字段值ID 5NAME 張三 TEL 138xxxxxxxx
      [0025]步驟4、構(gòu)造數(shù)據(jù):
      [0026]步驟5、按照生成的KEY:
      [0027]41554EC52FAE35B9F5FDA5EF2ABE805916CB6EFB,找到相應的存儲節(jié)點,f(key) — N(比如映射到2號存儲服務器)。
      [0028]步驟6、向目標存儲服務器以覆蓋方式寫入已構(gòu)造好的混合數(shù)據(jù)塊。
      [0029]步驟7、完成存儲。
      [0030]本申請采用元數(shù)據(jù)分布式存儲方法解決了傳統(tǒng)元數(shù)據(jù)存儲需要專門元數(shù)據(jù)服務器的問題,通過該方法可以直接把元數(shù)據(jù)的存儲與塊數(shù)據(jù)存儲合并,提高了元數(shù)據(jù)的安全性和可擴展性,即元數(shù)據(jù)的冗余度與擴展性保持與數(shù)據(jù)塊存儲一致,避免了因元數(shù)據(jù)單點失效而導致整個存儲網(wǎng)絡不能使用的問題。也解決了無中心分布式云存儲環(huán)境下元數(shù)據(jù)存儲的難題。以上所述僅是本發(fā)明的優(yōu)選實施方式,本發(fā)明的保護范圍并不僅局限于上述實施例,凡屬于本發(fā)明思路下的技術(shù)方案均屬于本發(fā)明的保護范圍。應當指出,對于本【技術(shù)領域】的普通技術(shù)人員來說,在不脫離本發(fā)明原理前提下的若干改進和潤飾,這些改進和潤飾也應視為本發(fā)明的保護范圍。
      【權(quán)利要求】
      1.一種適用于云存儲系統(tǒng)的元數(shù)據(jù)分布式存儲方法,其特征在于包括以下步驟:(a)通過SHA-1算法對數(shù)據(jù)塊進行簽名運算;(b)對運算后的數(shù)據(jù)塊進行分布式存儲;(c)通過映射方法將數(shù)據(jù)塊和元數(shù)據(jù)進行混合存儲;所述步驟(c)包括:(cl)對每個訪問的客戶端分配唯一的編號i ; (c2)設定該客戶要訪問一個對象表object的第j條記錄;(c3)根據(jù)編號i和對象表object的第j條記錄構(gòu)造出一個地址字符串meta.1.0bject, j ; (c4)將構(gòu)造出的地址字符串進行SHA-1運算,得到一個指向混合數(shù)據(jù)塊的摘要KEY ;(c5)將得到的摘要KEY通過映射方法f (key) — N找到相應服務器,并寫入存儲網(wǎng)絡,當寫入數(shù)據(jù)塊時,僅當數(shù)據(jù)塊不存在時,才寫入存儲網(wǎng)絡;(c6)將存儲網(wǎng)絡中所寫入的混合數(shù)據(jù)塊的操作結(jié)果進行返回。
      2.根據(jù)權(quán)利要求2或3所述的一種適用于云存儲系統(tǒng)的元數(shù)據(jù)分布式存儲方法,其特征在于:所述步驟(c5)中,當寫入元數(shù)據(jù)時,總是以覆蓋的方式寫入存儲網(wǎng)絡。
      3.根據(jù)權(quán)利要求3所述的一種適用于云存儲系統(tǒng)的元數(shù)據(jù)分布式存儲方法,其特征在于:當數(shù)據(jù)塊存在時,把數(shù)據(jù)塊對應的摘要KEY的引用計數(shù)器加I。
      【文檔編號】G06F17/30GK104378431SQ201410650440
      【公開日】2015年2月25日 申請日期:2014年11月14日 優(yōu)先權(quán)日:2014年11月14日
      【發(fā)明者】陳迎東 申請人:青島龍?zhí)┨煜柰ㄐ趴萍加邢薰?br>
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評論。精彩留言會獲得點贊!
      1