2天时间,聊今年最热的 Agent、上下文工程、AI 产品创新等话题。2025 年最后一场~ 了解详情
写点什么

Datadog 发布统一的基于 Rust 的实时度量指标引擎 Monocle

作者:Leela Kumili

  • 2025-09-28
    北京
  • 本文字数:1217 字

    阅读完需:约 4 分钟

大小:622.10K时长:03:32
Datadog发布统一的基于Rust的实时度量指标引擎Monocle

Datadog 推出了Monocle,这是一个用Rust编写的、新型的实时时间序列存储引擎。该系统统一了公司的度量指标存储基础设施,提供了更高的数据摄入吞吐量和更低的查询延迟,同时降低了运维复杂性。Monocle 取代了他们的历代存储后端,解决了随时间积累的并发挑战和扩展性限制。

 

Datadog 存储基础设施的早期设计将责任分散在多个系统之间。度量指标数据被写入实时数据库(Real-Time Database,RTDB),它存储了<timeseries_id, timestamp, value>元组,而索引数据库则维护标识符和标签。存储路由器将指标定向到 RTDB 节点,查询在 RTDB 和索引节点之间展开。每个节点都包含用于摄入、存储、快照、查询和限流的子系统,所有这些都通过共享的控制平面进行协调。


实时度量指标存储架构的高层概述(来源:Datadog工程博客

 

RTDB 的这种架构经历了几次迭代。第一代依赖于Cassandra实现高写入吞吐,但是查询灵活性有限。随后是基于Redis的设计,这提高了响应性,但遇到了持久性和单线程执行的问题。MDBM是一个内存映射的键-值存储,提供了更好的操作系统缓存使用,但遇到了可扩展性的瓶颈。随后,基于 Go 的 B+树引擎采用了每个核心一个线程(thread-per-core)的模型,增加了并发性,但也增加了复杂性。后来,RocksDB 提供了持久性,并通过DDSketch支持分布式指标,不过在扩展方面仍然存在挑战。

 

Monocle 将这些先前的方法整合到了一个统一的基于Rust的引擎中。它采用了每个核心一个分片,每个分片一个工作者(shard-per-core,worker-per-shard)的模型,每个存储工作者管理自己的日志结构化合并树(LSM 树)实例,以摄入数据、提供查询服务和执行后台任务,如压缩。设计采用了早期的分片存储:通过其时间序列键标识每个数据单元,它们被分配到一个分片上,确保 CPU 核心之间的负载分布均匀。正如 Datadog 工程师所指出的,“这种每个核心一个分片,异步工作器模型是 RTDB 的基础。”设计消除了写入路径上的锁和原子操作,减少了争用,而 Rust 的内存保证了安全性和并发性。


Monocle 的内部组件来源:Datadog工程博客)

 

该引擎将数据摄取、存储与查询处理整合于单一系统中。写入操作通过内存表缓冲,并采用受 LSM 树启发的压缩机制实现持久化。基数树缓冲区加速聚合操作,统一缓存则降低查询延迟。数据按时间分段存储,每段采用最近最少使用(LRU)策略,在保留最相关查询的同时驱逐过期查询,确保系统在高负载下仍保持数据新鲜度与响应能力。

 

Datadog 报告的性能基准测试显示了显著的收益。Monocle 实现了数据摄入吞吐量的 60 倍增加,高峰时查询延迟的 5 倍减少,与早期系统相比成本效率提高了一倍。这些改进归因于每个核心一个分片的并发模型、Rust 的效率以及在写入和查询路径上的优化。

 

Datadog 的工程师指出,Rust 重写和模块化设计的另一项关键优势在于:为 Monocle 开发的组件现正被复用到 Datadog 的其他系统中,这既提升了可维护性,又增强了平台范围的一致性。

 

原文链接:

Datadog Launches Monocle, a Unified Rust-Powered Real-Time Metrics Engine

2025-09-28 10:304734

评论

发布
暂无评论

转转微服务框架的连接管理

转转技术团队

微服务 RPC 服务治理

MRS +Apache Zeppelin,让数据分析更便捷

华为云开发者联盟

大数据 开源 后端

[ Kitex 源码解读 ] 服务注册

baiyutang

Go 微服务架构 kitex CloudWeGo

数字电路基础篇

贾献华

7月月更

性能大规模专项评测双通过,数牍Tusita步入隐私大数据计算时代

Jessica@数牍

隐私计算性能 数牍科技 可信隐私计算评测

SeekTiger的Okaleido有大动作,生态通证STI会借此爆发?

鳄鱼视界

专注B2B跨境支付的背后,XTransfer的风控基础设施是如何炼成的?

XTransfer技术

黄东旭:TiDB的优势是什么?

TiDB 社区干货传送门

人物访谈

TiDB之rawkv升级之路v5.0.4-->v6.1.0

TiDB 社区干货传送门

迁移 版本升级 集群管理

涅槃重生!字节大牛力荐大型分布式手册,凤凰架构让你浴火成神

冉然学Java

Java 华为 开源 网络协议 #Github

多商户系统的直播功能用过吗?用过的朋友扣个 666!

CRMEB

Ticmp - 更快的让应用从 MySQL 迁移到 TiDB

TiDB 社区干货传送门

性能测评

资源池以及资源池化是什么意思?

行云管家

资源池 IT运维 资源池化

如何用低成本方案解决室内超大场景下机器人定位与导航难题?

优必选科技

机器人 定位 导航

TiDB 在多点数字化零售场景下的应用

TiDB 社区干货传送门

实践案例 社区活动 TUG 话题探讨

TiDB 在长银五八消费金融核心系统适配经验分享

TiDB 社区干货传送门

安装 & 部署 OLAP 场景实践

万物根生,共创新时代:华为亮相第五届数字中国建设峰会

极客天地

万物皆可柯里化的 Ramda.js

掘金安东尼

前端 函数式编程 7月月更

研发需求拆分的全流程详解 | 敏捷实践

LigaAI

开发者 研发管理 需求管理 需求分析 LigaAI

一文理解分布式开发中的服务治理

博文视点Broadview

Spring Cloud 与 K8s 的微服务设计

Damon

7月月更

TiCDC 架构和数据同步链路解析

TiDB 社区干货传送门

数据库架构设计 6.x 实践

深圳云堡垒机厂商哪家好?很贵吗?咨询电话多少?

行云管家

云计算 网络安全 堡垒机 云堡垒机

参与开源社区还有证书拿?

胡说云原生

开源 证书

TiKV主要内存结构和OOM排查总结

TiDB 社区干货传送门

故障排查/诊断

NFT是什么?如何开发NFT系统?

开源直播系统源码

数字藏品软件开发 数字藏品系统软件开发 数字藏品交易平台开发

APP常用跨端技术栈深入分析

京东科技开发者

flutter H5 Weex ReactNative

实时计算基本概念解析

五分钟学大数据

实时计算 7月月更

转转监控系统的内部原理及实践 审核中

转转技术团队

监控 Prometheus

单点登录的三种方式

Authing

云原生 SaaS SSO 单点登录 Authing

Datadog发布统一的基于Rust的实时度量指标引擎Monocle_后端_InfoQ精选文章