Filecoin的存儲單元稱為扇區(Sector)。對傳統硬盤結構理解的小伙伴,對這個術語應該比較親切,傳統硬盤的最小存儲單元就叫Sector。為了證明Sector的存儲,Filecoin進行了一系列的處理,傳說中的P1/P2/C1/C2。在處理過程中,一個Sector的計算會生成若干文件,最終會生成replica。相關文件是如何組織的?Cache都是由哪些文件組成,分別是多大?本文就從存儲的角度看看這些過程和邏輯。
Filecoin的存儲管理的邏輯主要實現在sector-storage項目中。在深入理解Sector存儲邏輯之前,先講講Worker和Manager。
01 相關術語
Worker - 處理P1/P2/C1/C2的服務,Worker又分為兩種:local worker和remote worker。local worker處理本地服務處理,remote worker支持遠程服務處理
Manager - 管理多個Worker
DeFIL平臺FIL存入量達166萬枚:DeFIL平臺數據顯示,當前FIL存入量為166.4萬枚,資產總值約2.5億美金,已借出FIL為118.6萬枚。defil是基于Ethereum的Filecoin去中心化借貸協議,用戶參與存FIL可獲取利息收益以及獲取平臺治理通證DFL,且DFL可繼續進行Staking挖礦。
目前,DeFIL已獲得由IPFS生態基金、分布式資本、FBG資本、以及Gate Labs、ZB Capital等機構的陸續投資。[2021/5/10 21:43:35]
Scheduler - 調度器,調度多個Worker,一個Manager通常有一個Scheduler
Store - Sector存儲系統
02 Sector存儲
Sector處理相關的文件存儲在Store中。Store通過sectorstore.json進行配置:
Filecoin全網規模首次達到基線標準:根據Filscan.io數據顯示,北京時間4月2日凌晨3點53分區塊高度634306,全網算力規模首次完全超越網絡基線規模,全網算力規模和基線規模同時達到38069EiB。據觀察,在此之前已經有2次全網算力規模超過基線規模后又回落,第三次于超過634306高度之后趨于穩定。
屆時,Filecoin基線釋放的有效高度為339912一旦網絡規模超過基線標準,有效時間開始加速,Filecoin網絡會同步釋放之前因為未滿足基線而抑制釋放的部分獎勵。[2021/4/2 19:40:48]
CanSeal表明Store可以用來Seal(存儲Seal相關的臨時文件),CanStore表面Store可以持久存儲Seal的結果(replica)。Weight 是權重,在多個Store選擇時使用。ID是Store的UUID編號。
一個Store中存在三種存儲,分別對應三種目錄:unsealed (未封存的文件),cache(緩存文件),sealed(封存后的文件)。
Filfox和FileStar開發者發現Filecoin充值入賬存在雙花風險:根據Filecoin飛狐瀏覽器Filfox和FileStar開發者的共同分析,Filecoin官方推薦的交易所入金流程存在雙花的風險,建議交易所可以暫緩Filecoin的入金。該雙花風險已經影響到某交易所的入金,并得到雙花驗證,目前Filfox和Filestar的開發者已經協助部分交易所改進充值流程,并通知到Filecoin官方。[2021/3/19 18:58:31]
03 Worker & Store
sector-storage項目的README中的這張圖很好的解釋了sector storage的各個模塊以及相互的關系:
整幅圖分為上下兩個部分:上部分是Manager,下部分是Remote Worker。Manager中包括一個Local Worker。stores.Index是所有Sector存儲的索引。Scheduler,上部分的中間,管理所有的Worker,并且調度Sector相關的存儲。
BBKX將于今日12:00開啟FIL180天鎖倉理財:據官方公告,BBKX將于2021年3月8日12:00(UTC+8)開啟FIL180天鎖倉理財。用戶屆時可前往WEB端理財專區參與活動。
BBKX專注于挖礦金融服務,已獲得節點資本與鏈上基金聯合投資。[2021/3/8 18:24:01]
worker management APIs通過/rpc/v0的jsonRPC接口實現remote worker的管理。通過/remote的HTTP API實現存儲的Fetch操作,簡單的說,傳輸文件。specs-storage.Prover/Sealer/Storage是Manager暴露出來的接口,實現Sector的證明,封存和存儲。
每個連接到Manager的Worker會和Manager同步它的內存/CPU以及顯存的信息。Scheduler在接受到新的請求時,會針對請求(Task)的類型以及資源的需求,從當前Worker中挑選最合適的Worker進行請求的處理。如何選擇Worker,感興趣的小伙伴,可以查看selector的相關邏輯。
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]
從存儲的角度,重新整理一下,這些關系:
以一個Manager連接兩個Worker為例。Worker只能Seal,但是不能Store。為了更清楚展示Worker之間的數據傳輸,第一個Worker只做Precommit1,第二個Worker做Precommit2和Commit。
04 Seal Task
理解Seal Task,最好對照了Sector的狀態管理一起看。對Sector狀態管理還不熟悉的小伙伴,可以查看之前的文章:
Filecoin - Sector狀態管理邏輯
接下來,看看每個Seal Task對應的存儲數據的變化。
如果其中左邊的Worker接收到任務,AddPiece任務會在unsealed目錄中創建原始數據。
PreCommit1階段,簡稱P1,針對SDR算法,計算若干層數據。如果Sector是32G,需要計算11層。對SDR算法不熟悉的小伙伴,可以看看之前的文章:
經過PreCommit1,生成的數據存儲在Cache中:
PreCommit2
PreCommit2的階段,簡稱P2,生成Replica,計算Column Hash,并生成Merkle樹(tree_d, tree_c, tree_r_last)。因為P2,不在同一個Worker處理,在進行處理之前,需要先傳輸給合適的Worker,處理的結果同樣存儲在Cache中:
在Commit生成證明后,進入Finalize狀態,Finalize可以理解成“歸檔”。因為在Worker上沒有Store能力,刪除不需要持久化的數據,需要持久化存儲的數據,將傳輸回Manager。
05 數據存儲量
以32G的Sector為例,在處理過程中需要存儲的數據如下:
原始數據 - 32G
原始數據Merkle - 32G
P1 layer - 32*11G
P2 - Column Hash & tree_c - 32*2 G
P2 - Replica & tree_r_last - 32G + 9.2M*8
總共:512G多一點。
06 持久化數據
Sector經過P1/P2/C1/C2處理后,也就是說,經過PoREP處理后,需要持久化存儲Replica的數據和tree_r_last的數據。tree_r_last的數據需要存儲的原因是PoSt要用到。特別注意的是,tree_r_last的數據并不是完整的Merkle樹數據,刪除了其中一些層的數據。
32G的Sector,對應的tree_r_last分成了8棵子樹,每棵子樹是8叉樹,默認存儲的時候,忽略了最低的兩層。也就是,去除最低兩層的存儲量為:
所以每棵子樹的存儲數據為4G*0.00223 = 9.13M。
也就是說,Sector持久化存儲比例在1.0022左右。
總結:
Filecoin存儲管理的邏輯主要在sector-storage中。Sector的處理任務,可以通過多個Worker完成。每個Worker的存儲目錄結構一致,Sector數據可以在多個Worker之間通過Http服務傳輸。Sector處理過程中,最大的存儲需求量在512G左右。持久化存儲比例為1.0022。
對以太坊來說,從工作量證明(PoW)機制向權益(PoS)證明過渡一直是一個備受大家期待的事件。盡管以太坊2.0的上線時間有所延遲,也沒有一個明確的最后發布期限,但近期ETH的價格走勢非常難不錯,
1900/1/1 0:00:008月2日,由金色財經主辦,阿里云、中科云創、99Ex、Asproex、熱幣、ChainUP、金色算力云首席合作的共為·創新者大會在鄭州希爾頓酒店隆重開幕.
1900/1/1 0:00:00本文研究聯盟鏈的落地及配套激勵措施。結論是,聯盟鏈具有效率及可擴展性高的優勢,但是需要建立良好的利益分配機制才能吸引企業加入.
1900/1/1 0:00:00本周技術周刊包含比特幣、以太坊、波卡、Filecoin四個網絡的技術類新聞。閃電網絡客戶端c-lightning發布0.9.0版本,支持暸望塔插件由Blockstream開發的的閃電網絡客戶端c.
1900/1/1 0:00:007月30日-8月3日,由金色財經發起的“鄭州區塊鏈周”活動火熱進行,期間霍比特交易所連續5天舉辦「天天霍比特」線下酒會.
1900/1/1 0:00:00金色財經 區塊鏈7月25日訊 自從比特幣誕生至今已有十多年時間,但始終與各國監管機構的關系不太融洽,不過隨著監管態度轉變,加密市場狀況已經有所轉變.
1900/1/1 0:00:00