云计算DHT分布式存储
因為DHT包含多種存儲模式,因為學習需要,這里暫時只講解chord,這個也是相對比較簡單的
首先使用的hash格式數據<key,value>
key是關鍵字,用來作為尋找節點,即通過K=hash(key),然后查找K來找出存儲節點信息表
value是包含了數據存儲的具體節點信息,例如IP等
接下來是看是如何查找的:
1、有以下節點N1,N8,N14,N21,N32,N38,N42,N48,N51,N56,每個節點都存有一張大小為8的finger表,前面三個指向附近節點,后面指向遠處節點
2、我們要查找K54(即K=hash(key)=54)
3、初始查找節點為N8
4、記住,節點查找規則是由遠及近,首先對于newnode=N8+32---->42節點,符合8<newnode<54,所以跳到當前節點,繼續查找(注,這里的大小符號僅僅指范圍,并非真的只是數字大小)
5、newnode=N42+32----->14,顯然不符合42<newnode<54,繼續newnode=N42+16----->1,依舊不符合,再繼續newnode=N42+8---->51,符合,調到51節點繼續查找
6、最終發現在N51節點到N56節點之間,所以節點信息在N56查找到Value,再通過value上的信息直接找到數據存儲的物理位置。
關于刪增節點
最重要的是維護好后繼節點,與前序節點
這里暫不詳述。
轉載于:https://www.cnblogs.com/gambler/p/9148974.html
總結
以上是生活随笔為你收集整理的云计算DHT分布式存储的全部內容,希望文章能夠幫你解決所遇到的問題。