Graph解锁了一个新的Web3用例:组织链下数据

煤油灯科技2023-05-20 11:47

Graph 可用于组织链下数据。任何人都可以创建一个工作流程,其中传统的链下数据发布到 IPFS,IPFS 哈希值发布到链上。然后可以通过子图(开放式 API)对这些数据进行索引——这反过来又可以用于以低成本和低工作量的高性能方式将有组织的链下数据提供给前端。

Graph 的用例在不断增长。虽然Graph 因组织链上数据而广为人知,但该协议的长期使命是提供对世界上所有公共知识和信息的轻松访问以去中心化的方式。通过 The Graph 使更广泛的数据池更容易访问的一种方法是一种尚未详细描述的方法:组织和提供链下数据。这篇文章详细介绍了一种使用 The Graph 经济且可扩展地大规模发布和提供复杂、动态、开源数据的方法,而无需构建或维护专有 API 的开销。这个用例提供了一个独特的机会来访问和组织传统上链下、集中托管的数据源,并为用户、开发人员、数据科学家、研究人员等创造有用的新数据经济。

Web3 的独特价值主张和权衡

Web3 架构通过使用户能够直接或通过中间件服务提供商读取和写入底层区块链来简化后端开发。然而,在规模上,出现的一个权衡是成本。对于更复杂的计算或更大规模的数据存储来说,链上交易成本(即 gas)过高。这限制了应用程序的复杂性,或者导致开发人员通过构建专有的链下、集中托管的 API 来增加链上数据源,从而偏离更多开源数据开发模型。

Web3 的独特价值主张是通过利用密码学让用户拥有他们的公共或私人数据,从而为软件应用程序开发创造一个竞争激烈的市场。区块链交易的公共性降低了用户“锁定”和转换成本,通过奖励冗余和共识的协议激励让用户对数据的持久性和完整性更有信心。这种性质的数据可移植性允许以不受单个公司股东或管理层约束的无需许可的方式通过众包开发工作以更低的成本构建新型体验。Web3 的开放数据与托管的 web2 数据孤岛形成鲜明对比。

Graph Network 是一个理想的例子,说明如何以一种减少对专有 API 的依赖并可以以无许可方式维护或托管的方式提供区块链数据。图通常是组织链上数据的同义词,但子图的无需许可的性质和索引效率也可以扩展到服务于链下数据。尽管链下数据不像链上数据那样受益于加密保证,但链下生成的数据仍然为全球经济提供动力。不同来源的数据可以受益于标准查询方法——GraphQL API(又名子图)。

使用Graph和链下数据创建 Web3 数据管道

让我们深入探讨如何使用Graph 在区块链和永久网络存储上发布和提供开源动态数据。使用此方法,可以可靠且经济地为第三方消费者编制索引并提供数据。解耦数据的发布、索引和服务可最大限度地减少开发运营费用。此外,通过使用Graph 的去中心化网络,对这些数据的访问保持稳健可靠,而无需数据发布者做出任何额外的努力。

该方法由以下部分组成:

  • 执行复杂计算并将数据发布到可由Graph索引的 permaweb 源的链下 cron 作业(目前这只能使用 IPFS 使用网络对文件数据源的支持来完成,一旦协议可以扩展到 Arweave 或 Filecoin在这些协议上添加对文件内容的索引支持)
  • cron 作业应该产生一个链上交易,该交易发布文件哈希和任何所需的元数据(时间、主题名称等),理想情况下使用不执行计算但保留 IPFS 哈希的 gas 最小化数据边缘合约。开发人员可以重用 Edge & Node 已经为此目的创建的Data Edge 合约。OpenZeppelin Autotasks使这与 API 调用一样简单。)
  • 发布一个子图,该子图根据发布到链上的文件哈希索引 IPFS 文件。

一旦子图被发布,它就可以被索引器获取和服务,允许第三方开发人员和用户自费查询数据,而不依赖于中央实体来托管和管理与服务数据相关的开发操作。

换句话说:一旦数据存在于链上,任何人都可以使用子图来查询传统上孤立的信息并将其显示在前端或启动新的用例——所有这些都不需要运行昂贵、容易出错的服务器来托管该数据.

对于公共/开源数据,此工作流通过利用 The Graph 的分布式索引器网络外包了与维护专有 API 服务器相关的大量开销。通过开源和索引数据,该工作流允许第三方组合子图并将其效用扩展到其他用例,同时最大限度地减少数据发布者的交易和存储成本。在此工作流程中,数据发布者仅负责运行 1) cron 作业,2) IPFS 节点固定(目前由 The Graph 补贴)或 permaweb 文件存储,以及 3) 与链上交易相关的成本,在高吞吐量链上通常很低。

