区块链是一个去中心化账本,账本记录的是数据,不过在浏览器里看到的是,交易打包成块后,交易数据都变成了哈希。在以太坊的erc20协议作用下,我们可以看到转账交易等这些基础数据。
但对于用户来说,查询区块链的数据,如果浏览器没有特殊显示的情况下,只能看到哈希,在可能的需求里,区块链上会有很多类型的数据,这些数据需要索引和查询。
这些索引和查询可以把数据进行统计,进行聚合显示,帮助用户使用。
在这个部分,The Graph是一个示例,是一个专做索引和查询的协议,所有的区块链网络理论上都需要部署这样的工具。
例如,The Graph在以太坊上,使查询难以直接查询的数据成为可能。
加密友好银行Signature Bank 2020年净利润为5.284亿美元:加密友好银行Signature Bank公布2020年第四季度(Q4)及全年财报。财报要点如下:1. 2020 年的净利润为5.284 亿美元,每股收益为 9.96 美元;2. 2020 年 Q4 总资产增加了创纪录的 89.8 亿美元至 633.2 亿美元,2020 年的总存款额达到 229.3 亿 美元;3.2020 年 Q4 的净利润达到创纪录的 1.73 亿美元,每股收益为 3.26 美元。相比之下,2019 年 Q4 的净利润为 1.476 亿美元,每股收益 2.76 美元;4. 税前拨备前利润(尚未扣除风险准备金的利润)为 2.615 亿美元,较 2019 年 Q4 (2.163 亿美元)增加了 20.9%;5. 截至 2020 年 12 月 31 日,Signature Bank 非应计贷款总额为 1.202 亿美元,占贷款总额的 0.25%,而 2020 年 Q3 为 8130 万美元,占贷款总额的 0.18%。此外,Signature Bank 在 Q4 发行了 3.75 亿美元的次级债券,并通过公开发行非累积永续 A 系列优先股成功募集了 7.3 亿美元。(businesswire)[2021/1/21 16:42:45]
像Uniswap等具有复杂智能合约的项目和Bored Ape Yacht Club这样的NFT将数据存储在以太坊区块链上后,从区块链上读取基本数据以外的任何内容都是困难的。
例如 Bored Ape Yacht Club?NFT,对合约执行读取操作,可以获得拥有者信息、总供应量、内容 URI等,这些都是合约里的基本信息,如果想像搜索引擎一样实现高级的查询和操作,如聚合、搜索、筛选都是不可能的。
因为如果想要获取这些数据,就必须处理交易者曾经发出的所有事件,用代币 ID 和 IPFS 哈希从IPFS存储位置读取元数据,然后对其进行聚合。费时费力。
The Graph 通过一个去中心化的协议解决了这个问题,该协议可以对区块链数据进行索引并实现高性能和高效的查询。然后可以使用标准 GraphQL API 查询这些 API(索引“子图”)。
具体实现流程如下:
1.去中心化应用程序通过智能合约上的交易向以太坊添加数据,智能合约在处理交易时发出一个或多个事件.
2.The Graph节点不断扫描以太坊以寻找新块以及它们可能包含的子图数据。The Graph节点在这些块中为子图查找以太坊事件并运行映射处理程序。映射是一个 WASM 模块,它创建或更新Graph Node 存储的数据实体以响应以太坊事件。
3.去中心化应用程序使用节点的GraphQL 端点查询 Graph Node 以获取从区块链索引的数据。Graph Node 反过来将 GraphQL 查询转换为对其底层数据存储的查询,以利用存储的索引功能获取这些数据。去中心化应用程序在丰富的用户界面中为最终用户显示这些数据,他们用这些用户界面在以太坊上发布新交易。
Ps:每个子图的页面都包含一个 Playground,可使用 GraphQL 查询该子图的数据。
郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。