
一文详解dYdX Indexer
当我们接近v4主网的启动时我们希望让您一窥 dYdX 团队正在构建的内容。这篇文章深入介绍了索引器。索引器是存在于链本身和最终用户之间的只读层。索引器的目的是以更易于使用的格式转换和提供数据。
考虑索引器的一个好方法类似于 Infura 或Alchemy's role 在以太坊生态系统中的作用。然而,与 Infura/Alchemy 不同,并且与 dYdX v4 中的其他所有内容一样,索引器是完全开源的,任何人都可以运行!
什么是索引器?
作为 dYdX 生态系统工具的一部分,我们希望确保客户在使用 dYdX v4 交易所时能够访问高性能数据查询。Cosmos SDK 全节点提供了许多可用于请求链上数据的 API。但是,这些全节点针对提交和执行块进行了优化,而不是针对来自网络/移动客户端的高频、低延迟请求进行服务。
这就是我们为索引服务编写软件的原因。Indexer是一种只读服务,通过 REST API 和 Websockets 向客户端提供链下数据。它的目的是以更易于使用的方式存储和提供存在于 dYdX 链上的数据。
换句话说,索引器的目的是以一种更高效、更高效和 web2 友好的方式为客户端索引和提供数据。例如,索引器将服务于 websockets,这些 websockets 提供订单簿和填充状态的更新。这些客户将包括前端应用程序(移动和网络)、做市商、机构以及任何其他希望通过传统 web2 API 查询 dYdX 链数据的各方。
链上&链下数据
索引器将使用来自 v4 全节点的数据运行两个独立的摄取/存储过程:一个用于链上数据,一个用于链下数据。目前,链上数据状态更改的吞吐量预计为每秒 10-50 个事件。另一方面,链下数据状态更改的预期吞吐量在 500-1,000 个事件/秒之间。这表示吞吐量要求存在 10-100 倍的差异。通过分别处理这些数据类型,v4 旨在允许不同的服务根据吞吐量需求更好地扩展。
链上数据
链上数据是所有可以通过读取 dYdX 链上提交的交易来复制的数据。所有链上数据均已通过共识验证。这些数据包括:
-
账户余额(USDC)
-
账户头寸(未平仓合约)
-
订单成交
-
行业
-
清算
-
去杠杆化
-
部分和完全成交的订单
-
资金费率支付
-
交易费用
-
历史预言机价格(用于计算资金和处理清算的现货价格)
-
长单下单及取消
-
有条件的下单和取消
链下数据
链下数据是保存在每个 v4 节点内存中的数据。它不会写入区块链或存储在应用程序状态中。此数据无法通过 v4 节点上的 gRPC API 查询,也无法从存储在块中的数据中派生。它实际上是 v4 节点上的临时数据,在重新启动/从内存数据存储中清除数据时会丢失。这包括:
-
短期订单下达和取消
-
每个永续交易对的订单簿
-
索引订单在到达链之前更新
索引器架构
索引器由一系列服务组成,这些服务从 v4 全节点获取信息并将该信息提供给各种客户端。Kafka 主题用于将事件/数据传递给索引器中的服务。以下概述了构成 Indexer 的关键服务。
Ender(链上摄取)
Ender 是 Indexer 的链上数据摄取服务。它使用来自“to-ender”Kafka 主题(按块对所有链上事件进行排队)的数据,并且每个有效负载将包含整个块的所有事件数据。
Ender 从该块获取所有状态更改,并将它们应用到 Postgres 数据库,以便索引器存储所有链上数据。Ender 还将通过“to-websocket-?”创建和发送 websocket 事件。需要发出的任何 websocket 事件的 Kafka 主题。
Vulcan(链下摄取)
Vulcan 是 Indexer 的链下数据摄取服务。它将使用来自“to-vulcan”Kafka 主题(排队所有链下事件)的数据,该主题将携带有效负载,包括活动订单簿更新、下订单更新、取消订单更新和乐观填充。
此数据将存储在 Redis 缓存中。Vulcan 将使用任何新的未结订单更新 Redis,将已取消订单的状态设置为取消挂起,并根据收到的有效负载更新订单簿。
每当取消部分成交的订单时,Vulcan 也会更新 Postgres,以更新 Postgres 中的订单状态。Vulcan 还将通过“to-websocket-?”创建和发送 websocket 事件。需要发出的任何 websocket 事件的 Kafka 主题。
Comlink(API 服务器)
Comlink 是一个 API 服务器,它将公开 REST API 端点以读取链上和链下数据。例如,用户可以通过 Comlink 请求他们的 USDC 余额或特定头寸的大小,并将收到格式化的 JSON 响应。
作为 dYdX 团队设定的明确目标,我们正在设计 v4 API 以紧密匹配v3 交换 API[1],因为 dYdX 用户已经熟悉这些 API。随着时间的推移,我们有时间收集反馈并使用 v3 迭代这些 API,并且相信它们在产品级别是合理的。
Roundtable
Roundtable 是一种周期性的作业服务,提供所需的交换聚合计算。这些计算的示例包括:每个市场的 24 小时交易量、未平仓合约、按账户分类的 PnL、蜡烛图等。
Socks(Websocket 服务)
Socks 是 Indexer 的 websockets 服务,允许客户端和 Indexer 之间的实时通信。它将使用来自 ender、vulcan 和 roundtable 的数据,并将 websocket 消息发送到连接的客户端。
托管和部署索引器
为了创建端到端的去中心化产品,Indexer 将是开源的。这将包括有关所有服务和系统的综合文档,以及用于在流行的云提供商上运行索引器的基础设施即代码。希望托管索引器的第三方运营商的具体职责通常包括初始部署和持续维护。初始部署将涉及:
-
设置 AWS 基础设施以利用开源存储库。
-
部署索引器代码以从全节点获取数据并通过 API 和 websockets 发布该信息
Datadog(为 Indexer 服务提供有用的指标和监控)和 Bugsnag(对错误或需要人工干预的问题进行实时警报。索引器的维护将涉及:
-
为新的开源版本迁移和/或升级索引器
-
监控 Bugsnag 和 Datadog 是否存在任何问题并提醒内部团队解决
-
使用 dYdX 提供的运行手册调试和修复任何问题
dYdX建议,至少需要一名 DevOps 工程师来执行部署和维护 Indexer 的必要职责。运营商需要使用以下服务:
-
AWS
-
ECS-Fargate
-
RDS——Postgres 数据库
-
EC2
-
Lambda
-
弹性缓存 Redis
-
EC2 ELB – 负载均衡器
-
Cloudwatch – 日志
-
加密数据管理器
-
Terraform Cloud – 用于部署到云
-
Bugsnag – 错误意识
-
Datadog – 指标和监控
-
Pagerduty – 警报 运营商应该能够以高可用性(即高正常运行时间)的方式托管开源索引器以供公众访问。要求包括拥有上述服务的帐户并雇用适当的人员来执行部署和维护职责。
关于 dYdX
在 dYdX的使命是让金融机会民主化。相信 v4 软件将代表在服务于该任务方面的显着进步。去年发生的全球经济事件进一步强化了对开放、透明和无需许可的金融产品的需求。很高兴 v4 能够更好地满足这些需求。
原文作者:dydx
原文来源:dydx
原文标题:v4 deep dive:indexer
编译:Will,IBCL
比推快讯
更多 >>- 新一任韩国总统李在明承诺将推动加密 ETF 和韩元稳定币发展
- 美 SEC 主席:将制定加密货币理性监管框架,而非采取执法行动
- Polyhedra 推出 Panbubu 专属 SBT,即将发放给 ZKJ 在 BNB Chain 上的交易和持币用户
- 机构:澳大利亚经济疲弱,澳洲联储或加速降息
- 香港联手六地警方拦截 1.57 亿港元骗款,某洗黑钱集团利用虚拟资产洗钱约 1.18 亿港元
- 昨日美国以太坊现货 ETF 净流入 1.095 亿美元
- Solidity 调试器 sol-dbg 获以太坊基金会资助
- Tether CEO:将继续专注于非美国市场
- 过去 24 小时 PancakeSwap 协议费用超过 Circle 排名第二
- 数据:ETH ICO 巨鲸向 OKX 转入 996 枚 ETH,预计百日内清仓
- RootData:BMT 将于一周后解锁价值约 285 万美元的代币
- Alliance DAO 创始人:透明订单薄比暗池对做市商更有吸引力
- 某鲸鱼/机构疑似通过 OTC 买入 108,278 枚 ETH
- 美联储 6 月维持利率不变的概率为 98.8%
- 加密市场贪婪情绪降温,今日恐慌与贪婪指数为 62
- Upbit 暂停 Cosmos(ATOM)充值和提现业务
- Launcher Capital 完成 400 万美元种子轮融资,a16z CSX 领投
- 特朗普施压美国参议院通过预算案和加密货币法案
- WLFI 向认购者空投 47 枚 USD1,或象征特朗普第 47 任总统身份
- 加州议会全票通过比特币支付法案
- 美国劳工局:将于周五纠正 4 月就业报告,影响可以忽略不计
- 数据:过去 24 小时全网爆仓 1.57 亿美元,多单爆仓 9534.00 万,空单爆仓 6128.09 万
- 韩联社:李在明最早今天与特朗普通电话
- James Wynn:BlackRock 买入以太坊是比特币爆发前的“标准开局”
- 巨鲸 3 日内累计斥资 600 万美元买入超 17 万枚 HYPE
- 港股稳定币概念股盘初拉升,联易融科技涨超 10%
- 美国国家经济委员会主任哈塞特披露持有至少 100 万美元 Coinbase 股份
- Trump 钱包网站关联的 X 账户已被冻结
- Hut8:目前在巴西、韩国等地无业务或授权代表招揽投资
- FLOCK 连续五天排名韩国交易所交易量第一,累计涨幅超 222%
- Wintermute 已收到 2000 万枚 MELANIA 转账,约 662 万美元
- 疑似 TRUMP Meme 团队地址转出约 416.7 万枚 TRUMP,并转入多个交易所
- 西班牙咖啡连锁店 Vanadi 拟投资超 11 亿美元购入比特币,转型“比特币优先”公司
- OpenAI 向免费用户开放 ChatGPT 记忆功能
- 一新地址花费 400 万枚 USDC 建仓 FARTCOIN
- 以太坊联创 Joe Lubin 称正与主权财富基金洽谈基础设施合作
- 专家警告量子计算或将威胁比特币安全,引发市场"清算"
- SEC 简报引众议院民主党工作人员强烈不满,被指刻意隐瞒 CLARITY 法案关键信息
- Cynthia Lummis:金融安全即国家安全,美国应建立战略性比特币储备
- 美参议员 Lummis 称部分美军领导支持建立比特币战略储备
- James Wynn 高频滚仓后,开仓价与清算价仅差 1100 美元
- Ripple CEO:Ripple 从未寻求收购 Circle
- 特朗普旗下 Truth Social 递交比特币 ETF 申请
- 知情人士: Pump.fun 拟以 40 亿美元估值进行 10 亿美元的代币销售
- Melania Meme:已与Wintermute达成合作以提供流动性
- 美众议院金融服务委员会主席:两院仍需就稳定币法案的某些方面达成一致
- 特朗普团队人员称对TRUMP钱包的推出“一无所知”
- 小唐纳德·特朗普:即将推出我们的官方加密货币钱包
- MARA 比特币储备达到 49,179 枚,为BTC储备第二高的上市公司
- 美联储理事:关税可能导致类似滞胀的经济环境
比推专栏
更多 >>观点
比推热门文章
- 美 SEC 主席:将制定加密货币理性监管框架,而非采取执法行动
- Polyhedra 推出 Panbubu 专属 SBT,即将发放给 ZKJ 在 BNB Chain 上的交易和持币用户
- 机构:澳大利亚经济疲弱,澳洲联储或加速降息
- OpenSea发币来临,是真的发币还是又一场“套路”?
- 香港联手六地警方拦截 1.57 亿港元骗款,某洗黑钱集团利用虚拟资产洗钱约 1.18 亿港元
- 昨日美国以太坊现货 ETF 净流入 1.095 亿美元
- Solidity 调试器 sol-dbg 获以太坊基金会资助
- Tether CEO:将继续专注于非美国市场
- 过去 24 小时 PancakeSwap 协议费用超过 Circle 排名第二
- 数据:ETH ICO 巨鲸向 OKX 转入 996 枚 ETH,预计百日内清仓