除了数据发布者的成本优势外,使用Graph 索引 IPFS 文件内容还为用户提供了与 Graph 索引节点的地理分布和冗余相关的性能优势。由于没有与文件可用性或服务质量相关的内置协议激励,IPFS 很难用作任何高流量 Web 应用程序的后端。由于Graph 的索引器竞争(并直接支付)查询,他们有内在的激励措施来提供扩展消费级 Web 应用程序所需的服务质量,并作为 DNS 层或网关在高性能中索引 permaweb 文件方式。

此外,Graph 和 permaweb 存储的去中心化结构通过减少对需要专有 API 提供商来提供数据的单一故障点的依赖,为鼓励参与和为第三方开发人员提供更多信心提供了许多好处。这些好处包括:

  • 可以使用内容哈希(不可变地存储在链上)复制和验证底层数据,使第三方开发人员或 IPFS 节点提供商能够复制/复制/自托管/验证数据
  • 子图 API 清单(包含模式和通常的逻辑)被持久化到链中,并且可以被多个索引器无权限地索引,从而在托管和服务数据时提供地理分布和冗余

Graph生态系统中的一个例子

Edge & Node 最近制作了一个预言机,使用这种方法发布和提供网络成本和服务质量指标。

每五分钟,将可用网关的聚合服务质量和成本数据发布到 IPFS

通过DataEdge 合约将 IPFS 文件哈希发布到 Gnosis 链

然后可以将这些 IPFS 文件编入子图中的索引,然后供协议利益相关者使用。例如代码,可以参考这个由GraphOps的 Juan Manuel Rodriguez Defago 构建的子图 repo,它解析 IPFS 文件中的数据并将值存储在 Indexer 数据库中。

这种方法使我们能够最大限度地减少 devops 开销,同时使数据可供DappLooker等社区成员使用,使他们能够构建有用的工具,而无需依赖数据发布者来托管和维护专有 API(例如:DappLooker 团队构建的两个仪表板基于关于服务质量和成本子图:网关的服务质量仪表板、索引器的服务质量仪表板)

费用

该工作流程可以以非常低的成本实施。以下是与我们的服务质量预言机相关的成本。

  • Gnosis 链 DataEdge 合约交易:Gnosis 链上每月约 1-2 美元,约 1 万笔交易(不是打字错误,实际上是 1-2 美元)
  • IPFS 节点固定:有补贴。独立的 SaaS 选项起价为每月 20 美元,免费套餐适用于简单/低容量使用。
  • 服务:发布者 0 美元,数据消费者支付查询费用(索引器市场根据子图的复杂性和查询量设置的成本)。潜在用户可以在此电子表格中查看当前用户每月为不同级别的查询量支付的费用。

探索新的 Web3 用例

通过 Graph 提供的来自预言机的动态数据可以为永久网站开辟一些有趣的新可能性,包括:

具有精简、廉价后端的博客和内容中心:

将博客的内容托管到 IPFS,并使用子图将博客的内容提供给前端。内容发布者可以通过定期将内容发布到 IPFS 并使用此方法链接来使用 ENS 托管博客。博客的前端代码将使用子图作为后端,并且不需要托管、服务器维护或 DNS 域名注册。出版商只需要有一个加载的账单余额来支付基于网站流量的查询。根据流量和更新频率,这可以以 < 1 美元/月的可变成本完成。

算法选择和个性化体验:

优先考虑为社区精选的内容。数据发布者可以通过执行复杂的机器学习工作负载来创建自定义提要排名分数,以推荐链下内容,并在子图中提供模型输出。Permaweb 或联合社交网络前端可以使用模型输出作为前端的输入,根据用户公开表达的偏好和行为为他们创建个性化体验。

数据发布者与应用程序/前端运营商的划分允许开源社区中前端和后端工程师的专业化和分工,并且可能是去中心化社交应用程序和协议(如 Bluesky、Lens、Mastodon、除其他外。

实时监控:

包含来自预言机的实时数据的 Permaweb 站点可用于监控范围广泛的系统和流程,从供应链到市场再到天气状况。Edge & Node 目前使用这个工作流来允许社区监控聚合索引器和子图服务质量在去中心化网络上的查询。

想象一下Graph如何用于访问网络上有用的(但目前是孤立的)公共数据,并增加发布第三方使用的数据的传统机构对 web3 的参与,这令人兴奋。无论目标是创建由精益、去中心化的基础架构提供支持的动态站点,还是激励对大型数据集进行众包分析,子图都可以使之成为可能。


参考链接:https://thegraph.com/blog/the-graph-off-chain-data-web3-data-pipelines/

 

---煤油灯科技victorlamp.com编译整理---

你可能也喜欢这些文章

科技互联网,科技,资讯,动态,洞察,量子,计算,AI,人工智能,机器人,区块链,Web3,分布式,操作系统,OS,芯片,视频,深度,论文