创建子图
Subgraph是一种从区块链中提取数据,处理数据并存储数据的技术,可以通过GraphQL进行查询。
Subgraph的定义包含了几个文件:
subgraph.yaml
:一个包含subgraph清单的YAML文件schema.graphql
:一 个GraphQL模式,定义了你的subgraph存储的数据,以及如何通过GraphQL查询它AssemblyScript Mappings
: AssemblyScript 代码,将事件数据转换为你的模式中定义的实体(例如本教程中的mapping.ts
)
为了在The Graph的去中心化网络上使用你的subgraph,你需要创建一个API密钥。 建议你给你的subgraph添加至少10,000 GRT的通证。
在你详细了解清单文件的内容之前,你需要安装 Graph CLI ,它是你构建和部署subgraph所需要的工具。
安装Graph CLI
Graph CLI是用JavaScript编写的,你需要安装 yarn
或 npm
来使用它;在接下来的内容中,我们假设你已经安装了yarn。
一旦你安装了 yarn
,就可以通过运行以下命令来安装Graph CLI:
使用yarn安装:
yarn global add @graphprotocol/graph-cli
使用npm安装:
npm install -g @graphprotocol/graph-cli
安装完成后,graph init
命令可以用来设置一个新的subgraph项目,可以从一个现有的合约或一个示例subgraph开始。 这个命令可以用来在Subgraph Studio上创建一个subgraph,只需传入 graph init --product subgraph-studio
。 如果你已经将智能合约部署到你喜欢的网络上,那么从该合约引导一个新的subgraph可以是一个很好的开始方式。