以太坊交易所 以太坊交易所
Ctrl+D 以太坊交易所
ads

科普 | IPFS中MFS以及GC機制_PIN:LINK

Author:

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

概述

IPFS的介紹在《IPFS文件存儲詳解》已經詳細介紹過,本文主要介紹IPFS中的文件系統MFS以及文件的GC機制。

MFS和傳統的文件系統一樣使用目錄對文件進行管理,區別在于MFS中的目錄和文件都有哈希,該哈希由文件內容或者目錄下面所有目錄以及文件的內容唯一確定,如果目錄下面的文件或者目錄有變化則該目錄的哈希也會變化,所以根據哈希可以判斷該文件或者目錄下面的內容是否有修改。

文件的GC機制主要介紹IPFS是如何進行文件刪除的。

本文所述的IPFS的版本為v0.6.0。

MFS

本版塊主要介紹IPFS的文件系統,即文件及目錄結構是如何生成、組織和存儲。

MFS中文件及目錄結構如下圖所示,最上層是root目錄,表示該文件系統的根目錄,所有文件夾以及文件都在該目錄下面,MFS中用Root,Directory,File這三種類型分別表示root目錄,文件夾,文件。root目錄通過link鏈接到文件夾或者文件,文件夾又通過link鏈接到文件夾或者文件。

穩定幣crvUSD科普創新清算機制LLAMMA,可在抵押品價格下跌時逐步替換為穩定幣:1月17日消息,Curve官方科普其穩定幣crvUSD創新的清算機制LLAMMA,解釋了LLAMMA通過AMM的特性進行針對債務人更友善的清算方式,讓抵押品在價格下跌時逐漸轉移成穩定幣,讓原本要清償的債務有一定程度的穩定幣可以償還,同時在價格回穩時再逐漸把穩定幣換回抵押品,而不是直接的觸發清算導致債務人的虧損。

此前報道,2022年11月23日,去中心化交易平臺CurveFinance開發者發布Curve即將推出的去中心化Stablecoin“crvUSD”的官方代碼和白皮書。[2023/1/17 11:17:13]

其中,root目錄、文件夾都會存儲在IPFS的DAG中進行持久化,另外root目錄的CID存儲在IPFS內置的LevelDB中,當IPFS啟動的時候從LevelDB中取出root目錄的CID,然后在IPFS的DAG中取出根目錄,最后加載出整個目錄結構。

美國說唱歌手Megan Thee Stallion與Cash App合作發布比特幣科普視頻:美國說唱歌手Megan Thee Stallion與由Square開發的移動支付服務Cash App合作發布了一段名為“Bitcoin for Hotties”的視頻。該視頻從她的角度解釋了什么是比特幣,為什么比特幣有價值等內容。Megan Thee Stallion在Instagram上擁有超過2410萬粉絲,在 Twitter上擁有640萬粉絲。(Bitcoin News)[2021/8/8 1:41:10]

下面詳細介紹創建文件夾和增加文件的過程:

創建文件夾的過程如下圖所示:

1.新建文件夾;

IMF今日發布的加密貨幣科普視頻實為兩年前舊聞,且存在諸多疏漏:國際貨幣基金組織IMF今日在推特上發布了一條關于加密貨幣的科普視頻,這段時長兩分鐘的視頻最初發布于2018年6月。該視頻稱加密貨幣是“貨幣進化的下一步”,但沒有特別提到DLT、區塊鏈,甚至是代幣名稱等術語。BTC、XRP和ETH只出現在說明加密交易的圖形中。盡管這段視頻到目前為止已經獲得了超過13.7萬的點擊量和2900個贊,但來自加密社區的許多反應都是批評的,他們指出了信息中的漏洞和似乎具有誤導性的措辭。

Reddit用戶nanooverbtc稱:“他們犯了很多錯誤,比如把私鑰稱為密碼。”該視頻也沒有討論挖礦或加密貨幣供應。Kraken策略師Pierre Rochard等知名人士表示:“可證明的稀缺性是比特幣有趣的原因,你忘了提這一點。”(Cointelegraph)[2020/8/24]

2.將該文件夾的父文件夾添加一條link,link包含該文件夾的Name、CID和Size;

人民數字FINTECH推出區塊鏈科普動畫:人民日報數字傳播發布微博稱,人民數字FINTECH出品《趣味科普|區塊鏈動畫》。[2020/3/31]

3.調用該文件夾的update函數,通過parent遞歸更新父級文件夾的狀態,逐級向上層文件夾更新,直到更新root結束遞歸過程。

刪除文件夾和創建文件夾類似,只需要unlink和遞歸update即可。

增加文件的過程如下圖所示:

1.?上傳文件

2.將該文件的父文件夾添加一條link,link包含該文件夾的Name,CID和Size;

3.調用該文件的flush函數,通過parent遞歸更新父級文件夾的狀態,逐級向上層文件夾更新,直到更新root結束遞歸過程。

金色財經獨家分析 監管機構、媒體、業界提示詐騙風險 區塊鏈科普道阻且長:新華社今日發文表示,近來“區塊鏈”類詐騙案件頻發,不法分子以“投資虛擬貨幣周期短、收益高、風險低”為借口,騙取用戶信任并誘使其轉賬進行投資。無獨有偶,同日消息,騰訊手機管家安全專家也提醒此類風險,并從技術上提出防騙建議。在美國,監管機構警示加密貨幣欺詐現象普遍承諾高收益而不披露潛在風險。金色財經獨家分析,不法分子假借新技術之名進行詐騙,一方面是抓住民眾趨利的心理,一方面反映出區塊鏈科普的欠缺。區塊鏈是新興科技和底層技術并有改變社會生產關系的潛力,應該進行系統性的科普教育,當前,部分大學已經開始設置了區塊鏈課程,但對于普通民眾仍然有科普的需求,人們應該了解到系統和正確的知識,不僅要了解區塊鏈的好,也要明確局限和弊端,以在高收益的誘惑下,保持清醒客觀。[2018/4/11]

