Distributed tracing with Jaeger and ClickHouse
summary
Describes building an internal distributed tracing service for a large MTS product ecosystem using Jaeger for span collection and ClickHouse for storage and analytics. Covers the operational problems of tracing thousands of interactions per second and the architecture and implementation choices made to deploy Jaeger with ClickHouse as the backend for scalable trace storage and querying.
AI-written summary · about
chapters (18)
- 0:00Introduction
- 1:29Distributed tracing challenge
- 3:202022 architecture with Elasticsearch
- 5:25Growth load issues with Elastic
- 7:31Choosing ClickHouse as alternative
- 8:35Jaeger and ClickHouse integration
- 10:24Delayed inserts in ClickHouse
- 12:53Dropping distributed tables
- 14:39ClickHouse and Kafka tuning
- 15:42Morning load peaks problem
- 17:04Analytics and read optimization
- 19:10Jaeger tag storage issues
- 21:56Duplicates in materialized views
- 22:17Final system architecture
- 23:19System monitoring and metrics
- 25:47Performance results and metrics
- 26:50Implementation recommendations
- 27:34Q&A
related talks
18mSwitching Jaeger Distributed Tracing to ClickHouse® to Enable APM
51mDistributed Tracing for microservices with Jaeger
37mOpenTelemetry & Distributed Tracing: A Jaeger v2 Deep Dive
37mDeep Dive: Jaeger – Steve Flanders
28mJaeger Intro and Deep Dive
24mData analytics with distributed tracing data
57mDistributed Request Tracing in .NET
51mNavigating Distributed Traces
