The Graph

微信扫码分享
The Graph实战:用GraphQL索引链上数据

The Graph实战:用GraphQL索引链上数据

视频详细介绍了在Web3应用中使用TheGraph进行数据索引的方法,重点讲解TheGraph这个去中心化数据查询服务。内容涵盖数据获取的多种方式(自建和第三方服务),TheGraph的工作原理(索引器、策展人、委托人、消费者角色),以及如何通过子图(Subgraph)定义索引规则并查询链上数据。演示了从创建子图、编写schema和mapping、部署到查询转账记录和用户余额的完整流程,并介绍了高级用法如快照和关联查询。最后对比了GraphQL与RESTful API的差异,指出了The Graph的局限性。 关键信息: - The Graph是去中心化数据索引服务; - 子图定义索引规则; - 角色包括索引器、策展人、委托人; - GraphQL灵活查询; - 支持主流区块链;不适合实时数据处理;不能跨子图查询和分组。

29 0 0 2026-06-24 09:28
VibeCoding: TheGraph 实战 NFTMarket 事件索引

VibeCoding: TheGraph 实战 NFTMarket 事件索引

视频 AI 总结: 本视频主要讲解了如何使用 The Graph 索引 NFT 市场的上架(List)与成交(Sold)信息,并重点探讨了如何建立两者之间的关联。由于同一 NFT 可能多次上架,仅靠 Token ID 无法唯一匹配。视频提出了两种解决方案:一是修改合约,在事件中增加全局唯一的 List ID;二是在 Subgraph 逻辑中建立“中间表”记录当前活跃上架信息,通过 Token ID 匹配并关联原始交易哈希。最后强调了在设计智能合约事件时,应预先考虑数据索引的便利性。 视频中提出了以下关键信息: 1. **关联难题**:在 NFT 市场中,同一个 Token ID 可能被多次上架和售出,简单的 Token ID 关联会导致新旧记录混淆,难以精准匹配某次成交对应的具体上架时间。 2. **合约层解决方案**:在 `List` 和 `Sold` 事件中引入全局递增的 `List ID` 作为唯一主键,这是最直接、查询效率最高的方法。 3. **Subgraph 层解决方案(无需改合约)**: * 创建一个不可变的 Listing 全量表,以交易哈希(Transaction Hash)为 ID。 * 创建一个“当前上架(Current Listing)”中间表,记录 Token ID 与对应上架记录的映射。 * 成交时,通过 Token ID 从中间表找到对应的上架信息,完成关联后删除该中间记录。 4. **唯一性标识**:在区块链索引中,交易哈希是确保记录唯一性的重要手段。 5. **开发建议**:开发者在编写智能合约时,应具备“数据索引思维”,通过优化 Event 触发信息(如增加关联 ID),可以极大简化后续的数据分析和前端调用难度。 6. **实操演示**:展示了如何利用 AI 辅助生成 Subgraph 代码,并解释了处理逻辑中如何维护实体状态。

48 0 0 2026-04-17 08:32
使用 The Graph 索引链上数据

使用 The Graph 索引链上数据

视频 AI 总结: 本视频深入讲解了如何利用去中心化索引协议 The Graph 进行链上数据分析。内容涵盖了从传统后端获取数据的局限性,到 The Graph 的核心架构(如 Subgraph、GraphQL)及其实战应用。通过 ERC20 代币转账案例,演示了定义 Schema、编写 AssemblyScript 映射逻辑、部署及查询的全过程。此外,视频还探讨了余额快照、关联查询、模板功能以及 The Graph 的去中心化经济模型(索引者与策展人角色),旨在帮助开发者高效处理和展示复杂的区块链历史数据。 视频中提出了以下关键信息: 1. **链上数据获取方式对比**:介绍了通过 RPC 节点自建后端、使用第三方 API(如 OKLink、CoinGecko)以及使用 The Graph 去中心化索引的区别,强调了 The Graph 在去中心化和数据结构化方面的优势。 2. **The Graph 核心组件**: * **Subgraph(子图)**:定义索引规则的程序。 * **Schema**:定义数据的结构化表(Entity)。 * **Mapping**:使用 AssemblyScript 编写,将链上事件(Event)转化为数据库记录。 * **GraphQL**:用于前端灵活查询索引后的数据。 3. **开发实战流程**:演示了从初始化脚手架、配置合约地址与 ABI、生成代码(Codegen)、编写逻辑到部署至 Subgraph Studio 的完整工作流。 4. **高级功能应用**: * **余额与快照**:通过监听 Transfer 事件实时累加余额,并记录区块高度快照,以支持类似 Snapshot 的治理投票查询。 * **关联查询**:在 Schema 中建立表与表之间的引用关系(如 User 与 Transfers 的一对多关联)。 * **模板(Templates)**:针对工厂合约(Factory)动态生成的子合约,使用模板功能进行动态索引。 5. **去中心化经济模型**:介绍了网络中的不同角色,包括**索引者(Indexer)**提供算力、**策展人(Curator)**通过质押 GRT 标识高质量数据、以及查询者支付费用。 6. **使用限制与建议**:指出 The Graph 适用于处理历史数据而非实时强一致性数据;若合约逻辑或数据结构变更,通常需要重新索引。

89 0 0 2026-04-16 08:25
The Graph:链上数据索引与子图实战

The Graph:链上数据索引与子图实战

