全球区块链数据服务-The Graph

全球区块链数据服务-The Graph

专用API
服务商 服务商: The Graph
【更新时间: 2024.08.29】 The Graph 是开放协议,使开发者构建API(子图),简化区块链数据组织供应用使用。它通过去中心化市场,消除了运行数据服务器和解析原始数据的需求。支持50+网络,110+索引节点,提供超1.26万亿次查询。
免费 (10万次/月) 去服务商官网采购>
服务星级:2星
⭐ ⭐ 🌟 🌟 🌟 🌟 🌟
调用次数
0
集成人数
0
商用人数
0
! SLA: N/A
! 响应: N/A
! 适用于个人&企业
收藏
×
完成
取消
×
书签名称
确定
<
产品介绍
>

什么是全球区块链数据服务-The Graph?

The Graph 是一个开放的协议和网络,它允许开发者构建和发布称为子图的API,这些API可以组织和提供区块链数据给应用程序。它通过利用去中心化的数据市场,使得开发者无需运行自己的数据服务器、构建索引基础设施或解析原始数据,即可创建开创性应用程序。The Graph 通过全球分布的贡献者网络,确保应用程序的正常运行时间,并保持其数据全天候流动。此外,它还支持50多个不同的网络,并且拥有110+索引人节点,提供超过1.26万亿次的查询服务。

什么是全球区块链数据服务-The Graph接口?

由服务使用方的应用程序发起,以Restful风格为主、通过公网HTTP协议调用全球区块链数据服务-The Graph,从而实现程序的自动化交互,提高服务效率。

全球区块链数据服务-The Graph有哪些核心功能?

  1. 数据索引与组织:通过子图(Subgraphs),The Graph 能够索引和组织区块链上的数据,包括智能合约事件和日志,使其以结构化的形式呈现,便于应用程序查询。
  2. 快速数据访问:提供高性能的API接口,使得开发人员和数据消费者能够快速访问索引后的区块链数据,显著提升应用程序的响应速度和用户体验。
  3. 去中心化基础设施:利用全球分布的贡献者网络(索引人、策展人、委托人和子图开发者),确保数据的高可用性和弹性,减少单点故障的风险。
  4. 成本效益:通过减少运行和维护数据服务器及索引基础设施的成本,以及利用Graph的数据市场,帮助用户显著降低开支。
  5. 支持多网络:支持50多个区块链网络及其上的应用,使得开发者可以在不同的区块链生态系统中构建应用程序。
  6. 行业标准数据访问:推广子图作为区块链数据访问的行业标准,促进区块链数据的开放性和互操作性。

全球区块链数据服务-The Graph的技术原理是什么?

Graph基于子图描述(称为子图清单)学习如何索引以太坊数据。子图描述定义了子图感兴趣的智能合约、要注意的合约中的事件,以及如何将事件数据映射到Graph将存储在其数据库中的数据。

一旦编写了子图清单,就可以使用Graph CLI将定义存储在IPFS中,并告诉索引人开始为该子图的数据编制索引。

此图提供了部署子图清单后用于处理以太坊交易的数据流的更多细节

流程遵循这些步骤:

  1. 一个去中心化的应用程序通过智能合约上的交易向以太坊添加数据。

  2. 智能合约在处理交易时,会发出一个或多个事件。

  3. Graph 节点不断扫描以太坊的新区块和它们可能包含的子图的数据。

  4. Graph 节点在这些区块中为你的子图找到以太坊事件并运行你提供的映射处理程序。 映射是一个 WASM 模块,它创建或更新 Graph 节点存储的数据实体,以响应以太坊事件。

  5. 去中心化的应用程序使用Graph节点的GraphQL 端点,从区块链的索引中查询 Graph 节点的数据。 Graph 节点反过来将 GraphQL 查询转化为对其底层数据存储的查询,以便利用存储的索引功能来获取这些数据。 去中心化的应用程序在一个丰富的用户界面中为终端用户显示这些数据,他们用这些数据在以太坊上发行新的交易。 就这样周而复始。

全球区块链数据服务-The Graph的核心优势是什么?

1.  构建更快,服务器减少100%
无需运行自己的数据服务器、构建索引基础设施或解析原始数据,即可创建开创性应用程序。

2.  减少开支,每月减少60-98%
通过利用Graph竞争激烈的数据市场,减少运行昂贵基础设施的成本和时间。

3.  弹性提升,99.99%的正常运行时间
通过全球分布的贡献者网络,确保应用程序的正常运行时间,并保持其数据全天候流动。

在哪些场景会用到全球区块链数据服务-The Graph接口?

