构建 Jaeger 的 ClickHouse 后端:对 1000 万个跨度实现 8.6 倍压缩

构建 Jaeger 的 ClickHouse 后端:对 1000 万个跨度实现 8.6 倍压缩

💡 原文英文,约1500词,阅读约需6分钟。
📝

内容提要

Jaeger v2.18.0 现已支持 ClickHouse,提供高效的分布式追踪存储。ClickHouse 的列式存储优化了数据压缩和查询速度,适合处理大量事件数据。通过集成 ClickHouse,Jaeger 能快速计算服务性能指标,提升微服务监控能力。

🎯

关键要点

  • Jaeger v2.18.0 现已支持 ClickHouse,提供高效的分布式追踪存储。

  • ClickHouse 的列式存储优化了数据压缩和查询速度,适合处理大量事件数据。

  • 通过集成 ClickHouse,Jaeger 能快速计算服务性能指标,提升微服务监控能力。

  • ClickHouse 设计用于高吞吐量的数据摄取、激进的压缩和快速的分析查询,适合追踪数据。

  • 在 ClickHouse 中,列式存储能够有效压缩重复的追踪数据,达到了 8.6 倍的压缩比。

  • Jaeger v2.18 包含原生 ClickHouse SPM 方法,能够直接计算服务级延迟、调用率和错误率。

  • 在 schema 设计中,选择了优化搜索性能的主键排序方式,以提高查询效率。

  • Jaeger v2 支持多种数据类型的属性存储,允许更灵活的查询。

  • 使用物化视图来加速查询,避免昂贵的表扫描。

  • 在基准测试中,ClickHouse 后端在单节点部署下实现了每秒超过 50,000 个 spans 的摄取速度。

🔎

延伸解读

ClickHouse 的优势

ClickHouse 的列式存储架构非常适合处理大量的追踪数据,尤其是在高吞吐量和快速查询方面表现优异。通过优化数据压缩和查询速度,ClickHouse 能够有效降低存储成本和提高数据处理效率,尤其是在微服务监控中,能够快速计算服务性能指标。

压缩比的重要性

在基准测试中,ClickHouse 实现了 8.6 倍的压缩比,这意味着存储同样数量的追踪数据所需的空间大幅减少。这种压缩能力不仅节省了存储成本,还提高了数据传输效率,尤其在处理大规模事件数据时,显得尤为重要。

查询性能的优化

Jaeger v2.18 通过选择合适的主键排序方式,优化了查询性能。虽然这种设计在追踪检索上略有牺牲,但在多维度搜索时却显著提升了效率。用户在设计查询时应考虑结合属性过滤,以避免昂贵的表扫描,确保查询的高效性。

延伸问答

Jaeger v2.18.0 支持 ClickHouse 有什么优势?

Jaeger v2.18.0 支持 ClickHouse 提供高效的分布式追踪存储,利用列式存储优化数据压缩和查询速度,适合处理大量事件数据。

ClickHouse 如何优化追踪数据的存储?

ClickHouse 的列式存储能够有效压缩重复的追踪数据,达到了 8.6 倍的压缩比,适合高吞吐量的数据摄取和快速分析查询。

使用 Jaeger 和 ClickHouse 进行微服务监控的好处是什么?

通过集成 ClickHouse,Jaeger 能快速计算服务性能指标,提升微服务监控能力,帮助团队更有效地监控和排查问题。

ClickHouse 的 schema 设计是如何优化查询性能的?

ClickHouse 的 schema 设计通过选择优化搜索性能的主键排序方式,提高了查询效率,支持多种数据类型的属性存储。

在 ClickHouse 中,如何加速查询?

使用物化视图可以加速查询,避免昂贵的表扫描,从而提高查询效率。

ClickHouse 后端在基准测试中表现如何?

在基准测试中,ClickHouse 后端在单节点部署下实现了每秒超过 50,000 个 spans 的摄取速度,并且查询延迟保持在 100 毫秒以内。

🏷️

标签

➡️

继续阅读