热门话题
#
Bonk 生态迷因币展现强韧势头
#
有消息称 Pump.fun 计划 40 亿估值发币,引发市场猜测
#
Solana 新代币发射平台 Boop.Fun 风头正劲
今天早些时候 @heliuslabs 推出了一个新的 RPC 方法,getTransactionsForAddress (gTFA)
让我们来谈谈它的工作原理
Solana 交易通常引用 6-10 个账户(最多可达 ~256 个)
当你查询 "给我账户 X 的历史记录" 时,你是在请求 RPC 扫描交易并找到那些在其账户列表中包含 X 的交易
这本质上是在大海捞针
你不能简单地在 "accounts" 数组上添加一个标准索引,因为数据库在索引可变长度数组时会遇到困难
解决方案:我们构建了自己的索引,每个唯一的 (transaction, account) 对都有一个条目
这可不是一件小事——目前大约有 ~4930 亿笔交易(还在增长)
我们的索引目前持有超过 2.3 万亿 (!) 行
尽管规模庞大,P50 查找时间在生产负载下约为 ~8 毫秒
我们还有许多其他索引来支持按槽、时间、状态等进行查找
所有这些都运行在专门构建的裸金属主机上,配备了数PB的顶级 NVMEs,分布在多个区域
总结一下——我们受苦是为了让你不必受苦
享受吧
热门
排行
收藏

