手机版

星际文件系统在分布式文件存储系统中的应用

时间:2021-07-30 19:18:51|浏览:

资料不同

在整个星际文件系统互联网系统中,该节点必然不会长期备份和维护数据,因此它可以选择清除缓存的数据以节省空间。这意味着从理论上讲,假如没其他节点存储有关数据,则该文件可能会随时间“消失”基于目前的使用水平,暂时不是一个难点,但从长远来看,备份很多数据需要强大的财务动力。

这里的问题是,假如公司选择用公共星际文件系统互联网来存储文件,那样以后,节点可以选择不随时存储文件。假如所有节点都选择相同,则除非星际文件系统系统在专用互联网上运行,不然该文件将没办法长期保留在互联网上。依据星际文件系统协议,假如用户上载到星际文件系统互联网的文件没办法获得非常高的访问量,它将自动消失。换句话说,用户数据需要在Internet上变得愈加时尚才能永久保存。假如用户不期望其数据从星际文件系统互联网中消失,则需要将数据固定在该节点上,也就是说,需要确保至少他一个人的节点拥有整个互联网上的数据。

因为星际文件系统系统是去中心化的,因此所有存储节点都将具备上载文件的副本。通常而言,假如文件处于非活动状况或不常常用,它将被缓慢拒绝。无疑这是一个很有争议的问题,由于有时文件需要存档而不常常用,有时需要立即删除。当用户更改已经存储在星际文件系统上的数据时,相应的哈希也需要更改。当然,假如文件有新版本,则用户需要重新上传它,但不会覆盖旧版本。这将影响到文件的现有链接,这意味着原始链接将维持不变,但用户需要为新文件创建一个新链接。

在更新KYC数据(包括护照和驾照)时,这可能是一个挑战。凭据信息过期后,用户需要上载新版本以替换旧版本。 星际文件系统系统提供版本控制,但一旦将其扩展到公共互联网,事情就会变得棘手,由于不一样的节点可以具备多个版本。旧版本将不会自动更新,只能存档或销毁。 星际文件系统系统没办法以与AWS或Azure相同的方法存档文件。

星际文件系统具备版本控制系统。这是其Merkle DAG结构的功能,该结构允许用户构建分布式版本控制系统(VCS)。现在最受青睐的示例是Github,它使开发职员可以轻松地在项目上同时达成协作。 Github上的文件用Merkle DAG结构进行存储和版本控制。它允许用户独立复制和编辑同一文件的不同版本,存储这部分版本,然后将所有编辑的内容合并到原始文件中。但,依据大部分开发职员的看法,这部分内容只是理论上的,其实用性尚未得到充分测试和验证(截至写作本文时)。假如大家要达成它,它将需要更多的时间和开发本钱,从长远来看,这是值得期待的。

在Web3Stupo SoJourn项目中用星际文件系统系统(图片出处:Consensys)

内存寻址策略

星际文件系统系统与典的基于互联网的云存储系统之间有什么区别在于,它是基于内容的(内容寻址),而不是基于地址的(地址寻址)。可寻址存储系统的一个示例是超文本传输协议(HTTP)。假如存储系统基于地址,则需要用域名服务器的主机名来标识服务器。它可以通过映射到友好使户名的逻辑寻址策略(比如IP地址)跟踪主机。假如主机更改了名字或地址,则还需要在相应的名字服务表中对其进行修改。

基于内容的可寻址存储适用于从互联网获得数据。这需要内容标识符来确定文件的实质存储地方。在这样的情况下,用户基于密码哈希而不是逻辑地址访问数据,逻辑地址等同于文件的数字指纹。无论是哪个上传文件,上传时间和地方有什么不同,互联网都会依据哈希值返回相同的内容。

