Graph - 区块链技术的去中心化查询协议

煤油灯科技2022-08-10 09:32

摘要:

这项研究工作介绍了一种名为“Graph”的新型去中心化查询协议,用于索引和缓存来自区块链和其他此类存储网络的数据。这项研究工作描述了P2P网络的查询接口、拓扑、经济激励机制和旨在保持网络作为公共设施运行的机制。这项研究工作可能会提供跨越三个重大改进成就的“Graph”。主要交付将是任何dApp工程师都可以申请使用的免费帮助。它将包含用于表征模式、注册映射和使用GraphQL提问的稳定接口。作为一种综合帮助,首先调度将使我们能够以更快的速度强调计划、执行和财务动机。随后的成就将是全P2P网络的调度。在此交付之后,任何人实际上都想运行一个Graph节点并获得Graph代币以参与该组织。这是查询市场以及索引和缓存市场将打开的阶段。第三次重要交付将包含对私有数据的帮助。私有数据在链上受到保护,但受到客户的加扰和限制。

关键词:Pnm,监督学习,个体数据,标准化最大值,预测标准化,学习方法。

1. 绪论

大量信息存在于受少数企业限制的仓库中。Google、Facebook、YouTube、LinkedIn和Salesforce等Web时间应用程序都基于这些信息联合。这种集中化将巨大的力量置于一对夫妇的控制之下,并削弱了某些人的财务自由和自信。

我们接受这将建立广泛的财务自由,因为更多的项目可以在一个合理和开放的市场中竞争,并且建立工具来促进个人增加一个更大和更远的公共场所。为了使这一愿景成为现实,dApp应该有一个互操作层。在类似空间中工作的应用程序需要一种方法来促进和同意规范化名称。他们同样需要一种典型的方法来查询信息。应用程序使用查询来发现更大数据集中的信息。

总的来说,问题包含筛选、分页、排列、收集和连接结果集等任务。执行查询需要制作和保存文件,否则运行查询将非常缓慢。这一切都需要财政推动来创造一个繁荣的环境。Graph为Web3提供了这个基础层,Web3是一个新兴的Web应用程序堆栈。图1:Web3应用程序堆栈。

图1中出现的设置分散式查询执行层目前不存在。如果没有针对Web3的去中心化查询执行层,dApp设计人员应该依靠在专门指定的前提下形成自定义排序工作人员。这代表了一个汇集的部分,需要设计和开发资产来构建和跟上。提供去中心化的查询执行层将允许 dApp 设计人员以更少的资产更快地调度更可靠的dApp。它还将使dApp变得完全去中心化。

去中心化查询协议:去中心化查询协议的特点是各种规则,客户通过这些规则支付一个去统一的中心组织,用于订购、保留和质疑信息,这些信息被存放在开放区块链和去中心化存储组织(如IPFS/Swarm)上。

约定要求: 

1. 为另一类信息严肃的dApp赋能,去中心化查询协议应满足随附的先决条件: 

2. 无需确认的信任——客户应有权选择在不自主检查每个查询或 堆积隐藏的粗略信息。

3. 计量——客户应该可以选择有效地为网络处理的每个问题付费,对客户或中心的交易对手风险微不足道。

4. 可预测的执行——对于针对明确信息源的查询,客户应该可以选择为不意外的执行付费。

5. 数据可访问性——客户应该可以选择付费以保持信息可访问,以便针对明确的信息源运行问题。

6. 价格有效性——客户应该可以选择为生产性和严肃商业中心的问题、执行和信息可用性付费。

7. 激励安排——应在客户、中心和dApp开发人员之间调整动力,以激发组织的发展和积极的组织影响。

2. 文献回顾 

图1中出现的设置去中心化查询执行层目前不存在。如果没有针对Web3的去中心化查询执行层,dApp设计人员应该依靠在专门指定的前提下形成自定义排序工作人员。这代表了一个汇集的部分,需要设计和开发资产来构建和跟上。提供去中心化的查询执行层将允许dApp设计人员以更少的资产更快地调度更可靠的dApp。 它还将使dApp变得完全去中心化。

去中心化查询协议:

去中心化查询协议的特点是各种规则,客户通过这些规则支付一个去统一的中心组织,用于订购、保留和询问信息,这些信息被存放在开放区块链和去中心化存储组织(如IPFS/Swarm)上。

约定要求: 

1. 为另一类信息严肃的dApp赋能,去中心化查询协议应满足随附的先决条件: 

2. 无需确认的信任——客户应有权选择在不自主检查每个查询或 堆积隐藏的粗略信息。

3. 计量——客户应该可以选择有效地为网络处理的每个问题付费,对客户或中心的交易对手风险微不足道。

4. 可预测的执行——对于针对明确信息源的查询,客户应该可以选择为不意外的执行付费。

5. 数据可访问性——客户应该可以选择付费以保持信息可访问,以便针对明确的信息源运行问题。

6. 价格有效性——客户应该可以选择为生产性和严肃商业中心的问题、执行和信息可用性付费。

