主页 > imtoken钱包app下载 > 区块链和分布式存储

区块链和分布式存储

imtoken钱包app下载 2023-03-11 05:31:37

爬虫 api交易btc_btc数据结点交易_btc杠杆交易

中币创新智库

中币节点

随着区块链网络节点数量和网络交易活动的增加,数据扩容成为区块链中不可避免的问题。 从数据存储的角度来看,区块链是一种特殊的分布式数据库。 区块数据写入由矿工广播到节点网络进行本地副本存储。 这个过程没有统一的管理员协调,最终通过协议实现数据的一致性。 随着新交易活动的不断发生和积累,区块链网络的数据容量不断增加,与整个区块链网络的区块同步时间也越来越长。 比如目前BTC的区块链数据容量已经达到TB级别。 过去,比特币网络通过区块扩容来实现可扩展性的解决方案未能在社区中获得共识。 原因是随着区块大小的增加,区块信息的数据存储和通信将成为制约因素。 .

目前区块链本身在分布式存储机制上存在设计缺陷,因为区块链一开始并没有以比特币为基础朝着高效、可扩展的方向设计,主要目标是转账的安全性。 中本聪先生大概认为人类在存储技术上的技术进步可以克服区块链在存储上的不足。

比特币之后区块链项目组件的复杂性不再是一个级别,尤其是在未来的链上和跨链物理场景中,数据结构和交互复杂的问题越来越突出。 目前很多项目选择只将哈希值存储在链上,而不是将数据放在一个中心化的数据库中,通过压缩数据来解决存储空间问题并非不可行,但并不能从根本上解决数据访问效率低下的问题。而存储仍然是去中心化应用的短板,随着基于IPFS的区块链项目Filecoin主网上线时间的临近,区块链存储能否实现实质性的技术突破也将成为大家关注的话题,而其应用前景区块链也可能受到存储效率提升的影响。 提振市场信心。

1. 区块链与分布式数据库

在深入区块链分布式存储项目之前,有必要梳理一下区块链与分布式数据库的区别,对区块链的存储机制有更深入的了解。 区块链可以从去中心化数据的角度来分析,但它不同于现在的分布式数据库。

首先,让我们谈谈区块链和数据库之间的相似之处。 我们讲的最多的就是区块链的共识机制,就是解决拜占庭问题。 这是分布式系统设计中都会涉及到的问题。 在分布式数据库中称为共识。 分布式数据库一般采用Raft、Paxos等主从算法,而区块链则将算法改进为PBFT、PoW、PoS、DPoS等协议。

存储机制,区块链和数据库一脉相承,数据库存储一般分为三类:日志存储、用户数据存储、索引存储。 目前区块链的“账本”存储的是交易日志,用户数据存储不一定存在,视项目而定。 基于BTCUTXO结构的区块链,每个账户对应的BTC余额存储在一个内存哈希表中(或者在LevelDB/BerkeleyDB等KV型数据库中),没有外部数据存储模块。 Ethereum和Hyperledger也包括存储状态数据模块,无论是日志存储还是状态数据存储btc数据结点交易,目前都是基于非关系型数据库NoSQLbtc数据结点交易,在访问效率上不如关系型数据库。 目前基本没有支持用户数据自定义索引(B树索引、位图索引、全文搜索)的区块链项目。

在数据分布上,分布式数据库可以采用冗余+分区,即不是所有数据都复制到所有节点,区块链是冗余复制,所有节点都保留一份。

在数据管理方面,分布式数据库由全局数据库管理系统控制,DBA(数据库管理员)拥有“生死权”; 区块链由共识机制、分叉理论和最长链(PoW)原理共同控制,不存在DBA。 如果部分节点更新数据成功,部分节点更新数据失败,则出现分叉,每个节点按照最长链原则更新自己的数据。

数字。 数据库与区块链

btc杠杆交易_btc数据结点交易_爬虫 api交易btc

btc杠杆交易_btc数据结点交易_爬虫 api交易btc

在数据安全方面,分布式数据库存在单点作恶导致全局崩溃的可能性,区块链单点作恶不影响大局。

