你知道IPFS数据存储是怎么回事吗?

2020-09-14 16:18:20

很多人对IPFS的关注都是在于投资挖矿,而我们知道,IPFS真正的使命是取代HTTP,完成去中心化的分布式数据存储。

  很多人对IPFS的关注都是在于投资挖矿,而我们知道,IPFS真正的使命是取代HTTP,完成去中心化的分布式数据存储。对于IPFS是如何完成数据存储的,跟HTTP相比,又有哪些不一样的地方,很多人还是不清楚的。下面小编将带领大家来深入了解IPFS数据存储的几个关键点。


IPFS


  1、IPFS里的数据到底存到了哪里?

  简单地说:数据一开始是存储在自己的硬盘中,当有用户需要读取的时候,会产生新的靠背。就是谁使用数据,这个数据就会复制使用者那里。

  详细点说:为了存储的效率,IPFS会选择最快的路径来存储数据。当一个节点加入IPFS网络时,这个节点会提供一部分硬盘空间(缺省为10G,可以配置)给整个网络使用。那么通常情况下,当您在存储文件的时候,您自己提供的这部分硬盘空间总是最快的,因为不需要跨网。当存储完毕后,网络上任意节点都可以访问这个文件。当另一个节点访问的时候,那个节点往往会复制一份您的数据到他的硬盘空间。这样整个网络中就有两份拷贝了。试想,当有很多人对这个文件感兴趣,那么网络中的拷贝数会越来越多。


  2、IPFS的存取效率是如何体现的?

  简单地说:无论存还是取,都是采用最快路径的方式,从而提高效率。详细一点:问题1里面已经讲过,文件存储一般是直接到你的硬盘,因为是本地存储,非常快;那么读取呢?其实一开始并没有那么快,当第一个人读取的时候,因为需要从你的本地硬盘读取,要穿越网络,速度相当于从网络上去下载一个文件。那么为什么说IPFS的效率会很高呢?很重要的原因是,当读取的人多了过后,会产生很多拷贝,接下来读取此文件的人就可以从最近的节点读取,而且可以同时从多个节点同时读取,相对于中心化的存储而言,自然效率高出很多。这样,利用IPFS存储网络来开发应用的商家,就不需要庞大的数据中心来支持高并发率,因为用户是从整个网络中访问数据的,而IPFS天然支持数据分发网络和高并发率


IPFS


  3、IPFS不会重复存储相同的内容吗?

  是的,当你往IPFS中存储网络中已存在的内容的时候,IPFS会很快告诉你,存好了。不是这次存好了,是之前就存好了。这一点对于空间利用效率的节省非常大。你想想,随便一个小明星的照片在网上会存储多少份,流行的电影会存多少份。利用IPFS则可以大大减少空间的使用。

  需要提出的是:这一点与问题2中的描述并不矛盾。问题2中的多个拷贝一般都是缓存,也就是说是临时存储的。时间一长就被自动删除掉了。这种临时缓存非常好地解决了分布式数据分发的问题,比如说一个社会热点往往呈现出预热期、火热期和退潮期等阶段,利用IPFS,数据的分布和拷贝数与这些时期是完全匹配的。访问的人越多,拷贝数就越多,但热度下来了,拷贝数就会降下来,从而自然地实现空间利用率和存取效率的平衡。


  4、IPFS存储的数据会永不消失吗?

  简单地说:这是一个误解,具体一点:IPFS只是一个存储网络,存什么东西是用户说了算的。当一个内容没有用户想要保存的时候,它就会慢慢消失。那么,它在系统中是如何实现的呢?其实,每一个节点都有自主权利选择什么内容长久保存在本地,当然,也有权利选择不保存。比如一个企业使用IPFS网络存储数据,那么它可能建立多个数据中心,对其要保存的数据在多个数据中心都保存一份(这可以通过配置或应用接口实现)。其实应该这么说,只要有人愿意存储相关数据,这个数据就会被保存。

  那么对于一般用户的数据呢?比如说我想把我的照片保存在IPFS上,而且希望永久保存,为了安全我还想保存多份。那么这有两个办法:1)你自己加入多个IPFS节点,每个节点选择保存一份;2)使用FileCoin提供的存储市场,付费让人替你保存。当然,1)不是一个很好的选择,因为如果这样做,你干嘛还用IPFS;2)


最新推荐