7. 激励安排——应该在客户、中心和dApp开发者之间调整动力,以激发组织的发展和积极的组织影响。

regret模拟:每个训练样本都绘制在图表上。我们为这个训练集拟合了一个多项式函数。我们将-1和1轴上的每个点视为测试点。我们计算相应的regret。对于训练样本周围的区域,regret率很低。 当远离训练样本时,regret会增加。我们拟合不同程度的多项式函数。对于每个多项式次数以及-1和1之间的每个点,我们都会计算regret。我们得到了类似的行为:在训练集周围,regret很低。当多项式次数增加时,我们得到更高的regret。它可能与MDL或Oakum剃须刀原理有关。

3. 研究方法:

Graph执行去中心化查询协议,它使客户能够在不使用任何用于订购和存储的集成框架的情况下查询组织的信息。

3.1 系统概述

约定堆栈:

图可以划分为一堆子约定,这些子约定可以作为明确无误的可互操作层巧妙地处理,如图2所示。

图2:协议栈有以下子协议:

1. 共识层——负责智能合约的执行和支付结算。

2. 点对点 (P2P) 网络——定义节点如何定位和相互连接。

3. 存储层——存储在公共区块链或内容可寻址网络上的数据。

4. 查询处理——如何将查询路由到特定节点进行处理。

5. 支付渠道——促进系统中快速和低成本的支付。

6. 治理——管理模式、数据源和争议。

7. 查询市场——用户为特定查询向节点付费的机制。

8. 索引和缓存市场——用户支付节点用于索引和缓存数据源的机制。

Token

Graph 引入了一个新的令牌——Graph Tokens,它在保护和管理网络方面发挥着至关重要的作用。代币的每种用途都将与它们各自的相关子协议一起描述,并在本文档的代币经济学部分进行总结。

查询语言 

Graph将支持用GraphQL编写的查询,GraphQL是一种由Facebook发明和开源的查询语言。虽然后端工程师可能更熟悉SQL,但它并不适合从前端应用程序运行查询。传统的Web应用程序通过在SQL数据库前面编写集中式API服务器和数据访问层来处理这种阻抗不匹配,然后将其公开为REST端点。由于dApp的要求是它们不需要集中式基础设施来运行,因此dApp客户端可以以灵活的方式直接从前端查询数据非常重要。GraphQL旨在满足这一标准,并在网络和移动社区中加速采用。

数据模型 

Graph中的所有查询都是针对特定数据源执行的。一个数据源由一个模式和一个或多个数据集组成:模式是一个GraphQL SDL模式,它定义了可以查询的实体、值、类型和关系。

与传统数据库不同,这里的Schema纯粹是一个逻辑定义,并不规定存储层的数据结构。

数据集定义了存在于公共区块链或分散存储网络上的数据,这些数据可以作为特定数据源的一部分进行查询。它由数据、映射和可选的更新函数组成。

数据标识去中心化存储层中的原始数据。它包含正在使用的存储系统的标识符,以及该存储系统中原始数据的位置。位置格式因存储系统而异,例如星际文件系统 (IPFS) 上的内容哈希,但以太坊上的合约地址。

映射定义数据如何映射到特定模式。它还包括围绕数据存储格式的元数据,例如CSV、Parquet或自定义二进制格式。

更新函数是一个可选脚本,可为以太坊合约数据等可变数据提供。也可以为内容寻址的数据提供它,这些数据通过IPNS等命名服务而不是其不可变的内容哈希来引用。 该函数接受数据作为输入并返回由CUD(创建、更新、删除)操作和有效负载组成的更新事件。更新事件允许高性能地更新索引,而不必完全重新索引基础数据。

网络参与者 

网络中有几种类型的参与者,由它们在协议中的功能角色定义。除了协议外部的dApp客户端外,单个节点实现可以履行多个功能角色。

1. dApp 客户端——运行在最终用户机器上的前端应用程序,用于查询图形。

2. 网关节点——充当 HTTP、WebSocket 或 JSON RPC 端点 fordApp 客户端以查询图形的节点。

3. P2P节点——参与P2P网络的节点。

4.查询节点——参与查询处理的节点。

经济代理 

有几种类型的经济代理,我们通过一套共同的激励机制来定义它们对协议的使用。

1. 最终用户——寻求从应用程序中获得实用程序并付费使用网络。

2. dApp开发人员——寻求将他们的工作货币化,为最终用户构建去中心化的应用程序。

3. 节点运营商——运营P2P节点和查询节点以提取费用并提高现有代币持有量的价值。

4. Data Source Curator——在Graph中创建和管理数据源以提取兴趣并提高现有代币持有量的价值。

5. 验证器——验证查询响应以换取兴趣并提高现有代币持有的价值。

3.2 子协议

共识层 

Graph有几个组件,需要基于区块链的共识层来保证协议中的机制(支付、投票、验证等)是不可变的、不可逆的,并且可以在没有帮助的情况下执行 的中央管理机构。为此,我们将使用现有的区块链,例如以太坊。