在速度和靠谱性方面,星际文件系统系统的性能优于HTTP协议。内容可寻址存储系统不需要依靠服务器地址来获得文件,而可以从用户附近的各种服务器(比如星际文件系统互联网上的对等方或节点)提供文件。换句话说,用户可以容易地搜索文件而不需要搜索引擎提供坐标,即服务器名字或地址。相反,用户可以通过其哈希值引用该文件,并且可以通过互联网附近的可用节点获得相应的文件。

星际文件系统系统的优势

去中心化文件存储在互联网节点上,可以依据哈希表进行引用。通过Filecoin的勉励机制,可以刺激节点存储文件。

容错-假如一个节点发生问题,只须有其他节点存储该文件,该文件仍然可用。没单点问题。

可伸缩性-存储文件的节点越多,互联网用户获得信息的能力就越快。

持久存储-星际文件系统系统的核心内容是数据存储:只须可以访问与原始数据相对应的对象与任何新版本,就可以检索所有文件的历史记录。因为每一个数据块都通过互联网当地存储并且可以无限时缓存,这意味着星际文件系统中的任何数据都可以永久存储而不需要修改。

抵制检查-内容上载到星际文件系统系统后,任何中央机构都没办法删除它,由于它散布在整个互联网中。仅删除一个节点的数据并不可以完全删除该文件,也就是说,备份文件仍存储在其他节点上以供用。

星际文件系统(IPFS)是基于区块链内容的去中心化存储解决方法。 星际文件系统主要用去中心化在很多计算机和节点上的对等互联网模进行文件共享。通过这种互联网模,文件将分解为不一样的部分并存储在互联网节点上,然后该节点用哈希表来跟踪文件。当依据各部分的哈希值第三组合散乱信息时,等于原始文件的重建过程。

集中式文件存储和去中心化文件存储之间有什么区别。

gt;要开始,请输入:

星际文件系统系统的缺点

ih3fs守护程序

翻译:Celia

}

安装星际文件系统系统

星际文件系统的常规安装有2个节点选项

1. 星际文件系统桌面可直接从计算机(手提电脑或台式机)存储或共享文件。用户可以安装支持星际文件系统的应用程序,以便他们可以通过Web浏览器访问当地节点。这是对等互联网文件共享的安装形式。

2. 星际文件系统群集,用于大规模存储和共享文件,该群集允许在星际文件系统节点之间排列和协调标识号组合(引脚集)。通过星际文件系统群集,用户可以用分布式节点来构建大文件存储系统。

安装基本星际文件系统桌面后,节点配置从初始化存储库开始。以下是用户从Windows Powershell或Mac / Linux终端外壳输入的命令。

gt;

初始化操作是初次用星际文件系统系统时需要实行的步骤。下一步是运行星际文件系统程序处置过程,以将节点连接到互联网。

返回console.log(err);

ih3fs群

gt; /ip4/104.131.131.82/tcp/4001/p2p/QmaCpDMGV2BGHeYERUEnRQAwe3N8SzbUtfsmsqQLuuJ

gt; /ip4/104.236.151.122/tcp/4001/p2p/QmSoLju6m7xTh3DuokT3886QRYqxAzb1kShaanJgW36yx

gt; /ip4/134.121.64.93/tcp/1035/p2p/QmWHyrPWQnsz1wxHR219ooJDYTxJPyZuDUPSDpdsAoN5

gt; /ip4/178.62.8.190/tcp/4002/p2p/QmdXzZ25cyzSF99csCQmmPZ1NTbWTe8qtKFaZKpZQPdTFB

如星际文件系统说明中所述,对等方用的格式为:

/ h32h3 /

以下是在Internet上获得文件的指令示例:

ipfs cat /ipfs/QmW2WQi7j6c7UgJTarActp7tDNikE4B2qXtFCfLPdsgaTQ/cat.jpggt; cat.jpgopen cat.jpg

该指令将从指定对等体“ cat.jpg”中获得一个对象,并在当地打开它。

数据隐私与合规

