ipfs pin 原理
每个文件块都有自己的引脚状态,由引脚管理器Pinner管理。
ipfs在进行GC等操作时,会根据每个文件块的pin状态进行相应的处理。
文件块 的 5 种 Pin 状态
Recursive 状态
文件块树递归添加到pin 上,根文件块的状态为Recursive,非根文件块的状态为Indirect
Direct 状态
仅将目标文件块添加到pin,不处理后代块,并且目标文件块的状态为Direct
Indirect 状态
文件块树递归添加到pin上,根文件块的状态为Recursive,非根文件块的状态为Indirect
Internal 状态
ipfs 使用文件块来保存pinner 状态。这些文件块的状态是Internal
NotPinned 状态
文件块未固定,将在GC 期间删除
存储文件块 pin 状态的数据结构
查询文件块的 pin 状态
文件块的 pin 状态持久化
根据cid列表的长度,有两种情况。
情况一,如果cid列表的长度小于等于8192,则只会生成一个内部ipld节点,该节点的链接会记录cid列表的所有cid。在情况2中,如果cid列表的长度大于8192,则每个cid将被散列,然后调制成256个桶。遍历每个桶。如果bucket不为空,则生成一个内部ipld节点,该节点的链接记录了bucket中的所有cid。然后,会生成一个内部ipld节点,该节点的链接会记录所有非空桶对应的内部ipld节点。图中,直接cid 列表属于情况1,递归cid 列表属于情况2。内部ipld 节点A 的链接包含所有具有直接状态的cid,内部ipld 节点B 的链接包含所有具有内部状态的cid。地位。这些内部ipld 节点包含所有具有递归状态的cid。根内部ipld节点的链路包括内部ipld节点A和内部ipld节点B。
根内部ipld节点的cid将存储在leveldb中。
ipfs pin 使用
展示
列出所有被 pin 的块
ipfs 引脚ls
列出 pin 为指定状态的块
ipfs 引脚ls -t 直接
ipfs pin ls -t 间接
如果你还想了解更多这方面的信息,记得收藏关注本站。
【深入解析:IPFS Pinning技术详解】相关文章:
用户评论
我最近在想了解一下IPFS的使用方法,这个教程应该很合适吧。
有17位网友表示赞同!
一直听说IPFS挺厉害的,可以分享一些实际案例吗?
有19位网友表示赞同!
PIN管理是什么?感觉很关键,必须好好看看这个教程。
有14位网友表示赞同!
我有一个项目用到了IPFS,但不知道怎么设置PIN,这篇文章能解决我的问题?
有19位网友表示赞同!
想进一步了解如何有效地使用IPFS的PIN机制!
有12位网友表示赞同!
看起来这篇教程涵盖了IPFS PIN的所有方面,很全面。
有16位网友表示赞同!
之前对IPFS不是很了解,这部详细解释很有帮助。
有7位网友表示赞同!
这个标题听起来就明白易懂,适合新手入门。
有11位网友表示赞同!
想要提高自己IPFS的技能水平,这篇文章是学习的好选择。
有5位网友表示赞同!
希望能看到一些实战演示,帮助我更好地理解PIN的功能。
有11位网友表示赞同!
ipfs真的是革命性技术啊!期待学习它的各种用法。
有9位网友表示赞同!
希望这个教程能教会我如何保护我的数据安全。
有13位网友表示赞同!
学习IPFS可以让我更了解分布式存储网络吗?
有17位网友表示赞同!
感觉这篇教程对未来的区块链开发非常有帮助。
有18位网友表示赞同!
IPFS越来越热门了,终于找到一份详细的教程!
有9位网友表示赞同!
我很想深入理解IPFS的基本原理,这篇文章能帮我吗?
有17位网友表示赞同!
感谢分享这个有用信息,我一直在寻找关于IPFS的资料。
有5位网友表示赞同!
希望这篇教程能解答我对IPFS的一些疑问。
有18位网友表示赞同!
这个主题很新颖,我很想了解它的发展趋势。
有9位网友表示赞同!