1. 去中心化金融(DeFi):允许DeFi应用快速查询和分析智能合约中的资金池、借贷、交易等数据,帮助用户做出更明智的投资决策。

 

 

2. NFTs与数字艺术品:支持NFTs的元数据查询,包括艺术品的所有权、交易历史、市场价值等,为NFT市场和数字艺术品交易平台提供数据支持。

 

 

 

3. DAO(去中心化自治组织)治理:便于DAO成员和治理者查询提案、投票、资金使用情况等关键信息,增强DAO的透明度和决策效率。

 

 

4. 游戏与元宇宙:为游戏和元宇宙应用提供玩家数据、游戏内资产、交易记录等查询功能,提升游戏的互动性和可玩性。

 

<
产品价格
>

<
使用指南
>

服务API使用指南

本指南将帮助您快速集成和使用我们的服务API。请按照以下步骤进行操作:

步骤 1: 连接钱包

  1. 访问 Subgraph Studio

  2. 点击“连接钱包”并按照提示完成连接。

步骤 2: 创建子图

  1. 在连接钱包后,点击“创建子图”。

  2. 按照推荐格式命名子图,例如:“Subgraph Name Chain Name”。

步骤 3: 安装 Graph CLI

  1. 确保您的本地环境中已安装 Node.js 和 npm/yarn。

  2. 运行以下命令安装最新版本的 Graph CLI:

    • 使用 npm:

      npm install -g @graphprotocol/graph-cli@latest
    • 使用 yarn:

      yarn global add @graphprotocol/graph-cli

步骤 4: 初始化子图

  1. 在本地运行以下命令初始化子图:

    graph init --studio <SUBGRAPH_SLUG>
  2. 根据提示输入相关信息,包括协议、子图标识符、目录、合约地址等。

步骤 5: 修改子图文件

  1. 在初始化后,您将获得三个主要文件:

    • Manifest (subgraph.yaml): 定义数据源。

    • Schema (schema.graphql): 定义要检索的数据。

    • AssemblyScript Mappings (mapping.ts): 处理数据转换。

步骤 6: 生成代码和构建子图

  1. 运行以下命令生成代码并构建子图:

    graph codegen
    graph build

步骤 7: 认证和部署子图

  1. 获取部署密钥,您可以在 Subgraph Studio 的子图页面找到。

  2. 运行以下命令进行认证和部署:

    graph auth --studio <DEPLOY_KEY>
    graph deploy --studio <SUBGRAPH_SLUG>
  3. 输入版本标签,建议使用语义版本控制(如 0.0.1)。

步骤 8: 测试子图

  1. 在 Subgraph Studio 的 Playground 环境中,进行样本查询以测试子图。

  2. 检查日志以确认子图是否正常运行。

步骤 9: 发布子图

  1. 在子图页面点击“发布”按钮。

  2. 选择要发布的网络,推荐选择 Arbitrum One。

  3. 如果需要,您可以在发布时选择将子图进行策展。

步骤 10: 查询子图

  1. 使用 GraphQL 查询您的子图,查询 URL 可以在子图页面找到。

  2. 如果没有 API 密钥,可以使用免费的开发查询 URL 进行开发和测试。

 

详情查看链接:https://thegraph.com/docs/en/quick-start/