事实上,用星际文件系统系统在共享存储系统上存储顾客数据(比如“可辨别你的顾客(KYC)”之类的个人身份信息)不是最好实践,第一,它违反了数据存储的合规性原则,这意味着诸如“知道你的顾客”之类的数据不可以也不应在公共云或共享存储空间上发布,当然,星际文件系统系统也包含在此处,在公共云上,数据管理的组织和控制较少对金融机构的严格需要是将数据和数据备份保存在受监管的而不是共享的存储系统上;另一方面,因为所有数据都在公共互联网上,因此任何节点都可以承载“知道你的顾客”数据。进一步违反严格控制数据存储对象和存储地方的法律和法规。

第二个问题是,假如所有节点都需要遵守整个金融系统的规则和规定,则意味着它们需要具备备份,强大的安全性和容错能力。在公共互联网上,节点是随机分布的,它们不必打造在人为设置的任何系统上,也不必根据规则进行操作。即便某些数据被加密,这部分节点仍然可以与互联网上的其他用户共享数据,因此大家不可以阻止恶意参与者访问数据。他们可以自己解密它,然后以其他非法方法用它。

星际文件系统脚本语言

以下是用Runkit NPM和Infura网关(对公众免费)将数据写入星际文件系统互联网的测试代码。

const 星际文件系统 = require(1.1.5);

const ipfs = new 星际文件系统({host :, port:5001,protocol:});

const data =“在互联网上写测试消息”;

