大规模轮询 Avalanche 钱包余额:托管人指南

无论是托管型 Avalanche 产品、资金管理工具还是多钱包投资组合服务,都面临着相同的数据难题。这类产品需要追踪每个客户地址的 AVAX 余额和 ERC-20 代币持有量,并将其锚定到特定的区块高度以实现确定性报告,同时还要定时刷新以确保用户界面始终保持最新状态。此外,还需要跨越数千个地址,无需运行 Avalanche 归档节点,也无需为重复轮询支付任何费用。本文将详细介绍 Avalanche 地址余额查询模式、使快照可复现的区块高度锚定步骤、将大多数重复轮询成本降至接近于零的缓存机制、单地址查询与批量查询的权衡,以及与自托管 Avalanche 归档节点加索引器相比的购买方案与自建方案的比较。本文是 Cardano 托管轮询指南的 Avalanche 版本。相同的模式,不同的链,不同的模式命名空间。 ## 指定区块高度的 Avalanche 余额查询 托管 Avalanche 产品所需的查询会返回指定区块高度下,一个地址的 AVAX 余额以及所有 ERC-20 代币持有情况。在 Bitquery GraphQL IDE 中打开“指定区块高度的 Avalanche 余额”查询,即可运行并修改该查询以匹配任何地址。将 is: 地址替换为任何 Avalanche 钱包地址。将 height 值替换为您希望快照锚定的任何区块。响应包含两部分。blocks 字段确认所选高度是否存在,并返回该区块的实际时间戳,该时间戳将成为面向用户的报告中快照的“截至”时间戳。address.balances 字段返回 AVAX 的位置以及该地址在指定区块高度或之前持有的所有 ERC-20 代币,包括合约地址、代币符号、小数位数和代币标准。几乎所有托管 Avalanche 用户界面都由这四个字段驱动。balances.value是每个currency的值,涵盖钱包中所有 AVAX 和 ERC-20 代币。currency.address是代币的合约地址,它是与内部支持资产白名单进行匹配的键。currency.decimals是用于人类可读显示的除数。blocks.timestamp.time是快照时间,显示在用户界面余额旁边,以便用户了解该数字的捕获时间。## 为什么锚定在区块高度很重要?如果没有固定区块高度,余额查询将返回最新的索引值。该数字在间隔一秒的两次调用之间会发生变化,这对于实时视图来说没问题,但对于报表来说毫无意义。使用height: {lteq: 60000000}进行余额查询会返回一个确定性值。相同的地址和高度组合会永远返回相同的数字。确定性带来两方面的好处。首先是可复现的报告。明天生成的上周五持仓报表必须与今天生成的上周五持仓报表一致。锁定高度可以保证这一点。其次是缓存重用,这将在下文介绍。为了选择给定目标实际时间对应的正确区块,模式中的第二个查询是 Bitquery GraphQL IDE 中的 Avalanche 区块时间戳查询。将till设置为目标时间戳,获取该时间或之前最后一个区块的区块高度。将该高度值传递给上面的余额查询。这两个调用会生成产品需要报告的任何历史时间戳的余额快照。## 扇出批量变体 单地址查询适用于每个用户的钱包视图。托管机构在刷新周期内轮询数千个地址时,需要使用批量处理的方式。address过滤器接受一个地址列表。大多数托管机构选择 50 到 100 个地址的批量。较小的批量可以提供每个地址更及时的结果,并具有更高的实际并行性。较大的批量可以减少请求次数,但会增加每次响应的延迟。合适的批量大小取决于产品管理的地址数量以及轮询层的并发性。## 缓存如何将重复轮询转化为零成本读取 托管工作负载以重复性为主。每次刷新周期、每次页面加载、每次对账都会轮询同一个客户地址。Bitquery 会根据(address, height)缓存键缓存响应,并将缓存的快照提供给下一个调用者。缓存的响应不会消耗 API 点数。一旦某个区块在 C-Chain 上最终确定,对于任何地址,在该最终高度下对balances(height: {lteq: … })的响应将永久固定。后续每次调用相同问题的调用者都会获得相同的缓存字节。首次调用支付积分。重放操作会命中缓存。针对固定历史高度的对账运行几乎完全依赖于缓存。审计、客户支持和用户仪表板轮询的同一份日终快照都指向相同的缓存键。月末和季度末报告每次重新生成时都基于同一组高度数据。重运行操作会命中缓存。这是 Bitquery 与直接对自有归档节点运行原始 RPC 之间最大的经济差异。原始 RPC 没有跨调用者的共享缓存层。每次调用都会遍历节点。Bitquery 则将读取同一地址的成本分摊到所有请求相同问题的调用者身上。## 扩展性分析 上述模式描述了典型的托管或金库工作负载。对于大多数产品,每个地址每天进行一次快照,钱包详情页面可以选择更高频的实时轮询。随着地址数量的增加,缓存命中率保持不变。每个地址都有其自身的缓存键。管理数万个地址的产品与管理几千个地址的产品,每个地址的成本相同。轮询频率是成本和数据新鲜度的主要控制因素。每 15 分钟轮询一次而不是每天一次,请求次数将增加 96 倍。大部分增加的请求量来自缓存,因为 Avalanche 余额仅在转账触及地址时才会发生变化。对于活跃交易钱包,数据新鲜度的提升是实实在在的,而对于冷存储和闲置金库,提升主要体现在外观上。ERC-20 数组的成本是可变的。返回每个地址的完整“余额”列表会包含钱包曾经持有的所有代币。持有数百种低市值代币的地址序列化成本高于仅支持 AVAX 的钱包。如果产品仅显示精选的资产列表,请在客户端过滤“currency.address”,或根据查询中设置的已知资产地址进行过滤。## Bitquery 与自托管 Avalanche 归档节点和索引器 另一种选择是运行 Avalanche 归档节点以及 EVM 索引器,例如自定义 Erigon 配置或托管式堆栈(如 The Graph)。对于某些团队来说,这是一个合理的选择。但对于大多数托管机构和资金管理产品而言,这不是一个好的选择。归档节点的优势在于:私有查询延迟低于 50 毫秒,完全控制执行层状态模式,以及能够运行 Bitquery 无法提供的分析查询。而归档节点的缺点则在于其他所有方面。从运维角度来看,运行 Avalanche 归档节点集群意味着每次共识客户端升级都会造成工程时间损失。状态修剪是一项精细的操作。磁盘空间持续增长。监控、备份和故障转移是团队需要解决的问题。这些问题并非 Avalanche 独有。除了团队正在构建的其他任何东西之外,还需要支付额外的成本。## 将其集成到托管 Avalanche 后端 典型的托管集成使用四个组件。时间戳到高度解析器在每个快照间隔运行一次区块时间戳之前的查询,并将高度映射缓存起来。批量余额获取器针对每批客户地址,针对已解析的高度执行批量address: {in: […]}` 变体查询。输出被解析为涵盖 AVAX 和受支持的 ERC-20 集的按地址记录。对账作业以较慢的频率(每周一次)针对相同的高度运行相同的查询,并将轮询的快照与托管机构的内部账本进行比较。历史报表生成器重用相同的两个查询来生成任何过去时期的报表。由于查询与特定高度绑定,因此报表在重新运行时是可复现的。Avalanche C-Chain 的余额会在每次转账触及地址时发生变化,对于活跃交易的钱包,每分钟可能发生多次转账。对于活跃交易产品,每五分钟轮询一次是合理的。但对于冷存储金库,每五分钟轮询一次则不合理。大多数托管机构对活跃钱包按分钟或每 15 分钟收费,对其他所有交易按小时或按天收费。## 总结 一款托管型 Avalanche 产品轮询数千个客户地址以获取 AVAX 和 ERC-20 余额,它有三种实际选择:构建并运行 Avalanche 归档节点和索引器堆栈;按 RPC 调用次数向 RPC 提供商付费;或者使用 Bitquery 的缓存 GraphQL 层,采用区块高度锚定模式,从而在占工作负载主导地位的重复流量上无需支付 GraphQL 点数。第三种选择之所以存在,正是因为这种重复模式在托管机构、资金管理工具和投资组合产品中非常普遍。本文中的两个查询是这些产品趋同的典型查询形式。[Bitquery]