P2P网络:Graph实现了一个结构化的覆盖网络,它建立在IPFS3和BitTorrent4等内容可寻址网络 (CAN) 的思想之上。

我们引入服务可寻址网络的概念来描述我们的公式;关键区别在于,虽然CAN利用分布式哈希表 (DHT) 来定位网络上存储特定文件或对象的节点5,但我们的 P2P 网络用于定位能够提供特定服务的节点,该服务可以是任意计算工作。我们的P2P网络子协议的设计与所提供的服务相关,这是我们在协议栈的其他部分中利用的事实。

图3:服务可寻址

查询处理 

查询处理分为五个不同的阶段:查询拆分、服务发现、查询路由、嵌套查询处理和响应整理。

查询拆分 

查询处理子协议的第一步是将查询拆分为不相交的顶级查询片段,这些片段可能对应多个数据源。查询片段是可以自行解析的查询的任何部分。这些片段被单独处理,并行地通过后续的查询处理阶段。

4. 结果分析

在服务发现阶段,我们利用我们的服务可寻址网络来定位一个P2P节点,其路由表对应于一个特定的服务组,如图4所示。在这个子协议的context中,我们定义了服务组是一组能够处理特定数据源的查询的查询节点。

图4:服务发现阶段

查询路由

在查询路由阶段,发起查询的网关节点决定将特定查询片段转发到哪个查询节点,如图 5 所示。查询路由阶段使用服务组路由表,其中包含每个查询的位置 服务组中的节点,以及其他元数据。

图5 查询路由阶段 

查询市场:查询市场允许最终用户为针对特定数据源发出的单个查询(或查询片段)支付查询节点费用。查询市场建立在可扩展的P2P网络和查询路由子协议之上。我们利用可扩展的服务组路由表元数据列出价格表,查询节点可以使用该价格表来宣传他们为处理特定数据源的查询而收取的费用。费用将根据查询的估计复杂性、查询响应的大小和延迟来定价。我们将查询路由到特定的查询节点,以实现任何给定查询的成本和性能的理想权衡。网关节点可以选择在其查询界面中公开此逻辑,以便dApp开发人员或最终用户可以为其特定用例指定最佳成本与性能权衡。

查询节点必须绑定所需数量的graph令牌才能参与市场。他们绑定的代币越多,他们就越有可能被网络用户视为值得信赖并能够提取查询费用。虽然查询处理的大多数支付交易将在链下发生,但最终用户或网关节点可能会通过在链上创建争议来挑战任何特定的查询响应,这是一种投票智能合约,其中一组验证者对正确性进行投票 提交和显示过程中的查询响应。如果挑战成功,则查询节点的绑定代币将被没收给创建争议的挑战者。验证者节点因通过代币通胀保护市场而获得奖励。

索引和缓存市场:

虽然查询市场激励查询节点响应单个查询,但它不提供任何可用于高效处理查询的查询节点的保证。这可能会有问题,尤其是在引导尚未使用的新数据源时。索引和缓存市场允许查询节点因提供特定的服务水平协议 (SLA) 而获得补偿,该协议承诺可用于在特定延迟和成本范围内处理特定数据源的查询。如果发现查询节点违反SLA,则其质押的代币将被没收给支付SLA的用户。网络可以实施质询-响应协议来验证是否满足SLA,即使用户没有主动查询该数据源。

我们可能会在三个重大改进成就中提供Graph。主要交付将是任何dApp工程师都可以申请使用的免费帮助。它将包含用于表征模式、注册映射和使用GraphQL提问的稳定接口。该交付计划于2018年第三季度进行。首先作为综合帮助进行调度将使我们能够以更快的速度强调计划、执行和财务动机。随后的成就将是2019年完整的P2P网络的分发。在此交付之后,任何人都将真正想要运行一个Graph Node并获得Graph Tokens以参与组织。这是查询市场以及索引和缓存市场将打开的阶段。第三次重要交付将包含对私有数据的帮助。私有数据在链上受到保护,但受到客户的加扰和限制。此交付预定于2021年进行。

5. 结论

在本文中,我们介绍了去中心化查询协议的先决条件,这是一组规则,客户通过这些规则向去中心化的中心组织支付订购、保留和质疑信息,这些信息被存放在开放的区块链和去中心化的存储组织中。我们给出了Graph的一个不可否认的级别大纲,我们对去中心化查询协议的详细说明。我们同样提出了建立dApp的定义——dApp 应该让客户负责他们的信息。dApp是利用本地拥有和监督的信息或私人的和受客户约束的信息组装而成的。 这样,许多项目和管理可以基于兼容的数据集,并且客户端可以在dApp之间毫无保留地切换。Graph作为一个互操作层,它将使这些繁荣的可互操作dApp的生物系统蓬勃发展并取代中途受控的信息联合组织。


原文链接:https://www.researchgate.net/publication/359135066_The_Graph_-A_Decentralized_Query_Protocol_for_Block_chain_Technology


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

完整附件下载:conference.pdf

你可能也喜欢这些文章

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