ih3fs.add(data,(err,hash)=gt; {

假如(错误){

不友好的用户

对于用户而言,在星际文件系统互联网上创建文件索引的办法不是非常友好。比如,要通过哈希地址访问文件,请输入:

数据开发职员可以通过链接共享文件,但就过程而言,这很繁琐且耗时。 星际文件系统用星际命名系统(IPNS)查找文件。 IPNS系统将尝试用户更容易进行名字分析,就像Internet上的域名服务(DNS)一样。

另一方面,该系统还具备图形用户界面(GUI)和基于Web的派生星际文件系统应用程序,这用户访问愈加容易和便捷。但,与一般智能手机应用程序的任何“ 何一部分相比,因为学习曲线愈加陡峭,其用户友好性和操作方便性仍需要提升。这并不像单击Web链接那样容易。用户需要知道星际文件系统的工作原理才能用它。

gt;初始化守护程序…

gt; API服务器在/ip4/127.0.0.1/tcp/5001上侦听

gt;网关服务器在/ip4/127.0.0.1/tcp/8080上侦听

该指令涉及在当地计算机127.0.0.1上初始化并运行程序处置过程。它将启动侦听TCP端口5001的API服务器和侦听TCP端口8080的网关服务器。目前,通过发出群集指令,用户可以看到互联网上的其他星际文件系统节点。说明如下:

ih3fs初始化

gt;在/Users//.go-ipfs处初始化ipfs节点

gt;生成2048位RSA密钥对…已完成

gt;对等身份:Qmcpo2iLBikrdf1d6QU6XuNb6P7hwrbNPW9kLAH8eG67z

})

在此代码中,用户通过命令功能在Node.JS上应用“ ipfs-mini”包,配置Infura 星际文件系统网关的访问通道“ ipfs.infura.io”,并将数据指定为字符串“ Writing a测试消息“在互联网上”然后创建一个条件指令,假如有问题,它将返回错误提示,假如用户需要获得哈希值,则控制台将自动输入网关地址和哈希值。

结果将返回唯一的哈希:QmQhadgstSRU7aYnN25kwRBWtxP1gB9Kowdeim32uf8Td

下面,用户可以输入相应的URL链接:https://ipfs.infura.io/ipfs/QmQhadgstSRU7aYnN25kwRBWtxP1gB9Kowdeim32uf8Td

然后,结果将显示用户刚刚输入到Infura网关的数据。当然,数据不会持久存在,但在几天或几周不活动后会清除。假如用户需要永久存储数据,则应在当地或云上用专用服务器。

假如整个程序没错误,则可以返回数据的哈希值。

项目概要

星际文件系统系统更合适于长期数据存储,比如数字音乐,艺术品和认证信息(比如证书,文凭,奖励和捐赠证书)。这部分数据无需更改,将其放在基于区块链的存储系统上更有意义。它为创作者或艺术家提供数字证书,无人可以更改它,并且可以通过基于哈希的系统和目的键值对来证明。

星际文件系统系统上存储的数据是很公开的,这需要对数据具备更高的机密性。这可能会违反某些披露私有数据的数据存储法规(比如,通用数据保护法规)。 AWS和Azure云上还有可扩展的数据存储解决方法,可以满足用户的隐私,安全性和合规性需要。事实上,因为星际文件系统存储数据,因此不需要发布个人信息。对于公开透明的内容信息,星际文件系统系统可以为内容所有者提供真实性证明。它可以通过证明创作者(比如艺术品)的所有权来维护其作品的版权,以便大家的用户收取应有些版权费,还可以预防犯罪分子窃取他人的作品并获得荣誉。

星际文件系统系统好像为内容提供了迅速,安全的容错文件存储。但,它可能不适用于需要严格规定怎么样存储和保护数据的财务信息和私人数据。对于需要频繁更新和更改的文件,比如连续记录数据信息的活动日志文件,也不主张用此系统。在区块链上存储数据的目的不同,星际文件系统系统将提供相应的解决方法。伴随星际文件系统的进步,它可以用隐私级别来隐藏静态加密的个人数据,并努力不违反任何公开机密性的法规。

去中心化文件存储

星际文件系统的核心革新定义是用分布式哈希表(DHT)进行文件系统的存储和检索。 星际文件系统与BitTorrent协议相似,但其指向共享文件的方法不同。它将以键值对的形式将文件存储在区块链上。所有数据将被分为256 KB的块,散布在节点或计算机互联网中,并且只能有效地协调以支持节点之间的有效访问和搜索。 BitTorrent不用区块链技术,而是依赖种子文件来指向相应的文件。你可以选择使不一样的种子文件指向同一文件,但在星际文件系统文件系统中,你仅需指向该文件的哈希地址即可。

在星际文件系统上发布文件的方法与云发布文件的方法不同。 星际文件系统上的所有数据都可以通过其哈希地址来寻址。当某人申请访问数据时,他们通过访问哈希地址而不是直接联系实质文件本身来获得数据。换句话说,星际文件系统提供了文件实质地址的抽象定义,因此实质存储单元与应用程序无关。这个抽象定义为应用程序开发职员消除去复杂性。

星际文件系统怎么样跨节点存储文件。

通常来讲,文件推广托管在互联网节点上。这种办法的想法来自星际文件系统区块链上Filecoin的数字资产。节点可以通过在其计算机或服务器上提供存储空间来推广托管文件,为有关文件提供哈希地址,然后在互联网上分发它们。同一文件可以推广托管在不一样的节点上,此过程等同于复制文本。需要该文件的用户将基于最接近其地方的节点的哈希访问该文件。

推广托管文件的所有节点都将引用根哈希,即相应文件的哈希地址。每当用户申请访问文件时,他都可以用附近节点的哈希(依据根哈希存储文件)来下载文件。 星际文件系统系统上没有重复文件,由于散列哈希一直在上载文件时引用现有文件或文件块。

一旦文件存储在星际文件系统区块链系统中,它将维持可用状况,直到文件格式化并运行垃圾收购程序将其删除为止。不一样的节点可以通过哈希值指向文件本身。只须哈希值可以指向相应的文件,其他节点就可以存储它。 星际文件系统系统可以随时更新以指向不一样的哈希值,但只须用户具备原始哈希值,仍然可以访问数据,并且至少一个节点将永久存储该数据。

console.log(+ hash);

资料出处:小联财经

Copyright © 2002-2021 瑞波币交易平台 (http://www.cbi2018.com) 网站地图 TAG标签