刪除文件和增加文件的過程類似,只需要unlink和flush即可。

文件GC機制

IPFS中刪除文件時并不會立即刪除掉該文件,而是將該文件的CIDunpin,下次GC的時候則可以真正的刪除該文件。

下圖是IPFS的配置文件,其中紅色部分是GC相關的配置。

StorageMax是存儲文件的最大容量,默認是10GB,可以根據項目需要進行修改,當存儲的文件超過該最大容量時會有warning,文件還是可以繼續存儲的。

StorageGCWatermark是GC的閾值,默認是90,即90%,觸發GC的閾值容量為10GB*90%=9GB。

另外,GCPeriod是GC的間隔,默認是1h。GC觸發的機制是每一個GC間隔時間,觸發GC的檢查,當存儲容量超過閾值時則開始GC,將需要刪除的文件或者塊進行刪除。

文件或者塊的Pin模式如下圖所示,文件的Pin模式是recursive,即遞歸Pin文件的所有的塊。

如下圖所示,pinner是塊的GC管理器,其中recursePin是遞歸的pin的集合,里面存儲所有文件的根CID:

每次觸發GC時會進行ColoredSet,如下面兩張圖所示,將所有recursePin中的CID依次遍歷,深度遍歷該CID所有的links,這些links的CID都會存儲到gcs這個集合中:

然后通過bs.AllKeysChan(ctx)可以獲得所有的塊的CID集合,最后遍歷這些CID集合,判斷gcs中沒有的該CID的塊都需要刪除掉,具體見下圖,從而實現了所有unpin的塊GC觸發的時候都會刪除的效果。

注意:GC的時候會lock,此時上傳文件和刪除文件都會阻塞,GC需要占用的時間和文件存儲量以及刪除的文件大小有關系,可以將GC時間固定在每天用戶操作最少的時間點,例如每天的凌晨3點,減少用戶操作和GC的沖突。

總結

IPFS中MFS提供了一套基于CID的文件系統,目錄結構也存儲在IPFS的DAG中,目錄的樹狀結構和DAG的結構本身是很類似的,所以將目錄結構存儲在DAG中巧妙地解決了文件系統目錄結構地存儲問題,最后只需要存儲文件系統的根目錄的CID從而可以方便地加載整個文件系統的目錄。

IPFS中的文件GC機制目前不是很高效,通常文件存儲10GB容量左右時,觸發GC可能就需要幾分鐘到十幾分鐘的時間,由于IPFS是一個面向公網的一個用戶一個IPFS節點的模式,所以該問題對于IPFS項目本身并不明顯,但是如果將IPFS的存儲以及GC機制作為投產項目使用,則需要對GC機制進行優化,減少GC占用的時間間隔。

另外IPFS本身每隔一段時間觸發GC也不是很合理,針對項目的用戶使用情況可以將GC觸發時間固定在每天的凌晨某個時間,然后每24小時的GC觸發間隔也是一種比較簡單的解決IPFS的GC沖突問題的辦法。

作者簡介

姚文豪

來自數據網格實驗室BitXMesh團隊,數據平臺架構師

Tags:LINKINKPINOOTBABYLINKMalinkaPINKM幣football幣最新消息

芝麻開門交易所
狂歡盛宴繼續!比特幣日內突破37700美元 加密貨幣市值首超1萬億美元_比特幣:加密貨幣

來源:FX168財經報社隨著加密貨幣的大規模反彈繼續,比特幣周四突破37700美元,創下新的歷史新高。自2021年初以來,這種加密貨幣上漲了約29%,在過去12個月飆升超過380%.

1900/1/1 0:00:00
觀點 | 抖音和拼多多的成功給NFT的玩法帶來什么啟示?_NFT:apenft幣價格今日行情

原文標題:《The「TikTok/Pinduoduo」ofNFTs?》原文作者:AndrewSteinwold編譯:0x13,律動BlockBeats首先.

1900/1/1 0:00:00
香港金發局:約五分之四央行已開展數字貨幣研發_BDC:3X Short TomoChain Token

1月11日消息,香港高層次咨詢機構--金融發展局周一稱,約五分之四的央行已開展及進行有關央行數字貨幣的研發工作,相關發展在未來將對提供金融服務的方式帶來莫大影響.

1900/1/1 0:00:00
盡管幣價居高不下,鏈上數據顯示礦工拋售比特幣意愿降低_BTC:BTCMT幣

作者:irishash,來源:彩云區塊鏈投機者認為,當比特幣價格上漲時,比特幣礦工將出售更多的比特幣.

1900/1/1 0:00:00
為什么說比特幣的牛市與美國債券市場相關聯?_ZUKI:iMX幣幣情

主流媒體廣泛報道了比特幣與黃金脫鉤及其與股票的反向關系,但整體缺少的一個環節是比特幣對美國政府債券的影響。以前被認為是非發行債券,債券的負收益率已經引起鏈上分析師和投資者注意到這一觀點.

1900/1/1 0:00:00
Coin Metrics:為什么說BTC是對沖通脹的工具?_比特幣:Hanacoin

作者:NateMaddrey&CoinMetricsTeam 翻譯:李翰博 在比特幣存在的大部分時間里,機構通常以比特幣是一種風險性、投機性資產為由,一直遠離投資比特幣.

1900/1/1 0:00:00
ads