買以太坊 買以太坊
Ctrl+D 買以太坊
ads
首頁 > 屎幣 > Info

PIN:IPFS存儲一致性難題?IPFS-Cluster幫你解決_Interstellar AI

Author:

Time:1900/1/1 0:00:00

引?言

星際文件系統是一個旨在創建持久且分布式存儲和共享文件的網絡傳輸協議。它是一種內容可尋址的點對點超媒體分發協議。在IPFS網絡中的節點將構成一個分布式文件系統。

在IPFS網絡中,文件是拆分后存儲在不同節點的,每個節點存儲的內容并不相同,當我們使用IPFS私有網絡來作為系統的文件系統時就存在存儲一致性問題,如單個節點的故障導致存儲的文件不可用。

IPFS-Cluster項目很好地解決了私有IPFS網絡數據可用性問題,IPFS-Cluster通過給IPFS網絡添加一層分布式共識協議,從而保證IPFS集群節點存儲內容的一致性。IPFS-Cluster也是分布式的系統,附加在IPFS節點之上,通過維護全局一致Pinset并和IPFS交互來構建一致性存儲。

圖1?IPFS-Cluster示意圖

IPFS-Cluster架構介紹

IPFS-Cluste是由各功能組件構成的,所以首先需要對組件化及各組件功能進行簡單介紹;然后介紹使用IPFS-Cluster進行文件Pin操作的工作流程,與IPFSPin文件工作流程進行對比;Consensus組件是IPFS-Cluster能夠完成分布式一致性存儲的核心,最后會介紹基于“Raft”的強一致性分布式共識組件,和基于“Merkle-CRDT”的最終一致性共識組件。

WhyLab探索實驗室Shawn:IPFS+Filecoin有望成為Web3.0的基石和基建:金色財經現場報道,4月23日,數御未來——2021數據與存儲產業峰會在成都舉辦。在會議現場,WhyLab探索實驗室聯合發起人Shawn以《數據的回歸和解放》為題進行分享。他表示,現在的互聯網Web2.0問題是信息孤島數據自閉,下一步Web3.0要實現智能網絡數字化生存,

區塊鏈是Web2.0到Web3.0最重要的基建。數據是信息時代最重要的生產資料,數據面臨的核心障礙是生產關系問題。Web2.0到Web3.0的障礙是信息不能自由流動、充分共享。無論互聯網,還是區塊鏈,無論存儲、計算還是傳輸,一切圍繞數據展開。信息不能自由流動是技術問題,信息不能充分共享是關系問題,IPFS+Filecoin的結合,有望成為Web3.0的基石和基建。任何信息產業的落地應用,都是以場景數據為前提,區塊鏈連非交易性數據的問題都沒解決,沒有落地應用很正常,IPFS和Filecoin的去中心存儲系統,提供了場景數據的棲身之地,后面的落地應用才有可能展開。[2021/4/23 20:51:03]

Filecash社區協調員Marco:2020年是IPFS在全球范圍內蓬勃發展的一年:由開源礦池和火幣主辦,金色算力云、鏈上ChainUP、Filecoin Beijing聯合主辦的“分布式存儲中國行暨開源礦池IPFS私享會”2020年12月6日在武漢舉行。Filecash社區協調員Marco在會上表示,從Filecoin的全球算力分布圖來看,絕大多數在中國大陸,而Filecoin在日韓等國家也有著相當大的市場。日本投資者對Filecoin的認知有質的飛躍,韓國對于Filecoin更加傾向于長期投資,從多個國家的入場者不斷增多來看,2020年是IPFS在全球范圍內蓬勃發展的一年。目前,Filecoin的經濟模型已經建立,如何解決對FIL的剛需問題,仍需礦工根據個人情況擇優選擇。[2020/12/6 14:17:42]

圖2?IPFS組件結構示意圖

▲?組件化設計

IPFS-Cluster基于組件化設計,同節點的各組件之間通過內部RPC進行通信,此方案很容易把各組件部署到不同的機器,是一種極其容易擴展的架構設計。

IPFS-Cluster由以下8個組件組成:

幣贏即將開展第11期Fansup“IPFS打折搶購”活動:據官方消息,幣贏即將開展第11期Fansup“IPFS打折搶購”活動,可享受3折超低搶購優惠,所有完成CoinW實名認證的用戶提前購買USDT,即可參與本次搶購活動。首輪搶購時間為今天下午14:00開啟,共90分鐘搶購時間,詳情見原文鏈接 。[2020/7/1]

Consensus共識組件:?負責在集群節點之間實現一致性,使所有節點的Pinset保持一致,并且管理節點的加入及退出。目前支持兩種共識算法“Merkle-CRDT”和“Raft”。

PinTracker組件:PinTracker處于共識組件和IPFS中間層,PinTracker接收并維護Consensus組件發送的Pin操作,通過RPC組件將Pin操作發送到IPFS。