RichSilo独家分析:

Avalanche托管基础设施:可扩展余额查询的市场影响

最近关于大规模查询Avalanche钱包余额的技术指南代表了机构服务区块链基础设施的重要发展。虽然以技术解决方案的形式呈现,但这一进步对托管服务提供商、区块链数据提供商的竞争格局以及更广泛的Avalanche生态系统采用轨迹具有重大的市场影响。

市场影响:托管服务经济学

文章强调了Avalanche托管服务的一个关键痛点:在没有强大缓存机制的情况下查询数千个钱包余额的高昂成本。Bitquery的解决方案提供了一个有吸引力的替代方案,可以替代运行昂贵的自托管归档节点或支付按次调用的RPC费用。

对于机构投资者而言,这意味着管理Avalanche资产的托管服务提供商降低了运营成本。缓存机制——在同一区块高度重复检查同一地址的余额几乎不需要成本——从根本上改变了大规模投资组合管理的经济性。我们预计这将加速机构对Avalanche的采用,因为托管服务提供商现在可以提供更具竞争力的费用结构,同时保持盈利能力。

锚定区块高度的报告确定性对于合规和审计尤为重要。在日益要求透明度和可复现财务报表的监管环境中,这种技术能力直接满足了机构对准确、带时间戳的余额快照的要求。

