GraphQL RPC 与通用索引器公测介绍:为 Sui 带来更强大的数据层
Sui 现已支持 GraphQL RPC 和通用索引器(General-purpose Indexer) 公测,为结构化链上数据访问解锁全新能力。这一版本是 Sui 数据栈演进的重要一步,为开发者、索引器运营者和数据服务商提供了更具扩展性与表现力的工具,以便与区块链数据交互。
与传统的 JSON-RPC(面向底层全节点交互而设计)不同,GraphQL 提供了一种专为提升开发者效率而生的高级查询语言。配合模块化、基于检查点驱动的通用索引器,使得查询和构建 Sui 数据的过程大幅简化。
更智能的分层数据栈
Sui 正在通过分层的方法重新思考开发者如何访问链上数据。
在基础层是 gRPC API,它为对延迟敏感的应用和服务提供了高速、基于轮询以及实时流式的能力。其之上是 GraphQL RPC 与通用索引器,能够以结构化、可筛选、可组合的方式访问历史与实时链上数据,非常适合用于钱包、区块链浏览器和结构化数据应用。开发者还可以通过自定义索引器扩展这一数据栈,从而为特定应用或协议构建专用的数据管道。
Press enter or click to view image in full size
GraphQL 与通用索引器是该模型的第二大支柱,面向钱包、面板、浏览器和应用的数据查询场景。更多不同访问方式的适用情况,可参考 Data Serving Guide。
GraphQL RPC 的优势
与传统的 JSON-RPC(面向底层全节点交互而设计)不同,GraphQL RPC 提供了一种高级查询语言,大幅提升开发者的生产力。本次发布为开发者带来以下显著优势:
- 声明式查询:只获取所需字段和实体
- 关联查询:一次调用即可返回交易与相关对象
- 强大过滤:支持游标分页、类型过滤、检查点查询
- 一致性:跨多查询从同一检查点读取,提升正确性并简化有状态应用
- 可读性:通过 GraphiQL 等工具轻松探索数据
公测版本包含:
- GraphQL RPC 服务器:提供对象、交易、事件等类型化架构
- 通用索引器:将 Sui 检查点处理为 Postgres 兼容数据库
- 存档服务:用于历史交易、对象等数据查询
- 全节点集成:访问最新网络状态并支持交易执行
这些功能减少了对大量自定义索引器的需求,让基于 Sui 数据的构建更简单。
提示:如果你此前在主网或测试网使用 GraphQL Alpha,必须尽快迁移至公测版本的主网或测试网。Sui 基金会提供了 alpha 版本的端点,该版本将很快退役。
开发者的使用方式
早期采用者已开始以各种方式使用 GraphQL RPC 进行原型设计。钱包正在更高效地显示代币、NFT 和交易历史记录。仪表盘正在分页显示地址活动。浏览器不仅展示交易摘要,还能揭示实体之间的关系。API 正在处理结构化数据,而无需构建专用管道。
作为开放的 API 层,GraphQL RPC 既服务于希望提供丰富数据服务的应用程序团队,也服务于 RPC 提供商。
可扩展、灵活的数据栈
GraphQL 与通用索引器栈设计为模块化且强健:
- 支持 Postgres 兼容数据库(如 GCP AlloyDB、AWS Aurora Postgres、本地部署 Postgres 等)
- 集成可插拔存档服务,支持历史状态
- 可配置的索引管道,涵盖交易、对象、事件等
- 支持全托管、半托管或完全自托管的部署模式
下一步计划
本次公测只是开始,后续将推出:
- SDK 支持(现已可用 GraphQL 原生客户端)
- 性能与成本的基准测试工具
- GraphQL 订阅,用于实时更新
- 更多功能完善,直至全面可用
自建索引器
团队若需要定制化数据视图或数据布局优化,可使用更新后的自定义索引器框架。该框架驱动通用索引器,使开发者能够:为应用/协议构建专属状态镜像、优化性能与存储效率、完全自定义 schema、逻辑与数据存储。
快速上手
开发者现在即可查阅 GraphQL RPC 与通用索引器文档,查看 API 参考,使用 GraphQL 或 introspection 工具测试查询。在迈向全面可用的过程中,欢迎通过 GitHub 提供反馈。
无论你是钱包开发者、基础设施服务商,还是索引协议,GraphQL RPC 已为你准备好构建未来。
关于 Sui Network
Sui是基于第一原理重新设计和构建而成的L1公有链,旨在为创作者和开发者提供能够承载Web3中下一个十亿用户的开发平台。Sui上的应用基于Move智能合约语言,并具有水平可扩展性,让开发者能够快速且低成本支持广泛的应用开发。获取更多信息:https://linktr.ee/sui_apac
官网|英文Twitter|中文Twitter|Discord|英文电报群|中文电报群