PeerMonitor組件:?負責維護集群節點的狀態,PeerMonitor周期性的檢查節點存活狀態。

State組件:存儲Pin操作的數據庫,便于對Pin操作進行增、刪、查等操作。

RestApi組件:該組件提供了基于HTTP的ClusterPeer功能的訪問服務器。

ChainUP聯合節點資本發起設立2000萬美元IPFS專項基金:2020年6月22日,由金色財經主辦,節點咨詢、IPFS100.com承辦,星際特工、麥客存儲聯合主辦的“星際漫游指南——IPFS技術與應用研討論壇”在深圳拉開帷幕。

在本次大會上,ChainUP聯合節點資本共同宣布發起設立2000萬美元IPFS專項基金,主要投資對象包括媒體平臺、算力云、礦機等;ChainUP創始人兼CEO鐘庚發、HashFin CEO Maggie作為主要嘉賓代表,出席了本次IPFS專項基金成立儀式。

ChainUP表示希望能夠借此機會,深度布局IPFS領域,助力Filecoin未來的應用場景早日落地。[2020/6/22]

IPFSProxy組件:是一個代理endpoint,可以用來調用IPFS-Cluster連接的IPFS。某些請求比如Pin/Unpin等會被攔截并觸發IPFS-Cluster集群操作,從而操作會在集群所有節點執行。未被攔截的請求都直接轉發Cluster所連接的IPFSDeamon。

Allocator/Informer組件:Informer組件用于監控系統的硬盤使用情況、Pin操作的數量。Allocator組件用來選擇文件Pin到的具體節點,系統可以根據硬盤使用情況來選擇文件存儲到的節點,把文件存儲到特定的節點。

金色財經現場報道 IPFS、Filecoin中國區技術布道人董天一:比特幣的未來是不可預測的:金色財經現場報道,在西部中小企業發展論壇上,開展了以《目前中國區塊鏈行業現狀》為主題的圓桌討論,IPFS、Filecoin中國區技術布道人董天一指出:從經濟學底層解釋,所有的收益最終都要平衡為現實世界的收益平均值。超高收益只會存在一段時間。沒有風控,哪來投資,那是賭博。到現在,比特幣的挖礦已經非常透明了,比特幣現在1T24小時的算力只能生成23.6元。其實現在比特幣的收益率已經跌到一些人的成本線以下了。我一直堅信一點,未來是不可預測的,我們沒有辦法知道比特幣最后會怎樣,甚至有可能歸零。我建議的態度是,買一個比特幣,守著,萬一它漲了呢,僅此而已。[2018/4/28]

RPC組件:?系統使用內部RPC在同節點各組件間進行通信,外部RPC在不同節點各組件間進行通信,提高了系統的可擴展性。

▲?Pin處理流程

當使用IPFS-Cluster添加內容時和IPFSadd命令添加內容命令的選項基本相同。但是IPFSadd命令僅將內容添加到本地IPFS,IPFS-Cluster同時添加到多個集群節點連接的IPFS,具體添加到多少個節點依靠ReplicationFactors參數控制。

Pin和Unpin是集群操作的核心,涉及多個內部組件,但有兩個主要階段:

ClusterPin階段:持久化Pin操作,并通過共識組件廣播給其他集群節點。

首先接收到一個Pin請求,請求包括特定參數。

根據參數會選擇Pin到哪個節點,ReplicationFactors決定多少副本,磁盤空間決定選擇哪個節點來進行存儲。

共識組件負責將Pin請求廣播到集群其它節點。

IPFSPin階段:被指定的IPFS負責將文件內容成功Pin到本地。當Cluster-Pinning階段完成,每個節點會被通知有個新的Pin工作,如果節點在配置列表中,會調用IPFS來進行Pin操作。

PinTracker組件開始追蹤CID。

如果分配到節點,IPFSPinadd操作被執行。

PinTracker會等待IPFSPinadd操作完成,如果Pin出現錯誤則會進行上報處理。

這兩個階段是異步處理的,ClusterPin階段處理后就會給用戶返回應答,IPFS-Pinning階段處理比較慢,由PinTracker對Pin過程進行管理。如果IPFSPin失敗,或Pin超時失敗,Cluster會接收異常情況,并定期運行Recover功能來進行異常處理。

▲?Consensus共識組件

共識組件主要職責:

管理全局Pinset集合,包括從其它節點獲取或者向其它節點發送Pin操作命令。

管理Pinset相關的文件在IPFS中的持久化存儲。

在所有的節點間實現分布式一致,所有的節點需要收斂相同的Pinset。

管理集群節點,包括節點加入離開,設置節點間的管理機制。

設置節點信任機制,定義哪些節點可以訪問本地RPC服務。

IPFS-Cluster共識組件目前有兩種具體實現,基于“Raft”的強一致性分布式共識,和基于“Merkle-CRDT”的最終一致性共識。基于“Raft”的強一致性共識,對任何一個節點發起請求都會得到相同的回復,但將產生相對高的延遲;基于“Merkle-CRDT”的最終一致性共識具有更低的響應延遲,但可能會回復過期的數據,最終一致性即是經過一段時間后終會到達一致的弱一致性。

