官方文档|网络角色之索引人1:常见问题

索引人是The Graph Network中的节点操作员,他们通过质押Graph Tokens(GRT),以提供索引和查询处理服务。索引人通过其服务赚取查询费和索引奖励。他们还从返利池中赚取收入,该返利池按照其工作比例与所有网络贡献者分享,遵循Cobbs-Douglas返利功能。

官方文档|网络角色之索引人1:常见问题

发布时间:2021.02.05

原文作者:The Graph
翻译:The Graph 社区成员
原文出处:https://thegraph.com/docs/network#indexing
翻译出处:https://mp.weixin.qq.com/s/61pKceOqmiC5f7quxotVCQ


索引人是The Graph Network中的节点操作员,他们通过质押Graph Tokens(GRT),以提供索引和查询处理服务。索引人通过其服务赚取查询费和索引奖励。他们还从返利池中赚取收入,该返利池按照其工作比例与所有网络贡献者分享,遵循Cobbs-Douglas返利功能。

在协议中被质押的GRT是有解冻期的,如果索引人是作恶的,向应用程序提供错误的数据,或者索引错误,GRT就会被削减。索引人也可以从委托人那里获得委托权益对网络做出贡献。

索引人根据子图的策展信号来选择要索引的子图,策展人对GRT进行委托,表明哪些子图是高质量的,应该优先处理。消费者(如应用)也可以设置索引人处理其子图谱查询的参数,并设置查询费定价的偏好。

常见问题

为网络上的索引人需要的最低限度的质押权益是多少?

目前,索引人的最低质押权益被设定为10万GRT。

索引人的收入来源是什么?

  • 查询费返利
    为网络上的查询服务支付的费用。这些费用通过索引人和网关之间的状态通道进行调解。来自网关的每个查询请求都包含付款和相应的响应,以证明查询结果的有效性。
  • 索引奖励
    通过每年3%的协议范围通货膨胀产生,索引奖励分配给为网络进行子图部署索引的索引人。


奖励如何分配?

索引奖励来自协议通胀,通胀率设定为每年发行量的3%。它们根据每个子图上所有策展信号的比例分配到各个子图,然后根据索引人在该子图上的分配权益按比例分配给他们。分配必须以符合仲裁章程规定标准的有效索引证明(POI)结清,才有资格获得奖励。

社区已经创建了许多用于计算奖励的工具;你会在社区指南集合中找到它们的集合。你也可以在Discord服务器的#delegators#indexers频道中找到最新的工具列表。

什么是索引证明(POI)?

POI在网络中用于验证索引人是否正在对其分配的子图进行索引。在结束对该次分配的分配时,必须提交当前纪元的第一个区块的POI,才有资格获得索引奖励。一个区块的POI是一个特定子网部署的所有实体存储事务的摘要,直至并包括该区块。

索引奖励何时发放?

分配物在活跃期间不断累积奖励。奖励由索引人收集,并在其分配关闭时分配。这种情况可以是手动的,每当索引人想要强制关闭它们时,或者是每最多28个纪元(最大的分配寿命)自动发生(现在,一个纪元持续约24小时)。

可以监控待定的索引人奖励吗?

RewardsManager合约有一个只读的getRewards函数,可以用来检查特定分配的待定奖励。

许多社区制作的仪表盘都包含待定的奖励值,可以通过以下步骤轻松地手动检查。

1.查询主网 subgraph以获取所有活动分配的ID。

query indexerAllocations {
indexer (id: "<INDEXER_ADDRESS>") {
allocations {
activeForIndexer {
allocations {
id
}
}
}
}
}


2.使用Etherscan调用getRewards()

导航至Etherscan interface to Rewards contract

调用getRewards()。

  • 展开10.getRewards下拉菜单。
  • 在输入中输入分配ID
  • 点击"查询"按钮。


什么是查询费返利,什么时候发放?

每当分配结束时,查询费由网关收取,并积累到子网的查询费返利池中。返利池的设计是为了鼓励索引人按照他们为网络赚取的查询费金额大致比例分配股权。返利池中分配给某个索引人的那部分查询费是用Cobbs-Douglas生产函数计算出来的;每个索引人的分配金额是他们对返利池的贡献和他们在子网中的股权分配的函数。

一旦分配结束,争议期过后,索引人就可以申请返利。申领后,根据查询费切块和委托池比例,将查询费返利分配给索引人及其委托人。


什么是查询费用分成和索引奖励分成?

queryFeeCut和indexingRewardCut的值是授权参数,索引人可以和cooldownBlocks一起设置,以控制GRT在索引人和它们的委托人之间的分配。关于设置委托参数的说明,请参见协议中Stake的最后一步。

  • queryFeeCut 将分配给索引人的子图上积累的查询费返利的百分比。
    如果设置为95%,当申请分配时,索引人将收到查询费返利池的95%,而另外5%则归委托人所有。
  • indexingRewardCut 子图上积累的索引奖励将分配给索引人的百分比。
    如果该值设置为95%,则当分配结束时,索引人将获得索引奖励池的95%,而委托人将分享另外的5%。

索引人应该期望查询流量来自哪些IP地址?

以下列表包含了索引人应该从网关接收请求的IP地址。

34.66.143.111
35.193.209.143
35.202.175.180
34.72.59.178
34.122.80.18
34.67.243.209
35.188.137.254
35.222.115.231
34.72.172.209

索引人如何知道要索引哪些子图?

索引人可能会通过应用先进的技术进行子图索引决策来区分自己,但为了给出一个大致的概念,我们将讨论用于评估网络中子图的几个关键指标。

  • Curation signal 策展信号
    应用于特定子图的网络策展信号的比例是对该子图兴趣的一个很好的指标,尤其是在引导阶段,当查询量不断上升时。
  • Query fees collected 收取的查询费
    特定子图收取的查询费的历史数据是未来需求的良好指标。
  • Amount staked 质押量
    监控其他索引人的行为或查看分配给特定子图的总质押量的比例,可以让索引人监控子图查询的供应方,以确定网络显示出信心的子图或可能显示出需要更多供应的子图。

对硬件有什么要求?

  • 小型:足以开始索引几个子图,可能需要扩展。
  • 标准:默认设置,这是在k8s/terraform部署清单示例中使用的。
  • 中型:生产型索引人支持100个子图和每秒200-500个请求。
  • 大型:准备对当前使用的所有子图进行索引,并为相关流量的请求提供服务。

索引人应该采取哪些基本的安全防范措施?

  • Operator wallet 操作员钱包
    设置操作员钱包是一项重要的预防措施,因为它允许索引人将控制权益的密钥和控制日常操作的钥匙分开。有关说明请参见协议中的内容。
  • Firewall 防火墙
    只有索引人服务需要公开,尤其要注意锁定管理端口和数据库访问:Graph节点 JSON-RPC端点(默认端口:8030)、索引人管理API端点(默认端口:18000)和Postgres数据库端点(默认端口:5432)不应暴露。