<
产品问答
>
?
我需要多少个查询?
您无需提前知道需要多少查询。您只需按实际使用量付费,并且可以随时从您的帐户中提取 GRT。 我们建议您高估所需的查询数量,这样您就不必频繁充值。对于中小型应用程序,一个好的估算方法是从每月 100 万到 200 万个查询开始,并在前几周密切监控使用情况。对于大型应用程序,一个好的估算方法是将您网站的每日访问量乘以您最活跃的页面在打开时进行的查询数量。 当然,新用户和现有用户都可以联系 Edge&Node 的 BD 团队进行咨询,以了解有关预期用途的更多信息。
?
我可以从我的账单余额中提取 GRT 吗?
是的,您始终可以从账单余额中提取尚未用于查询的 GRT。账单合约仅用于将 GRT 从以太坊主网桥接到 Arbitrum 网络。如果您想将 GRT 从 Arbitrum 转移回以太坊主网,则需要使用 Arbitrum Bridge。
?
去中心化数据的崛起是什么?⁠
去中心化数据的崛起是 Edge & Node 发起的一项计划。该计划使子图开发人员能够无缝升级到 The Graph 的去中心化网络。 该计划借鉴了 The Graph 生态系统的先前发展,包括升级索引器以满足对新发布的子图的查询。
?
托管服务发生了什么?
⁠ 托管服务查询端点不再可用,开发人员无法在托管服务上部署新的子图。 在升级过程中,托管服务子图的所有者可以将其子图升级到 The Graph Network。此外,开发人员还可以认领自动升级的子图。
?
Subgraph Studio 是否受到此次升级的影响?
⁠不会,Subgraph Studio 不会受到 Sunrise 的影响。Subgraphs 可立即用于查询,由升级版 Indexer 提供支持,它使用与托管服务相同的基础架构。
?
为什么子图会发布到 Arbitrum,它是否开始索引不同的网络?⁠
The Graph 网络最初部署在以太坊主网上,但后来转移到 Arbitrum One,以降低所有用户的 gas 成本。因此,所有新子图都会发布到 Arbitrum 上的 The Graph 网络,以便索引器可以支持它们。Arbitrum 是发布子图的网络,但子图可以索引任何受支持的网络
?
当我的账单余额耗尽时会发生什么情况?我会收到警告吗?
在您的账单余额用完之前,您将收到几封电子邮件通知。
?
我可以从我的账单余额中提取 GRT 吗?
是的,您始终可以从账单余额中提取尚未用于查询的 GRT。计费合约仅用于将 GRT 从以太坊主网桥接到 Arbitrum 网络。如果你想将 GRT 从 Arbitrum 转回以太坊主网,你需要使用 Arbitrum 桥。
?
什么是子图?
子图是建立在区块链数据之上的自定义 API。使用 GraphQL 查询语言查询子图,并使用 Graph CLI 部署到 Graph 节点。一旦部署并发布到 The Graph 的去中心化网络,索引器就会处理子图并使其可供子图使用者查询。
?
我可以删除我的子图吗?
子图一旦创建就无法删除。
?
我可以更改我的子图名称吗?
不。创建子图后,无法更改名称。在创建子图之前,请务必仔细考虑这一点,以便其他 dapp 可以轻松搜索和识别它。
?
我可以更改与我的子图关联的 GitHub 帐户吗?
不。创建子图后,无法更改关联的 GitHub 帐户。在创建子图之前,请务必仔细考虑这一点。
?
如果我的智能合约没有事件,我还能创建子图吗?
强烈建议您构建智能合同,使其事件与您感兴趣的查询数据相关联。子图中的事件处理程序由合约事件触发,是迄今为止检索有用数据的最快方式。 如果您正在使用的合约不包含事件,则您的子图可以使用 call 和 block 处理程序来触发索引。尽管不建议这样做,因为性能会明显变慢。
?
模板与数据源有何不同?
模板允许您在子图索引时动态创建数据源。当人们与合约交互时,您的合约可能会生成新合约,并且由于您预先知道这些合约的形状(ABI、事件等),因此您可以定义如何在模板中为它们编制索引,当它们生成时,您的子图将通过提供合约地址来创建动态数据源。
?
是否可以使用两个合约的 graph init from graph-cli 设置子图?还是我应该在运...
是的。在 graph init 命令本身上,您可以通过一个接一个地输入合约来添加多个数据源。您还可以使用 graph add 命令添加新的数据源。
?
监听多个合约时,是否可以选择合约顺序监听事件?
在子图中,事件始终按照它们在区块中出现的顺序进行处理,无论是否跨多个合约。
?
我可以将 ethers.js 或其他 JS 库导入到我的子图映射中吗?
目前不可以,因为映射是用 AssemblyScript 编写的。一种可能的替代解决方案是将原始数据存储在实体中,并在客户端上执行需要 JS 库的逻辑。
?
是否可以在不重新部署的情况下将子图复制到另一个账户或终端节点?
您必须重新部署子图,但如果子图 ID(IPFS 哈希)没有更改,则不必从头开始同步。
?
是否可以在 graph-node 上使用 Apollo Federation?
目前尚不支持联合身份验证,但我们确实希望在将来支持它。目前,您可以做的是在客户端上或通过代理服务使用 Schema 拼接。
?
如何更新主网上的子图?
如果您是子图开发人员,则可以使用 CLI 将新版本的子图部署到 Subgraph Studio。届时它将是私有的,但如果您对它感到满意,则可以发布到去中心化的 Graph Explorer。这将创建鉴赏家可以开始发送信号的新版本的子图。
<
关于我们
>
The Graph项目由信息技术和服务公司Graph Protocol推出,其目标是为开发者提供一种更加便利的途径来获取区块链数据。该项目基于GraphQL查询语言开发,并从以太坊网络、星际文件系统(IPFS)和其它Web3数据源中收集数据,用于索引和查询。The Graph的愿景是成为区块链领域的“Google”,为去中心化应用程序(DApps)提供高效且去中心化的数据API服务。
联系信息
服务时间: 7*24
网页在线客服: 咨询