数据库的优势主要是在用户体验方面具有自主性,可以自定义功能。 同时在稳定性、交易速度、查询检索等方面具有突出优势。 但存在管理员集中、单点作恶、安全问题等缺陷; 区块链安全透明,但耗能大,可扩展性不足。 两者都有最好的适配场景,数据库适用于需要不断更新数据的场合。 如监控数据、实时金融市场信息、机密信息、在线处理数据,区块链更适用于货币交易、可信数据验证、Dapps和投票、价值转移。 图片、视频等非结构化数据更适合数据库存储,而区块链都是结构化的哈希数据形式。 区块链技术与数据库融合的分布式存储数据库是技术发展的一个重要方向。

2.分布式存储IPFS

分布式存储解决的问题是是否需要将所有数据存储在本地节点。 如果存储是去中心化的,随着新节点的加入和退出,是否会影响数据的完整性。 目前的区块链存储效率低下,成本极高。 要求所有矿工都保留一份账本备份是非常不经济的,但这样设计的初衷是为了维护网络的稳定,抵御拜占庭攻击。

星际文件系统IPFS提出使用IPFS文件系统存储数据,将唯一永久可用的IPFS地址哈希值写入区块链交易,数据本身不会放在区块链中。 目前,区块链还涉及到跨链数据的互操作性。 不同的区块链数据格式不同,协调难度大。 IPFS可以辅助各种区块链网络传输信息和文件。 通过在 IPFS 上定义不同的区块链数据结构,实现了通过 IPFS 存储智能合约代码。 在以太坊交易中,只需要保存IPFS链接,EVM即可解析IPFS的智能合约代码。

IPFS(InterPlanetaryFileSystem)是一种基于内容寻址的分布式新型超媒体传输协议。 IPFS 支持创建完全分布式的应用程序。 IPFS是分布式文件系统,其目标是成为全球统一的存储系统。

IPFS项目通过整合现有技术(BitTorrent、DHT、Git、SFS),创建一个点对点的超媒体协议,试图实现一个在互联网上永久可用、数据可以永久存储的全球文件存储系统。 IPFS是一个类似于目前BT网络的协议,只是功能更加强大。 Filecoin 是运行在 IPFS 上的激励层。 它是一个基于区块链的分布式存储网络。 它将云存储变成了一个算法市场。 代币(FIL)在这里发挥了非常重要的作用。 Filecoin 协议有两个交易市场,数据检索和数据存储。 双方在市场上提交需求,达成交易。 IPFS与Filecoin相互促进,共同成长。 IPFS/Filecoin 将作为区块链基础设施存在。

卡德姆利亚

DHT,全称分布式哈希表(Distributed Hash Table),是一种分布式存储方式。 DHT的原理是在不需要服务器的情况下,每个客户端存储一小部分数据,并负责一定区域的检索,从而实现对整个DHT网络的寻址和检索。 Kademlia 是 DHT 的实现之一。 在Kademlia网络中,所有信息都以哈希表条目的形式存储,信息分布存储在各个节点上,从而与全网形成一个庞大的分布式哈希表。 这张大哈希表就像一本字典:只要知道信息索引的key,我们就可以通过Kademlia协议查询到对应的value信息,而不管value信息存储在哪个节点上。

BitTorrent 网络

IPFS主要借鉴了它的三大特点。 一是对负面上传者的惩罚措施; 在BitTorrent中,客户端上传数据会奖励积分,而长时间不上传的负节点会扣分。 如果分数低于一定限度,则网络将拒绝再为他们提供服务。 其次,它检查文件的可用性。 BitTorrent 优先共享稀缺文件,各个客户端互为补充,这样种子不容易失败,传输效率也提高了。

Git-MerkleDAG

在传输或修改大文件时,会遇到存储或传输压力大的问题。 Git在存储的时候会将文件拆分成若干部分,并计算出每一部分的hash值,并利用这些构建一个有向无环图,DAG的根节点就是文件的hash。

知识点:MerkleDAG

MerkleDAG 来源于 Git 数据结构,类似于 MerkleTree 但主要目的不是为了验证而是具有以下功能:

内容寻址:使用多个哈希来唯一标识一个数据块的内容

防篡改:方便查看哈希值,确认数据是否被篡改

去重:由于内容相同的数据块的哈希值相同,很容易去除重复数据,节省存储空间

MerkleDAG

btc杠杆交易_btc数据结点交易_爬虫 api交易btc

默克尔树

btc杠杆交易_btc数据结点交易_爬虫 api交易btc

SFS

自证文件系统也是一个分布式文件系统,所有文件都存放在同一个目录下,所有文件都可以在相对路径中找到,路径名是其原始路径和公钥的哈希值,public的设计key让文件路径自带隐式身份验证功能