竞争格局:数据基础设施军备竞赛

这一发展突显了区块链数据基础设施日益激烈的竞争。文章明确对比了三种方法:

  1. 带有索引器的自托管Avalanche归档节点
  2. 按次收费的传统RPC提供商
  3. Bitquery的缓存GraphQL层

市场显然正在转向理解托管服务特定工作负载的专业化数据基础设施解决方案。Bitquery为Avalanche和Cardano定制解决方案的事实表明了其对企业级区块链数据服务的战略关注。我们预计这将推动该领域的进一步创新,其他提供商将开发类似的缓存和批量查询功能。

对于投资者而言,这为能够证明在机构工作负载中具有更高成本效益的区块链基础设施提供商创造了有趣的机会。所描述的扩展性能——即使地址数量增长,缓存命中率仍然保持高位——表明在这个细分市场中存在赢家通吃的动态。

Avalanche生态系统影响

复杂的余额查询基础设施的可用性代表了Avalanche生态系统的重要基础设施升级。这直接解决了机构采用的一个关键障碍:有效跟踪和报告大量地址的能力。

🚀 Bybit 限时优惠: 全球流动性第一平台!新用户注册享最高 30,000 USDT 体验金,并自动激活 20% 永久手续费返佣
立即加入 Bybit

鉴于Avalanche在支持EVM兼容资产和DeFi协议方面的优势,文章对ERC-20代币跟踪的关注尤为相关。通过使大规模监控这些资产变得更加容易,该解决方案增强了Avalanche作为代币化资产多链中心的价值主张。

我们预计这一基础设施改进将积极影响Avalanche上的开发者活动,因为项目可以更容易地与现在拥有更高效余额跟踪能力的托管服务集成。这创造了一个良性循环:更好的基础设施吸引更多项目,进而吸引更多用户和资本。

代币价格影响(间接)

虽然不是AVAX价格走势的直接催化剂,但这一基础设施发展支持长期的看涨基本因素:

  1. 降低机构采用的摩擦:托管服务提供商降低的运营成本消除了一大批机构资金流入Avalanche资产的障碍。
  2. 增强生态系统实用性:改进的基础设施使Avalanche对DeFi和代币化资产项目更具吸引力,增加了AVAX代币的实用性,该代币用于交易费用和质押。
  3. 竞争定位:与其他L1相比的优越基础设施可能使Avalanche成为某些机构用例的首选平台,特别是那些需要与强大的数据服务兼容的EVM用例。

风险与机会

风险:
集中化担忧:对Bitquery等第三方数据基础设施提供商的依赖引入了潜在的单点故障风险。
服务可靠性:依赖外部提供商的托管服务面临服务质量下降或定价结构变化的风险。
竞争反应:其他区块链平台可能开发更优越的解决方案,削弱Avalanche的竞争优势。

机会:
Bitquery扩展:此解决方案的成功可能推动Bitquery扩展到其他区块链,创建多链数据基础设施布局。
托管创新:较低的运营成本可能推动Avalanche上新型托管服务和金融产品的创新。
DeFi协议增长:增强的余额跟踪能力可能导致Avalanche上出现更复杂的DeFi协议,特别是那些需要大规模投资组合监控的协议。

投资视角

从投资角度来看,这一技术进步代表了Avalanche机构主张的加强。专注于解决托管服务提供商的实际运营问题,而不是追逐投机用例,表明一个专注于实际基础设施需求的生态系统正在成熟。

我们认为这是Avalanche生态系统长期基本面的积极发展,并可能成为增加机构采用的催化剂。对于投资者而言,这强调了评估区块链平台的重要性,不仅应考虑TPS或确定性等技术指标,还应考虑现实企业用例所需的支持基础设施的先进性。

区块链数据基础设施中的竞争动态尤其值得关注,随着机构采用在整个行业中加速,这一领域有望变得越来越重要。

🔥 Bitget 独家福利: 现在注册立领最高 6,200 USDT 新手奖金!更可享受全网独家 20% 永久手续费返佣(现货/合约通用)。
立即注册 Bitget