全球分布
分散式基础设施
是什么让 The Graph 如此有韧性?进入 The Graph 网络,这是一个由分布式参与者驱动的去中心化数据市场:索引器、策展人、委托人和子图开发人员。

<
最可能同场景使用的其他API
>
API接口列表
<
产品价格
>

<
使用指南
>

服务API使用指南

本指南将帮助您快速集成和使用我们的服务API。请按照以下步骤进行操作:

步骤 1: 连接钱包

  1. 访问 Subgraph Studio

  2. 点击“连接钱包”并按照提示完成连接。

步骤 2: 创建子图

  1. 在连接钱包后,点击“创建子图”。

  2. 按照推荐格式命名子图,例如:“Subgraph Name Chain Name”。

步骤 3: 安装 Graph CLI

  1. 确保您的本地环境中已安装 Node.js 和 npm/yarn。

  2. 运行以下命令安装最新版本的 Graph CLI:

    • 使用 npm:

      npm install -g @graphprotocol/graph-cli@latest
    • 使用 yarn:

      yarn global add @graphprotocol/graph-cli

步骤 4: 初始化子图

  1. 在本地运行以下命令初始化子图:

    graph init --studio <SUBGRAPH_SLUG>
  2. 根据提示输入相关信息,包括协议、子图标识符、目录、合约地址等。

步骤 5: 修改子图文件

  1. 在初始化后,您将获得三个主要文件:

    • Manifest (subgraph.yaml): 定义数据源。

    • Schema (schema.graphql): 定义要检索的数据。

    • AssemblyScript Mappings (mapping.ts): 处理数据转换。

步骤 6: 生成代码和构建子图

  1. 运行以下命令生成代码并构建子图:

    graph codegen
    graph build

步骤 7: 认证和部署子图

  1. 获取部署密钥,您可以在 Subgraph Studio 的子图页面找到。

  2. 运行以下命令进行认证和部署:

    graph auth --studio <DEPLOY_KEY>
    graph deploy --studio <SUBGRAPH_SLUG>
  3. 输入版本标签,建议使用语义版本控制(如 0.0.1)。

步骤 8: 测试子图

  1. 在 Subgraph Studio 的 Playground 环境中,进行样本查询以测试子图。

  2. 检查日志以确认子图是否正常运行。

步骤 9: 发布子图

  1. 在子图页面点击“发布”按钮。

  2. 选择要发布的网络,推荐选择 Arbitrum One。

  3. 如果需要,您可以在发布时选择将子图进行策展。

步骤 10: 查询子图

  1. 使用 GraphQL 查询您的子图,查询 URL 可以在子图页面找到。

  2. 如果没有 API 密钥,可以使用免费的开发查询 URL 进行开发和测试。

 

详情查看链接:https://thegraph.com/docs/en/quick-start/