▲?基于Raft共識算法實現

(1)通過將更新直接發送到連接的每個節點來發布更新。

(2)在本地BoltDB保存所有的持久化數據。

(3)使用Raft共識來獲得強一致性。集群選出一個Leader負責提交每個請求的日志,必須群集中超過一半的節點確認才能使操作有效。可以僅將追加日志合并并壓縮為快照,然后將其發送給新的節點方。

(4)相信所有節點,所有節點都可以申請加入Raft集群,并且所有節點可以和其它節點進行網絡通信,前提是他們都知道私有網絡的ClusterSecret。

▲?基于Merkle-CRDT?實現

CRDT是Conflict-FreeReplicatedDataTypes的縮寫,即“無沖突可復制數據類型”。Merkle-CRDT是IPFS-Cluster默認的共識組件實現。

(1)通過libp2p的pubsub組件來廣播Pinset更新,通過DHT+Bitswap來定位并交換數據。

(2)在本地BoltDB保存所有的持久化數據。

(3)使用Merkle-CRDTs來達成最終一致性。Merkle-CRDTs是CRDT一種改進,使用Merkle-DAG作為共識的邏輯時鐘,Merkle-DAG中每個Node代表一個操作,前一個操作Node作為后一個操作Node的Parent。這樣不同節點間只需要對比并同步Merkle-DAG數據結構即可維持操作的一致性。Merkle-DAGs作為邏輯時鐘是只增的,不能修改的。當新的節點加入時需要從RootNode開始遍歷整個Merkle-DAG,當Merkle-DAG深度比較大時,這可能導致新節點加入處理流程過慢。

(4)不需要執行任何Peerset管理。通過pubsub收到“Ping”的每個對等方都被視為集群的成員。

IPFS-Cluster總結

IPFS-Cluster作為IPFS網絡的附加層,通過添加分布式共識算法達到了IPFS集群存儲的一致性。此方案可以將IPFS私有網絡打造成高可用存儲系統,也可以用來提高IPFS的穩定性。基于內部RPC的組件化設計非常適合分布式系統,整個系統可以很方便的擴展并部署到不同的節點。

當然,目前IPFS-Cluster還不支持基于文件系統的一致性存儲操作,以集群形式添加的文件在IPFS中存儲為Block格式,并不支持整個文件系統狀態的分布式一致性維護。

作者簡介

馬耀耀

來自數據網格實驗室BitXMesh團隊研究方向:P2P網絡、數據安全傳輸

Tags:PINLUSCLUSTEPINKPANDACeleb PlusBored Pepe Vip ClubInterstellar AI

屎幣
區塊鏈:區塊鏈技術在著作權領域的應用研究_LTO

|合規聯盟原創出品?| 2018年杭州互聯網法院首次對區塊鏈證據效力確認,象征著區塊鏈技術正式走進著作權確權與著作權訴訟領域中.

1900/1/1 0:00:00
門羅幣:指南 | 區塊鏈技術如何賦能大數據行業_區塊鏈游戲幣有哪些

開年第一課:北京荷月科技有限公司董事長于瀟博士受人民網慕課平臺邀請,以《區塊鏈技術賦能大數據行業》為主題進行講課.

1900/1/1 0:00:00
CTO:美國SEC尋求Ripple高管的個人財務信息_SAITAMA幣

據彭博社報道,美國證券交易委員會正在訴訟中要求獲得RippleLabsInc.兩名高管的個人財務信息,稱該公司在未注冊的情況下出售虛擬代幣,誤導了加密貨幣XRP的投資者.

1900/1/1 0:00:00
數字貨幣:德意志銀行報告:比特幣太重要了!不容忽視_數字人民幣什么時候全國使用預計

德意志銀行今日發布了一份最新報告,稱鑒于1萬億美元的市值,比特幣現在“變得太重要了,不容忽視”。 該報告指出,只要繼續吸引資產管理者和公司進入,比特幣的價格就可能繼續上漲.

1900/1/1 0:00:00
區塊鏈:全球航運業務網絡(GSBN)將正式開始運營_石油幣

由多家航運公司和碼頭運營商組成的全球航運業務網絡在獲得多個司法管轄區的監管批準后,已在香港成立為非營利組織,將GSBN納入非營利組織的舉動是為了激勵參與者貢獻高質量的數據.

1900/1/1 0:00:00
區塊鏈:插槽拍賣即將到來,如何捕獲波卡生態蘊含的巨大機會?_區塊鏈通俗易懂的例子圖

在此之前Rococov1平行鏈測試網已經上線,并且經過測試、完善后已經完成了網絡重啟,據波卡官方表示,待Rococov1網絡運行穩定,節點增加到一定數量后,就將啟動平行鏈插槽拍賣.

1900/1/1 0:00:00
ads