AI 总结: 视频主要介绍了如何使用The Graph协议进行链上数据的索引和查询,以及自建数据索引与第三方服务的对比。重点是演示了如何通过子图(subgraph)实现用户转账记录和余额查询的功能。 1、不同的数据获取方式 •课程主要讲解数据处理,分为自建和使用第三方协议两大类。自建需要编写后台程序索引数据,而第三方协议如区块链浏览器提供API直接访问结构化数据。 •数据提供商通常处理知名项目的数据,自定义项目需自行建立索引规则,如通过程序解析事件并存储。 2、TheGraph 介绍与工作原理 •Graph是一个去中心化数据索引协议,通过子图(Subgraph)定义事件到结构化数据的转换规则 。 •Graph的工作原理是合约触发事件,节点接收事件并根据子图规则存储数据,提供GraphQL API供查询。 3、实际操作与示例 •演示如何创建子图工程,定义实体表(如转账记录和用户余额),并部署到Graph网络。 •通过GraphQL查询用户的转账记录和余额,展示了如何动态获取链上数据。 •实现区块高度下的用户余额快照,通过存储每个区块高度的余额数据支持历史查询。 4、高阶用法与注意事项 •关联查询支持表间关联(如用户与转账记录),模板功能支持动态跟踪工厂合约创建的新合约事件。 •Graph适合处理历史数据,但复杂查询(如GROUP BY、JOIN)和跨子图查询不支持,且协议频繁升级时不稳定。

106 0 0 2025-09-26 23:31
QA - 合约事件监听与链下数据缓存

QA - 合约事件监听与链下数据缓存

视频 AI 总结: 该视频主要讲解了在 NFT 市场中上架 NFT 的几种方案以及各自的优缺点。核心内容是讨论 NFT 上架时是否需要将代币转账到合约中,以及如何监听链上事件并更新链下数据,以实现 NFT 市场的正常运作。视频强调了链下数据缓存的重要性,并介绍了使用 The Graph 等工具来简化数据处理的方法。 关键信息: 1. **NFT 上架方案:** 可以选择将 NFT 转移到合约或不转移。转移的好处是交易一定成功,坏处是用户取回 NFT 比较麻烦。不转移需要授权,但用户可以随时转移 NFT,需要监听链上事件。 2. **链下监听:** NFT 市场需要一个链下进程来监听用户的 NFT 转移行为,以便及时更新上架列表。 3. **链下数据缓存:** 为了提高前端性能和查询效率,需要将链上数据缓存到链下数据库中。 4. **The Graph:** 可以使用 The Graph 等工具来简化链上数据处理和 API 接口的创建。 5. **链上数据读取:** 链上读取速度快,但历史数据读取困难,需要结合链下数据才能实现完整的应用功能。

66 0 0 2025-08-16 07:48
The Graph Hypergraph 构建基于知识图谱的 Web3 应用的新框架

The Graph Hypergraph 构建基于知识图谱的 Web3 应用的新框架

**视频 AI 总结:** 该视频介绍了 The Graph 及其最新发布的 Hypergraph 框架。The Graph 是一个去中心化的数据索引网络,为 Web3 应用提供数据,包括智能合约数据、Token API 数据、Substreams 数据等。Hypergraph 是一种构建基于知识图谱的 Web3 应用的新框架,它允许开发者以优化的方式存储和管理数据,并支持公共和私有数据的处理。视频还演示了如何使用 Hypergraph 创建一个简单的应用,并介绍了 The Graph 提供的黑客马拉松奖金和资源。 **视频中提出的关键信息:** * **The Graph 简介:** 去中心化的数据索引网络,为 Web3 应用提供数据。 * **The Graph 的数据获取方式:** Subgraphs, Token API, Substreams, Firehose。 * **Hypergraph 框架:** 用于构建基于知识图谱的 Web3 应用,优化数据存储和管理。 * **Hypergraph 的核心概念:** 空间(Spaces)、实体(Entities)、关系(Relations)。 * **Hypergraph 的数据处理方式:** 支持公共和私有数据的处理,通过 Sync Server 实现加密数据共享和实时协作。 * **Hypergraph 的开发流程:** 使用 TypeSync 工具创建数据模型,使用 Hypergraph CLI 构建应用。 * **黑客马拉松奖金:** The Graph 为使用 Hypergraph 和其他技术构建的应用提供总计 10,000 美元的奖金。 * **Hypergraph 示例:** 视频演示了如何使用 Hypergraph 创建一个简单的学术领域数据管理应用。

1699 0 0 2025-07-11 15:38
构建 Substreams 子图 索引Solana 智能合约数据

构建 Substreams 子图 索引Solana 智能合约数据

本次直播活动中,Brianna、Marcus和Enul三位开发者展示了如何在Solana区块链上构建和索引智能合约。Brianna首先介绍了使用Anchor框架创建一个简单的投票去中心化应用程序的过程,涵盖了智能合约的基本结构、状态管理和投票逻辑。接着,Marcus介绍了The Graph的概念,强调了其去中心化索引的优势,并介绍了如何使用Substreams构建一个Substreams驱动的子图。Enul则详细演示了如何通过Substreams提取Solana区块链数据,并将其转化为可查询的GraphQL API。整个过程展示了如何将Solana智能合约与The Graph结合,提供高效的数据索引和查询能力。最后,团队鼓励开发者参与测试和反馈,以帮助完善工具和功能。

1423 0 0 2025-01-22 16:21