<
依赖服务
>
<
产品问答
>
?
我需要多少个查询?
您无需提前知道需要多少查询。您只需按实际使用量付费,并且可以随时从您的帐户中提取 GRT。 我们建议您高估所需的查询数量,这样您就不必频繁充值。对于中小型应用程序,一个好的估算方法是从每月 100 万到 200 万个查询开始,并在前几周密切监控使用情况。对于大型应用程序,一个好的估算方法是将您网站的每日访问量乘以您最活跃的页面在打开时进行的查询数量。 当然,新用户和现有用户都可以联系 Edge&Node 的 BD 团队进行咨询,以了解有关预期用途的更多信息。
?
我可以从我的账单余额中提取 GRT 吗?
是的,您始终可以从账单余额中提取尚未用于查询的 GRT。账单合约仅用于将 GRT 从以太坊主网桥接到 Arbitrum 网络。如果您想将 GRT 从 Arbitrum 转移回以太坊主网,则需要使用 Arbitrum Bridge。
?
去中心化数据的崛起是什么?⁠
去中心化数据的崛起是 Edge & Node 发起的一项计划。该计划使子图开发人员能够无缝升级到 The Graph 的去中心化网络。 该计划借鉴了 The Graph 生态系统的先前发展,包括升级索引器以满足对新发布的子图的查询。
?
托管服务发生了什么?
⁠ 托管服务查询端点不再可用,开发人员无法在托管服务上部署新的子图。 在升级过程中,托管服务子图的所有者可以将其子图升级到 The Graph Network。此外,开发人员还可以认领自动升级的子图。
?
Subgraph Studio 是否受到此次升级的影响?
⁠不会,Subgraph Studio 不会受到 Sunrise 的影响。Subgraphs 可立即用于查询,由升级版 Indexer 提供支持,它使用与托管服务相同的基础架构。
?
为什么子图会发布到 Arbitrum,它是否开始索引不同的网络?⁠
The Graph 网络最初部署在以太坊主网上,但后来转移到 Arbitrum One,以降低所有用户的 gas 成本。因此,所有新子图都会发布到 Arbitrum 上的 The Graph 网络,以便索引器可以支持它们。Arbitrum 是发布子图的网络,但子图可以索引任何受支持的网络
?
当我的账单余额耗尽时会发生什么情况?我会收到警告吗?
在您的账单余额用完之前,您将收到几封电子邮件通知。
?
我可以从我的账单余额中提取 GRT 吗?
是的,您始终可以从账单余额中提取尚未用于查询的 GRT。计费合约仅用于将 GRT 从以太坊主网桥接到 Arbitrum 网络。如果你想将 GRT 从 Arbitrum 转回以太坊主网,你需要使用 Arbitrum 桥。
?
什么是子图?
子图是建立在区块链数据之上的自定义 API。使用 GraphQL 查询语言查询子图,并使用 Graph CLI 部署到 Graph 节点。一旦部署并发布到 The Graph 的去中心化网络,索引器就会处理子图并使其可供子图使用者查询。
?
我可以删除我的子图吗?
子图一旦创建就无法删除。
?
我可以更改我的子图名称吗?
不。创建子图后,无法更改名称。在创建子图之前,请务必仔细考虑这一点,以便其他 dapp 可以轻松搜索和识别它。
?
我可以更改与我的子图关联的 GitHub 帐户吗?
不。创建子图后,无法更改关联的 GitHub 帐户。在创建子图之前,请务必仔细考虑这一点。
?
如果我的智能合约没有事件,我还能创建子图吗?
强烈建议您构建智能合同,使其事件与您感兴趣的查询数据相关联。子图中的事件处理程序由合约事件触发,是迄今为止检索有用数据的最快方式。 如果您正在使用的合约不包含事件,则您的子图可以使用 call 和 block 处理程序来触发索引。尽管不建议这样做,因为性能会明显变慢。
?
模板与数据源有何不同?
模板允许您在子图索引时动态创建数据源。当人们与合约交互时,您的合约可能会生成新合约,并且由于您预先知道这些合约的形状(ABI、事件等),因此您可以定义如何在模板中为它们编制索引,当它们生成时,您的子图将通过提供合约地址来创建动态数据源。
?
是否可以使用两个合约的 graph init from graph-cli 设置子图?还是我应该在运...
是的。在 graph init 命令本身上,您可以通过一个接一个地输入合约来添加多个数据源。您还可以使用 graph add 命令添加新的数据源。
?
监听多个合约时,是否可以选择合约顺序监听事件?
在子图中,事件始终按照它们在区块中出现的顺序进行处理,无论是否跨多个合约。
?
我可以将 ethers.js 或其他 JS 库导入到我的子图映射中吗?
目前不可以,因为映射是用 AssemblyScript 编写的。一种可能的替代解决方案是将原始数据存储在实体中,并在客户端上执行需要 JS 库的逻辑。
?
是否可以在不重新部署的情况下将子图复制到另一个账户或终端节点?
您必须重新部署子图,但如果子图 ID(IPFS 哈希)没有更改,则不必从头开始同步。
?
是否可以在 graph-node 上使用 Apollo Federation?
目前尚不支持联合身份验证,但我们确实希望在将来支持它。目前,您可以做的是在客户端上或通过代理服务使用 Schema 拼接。
?
如何更新主网上的子图?
如果您是子图开发人员,则可以使用 CLI 将新版本的子图部署到 Subgraph Studio。届时它将是私有的,但如果您对它感到满意,则可以发布到去中心化的 Graph Explorer。这将创建鉴赏家可以开始发送信号的新版本的子图。
<
关于我们
>
The Graph项目由信息技术和服务公司Graph Protocol推出,其目标是为开发者提供一种更加便利的途径来获取区块链数据。该项目基于GraphQL查询语言开发,并从以太坊网络、星际文件系统(IPFS)和其它Web3数据源中收集数据,用于索引和查询。The Graph的愿景是成为区块链领域的“Google”,为去中心化应用程序(DApps)提供高效且去中心化的数据API服务。
联系信息
服务时间: 7*24
网页在线客服: 咨询

全球分布
分散式基础设施
是什么让 The Graph 如此有韧性?进入 The Graph 网络,这是一个由分布式参与者驱动的去中心化数据市场:索引器、策展人、委托人和子图开发人员。

<
最可能同场景使用的其他API
>