Awesome ClickHouseMetrics and Monitoring

Percona-Lab/PromHouse

⭐ 268 Go repository created 2017-08-07

PromHouse is a long-term remote storage solution designed specifically for Prometheus 2.x, built on top of ClickHouse. It offers built-in clustering and downsampling capabilities to efficiently manage and store large volumes of time series data generated by Prometheus. The project is currently in development and not recommended for production use yet. PromHouse leverages ClickHouse's powerful columnar database engine to store time series data with a schema optimized for performance and compression. The data model includes tables for time series metadata and samples, using ClickHouse's ReplacingMergeTree and MergeTree engines to ensure data integrity and efficient querying. The system identifies time series by hashing label name/value pairs, including the metric name, using the same fingerprinting algorithm as Prometheus to facilitate seamless data migration. All fingerprints and labels are kept in memory for fast access, while new time series data is persisted in ClickHouse. The architecture supports clustering by periodically reading data from other ClickHouse instances to discover new time series, with mechanisms to avoid duplicates. PromHouse currently stores samples with a size of 24 bytes each, achieving a compression ratio of about 4.5:1, which translates to approximately 5.3 bytes per sample. This is competitive with Prometheus's local storage compression. The project plans to enhance storage efficiency further by utilizing ClickHouse's delta and double delta compression features available since version 19.3.3. Future roadmap features include downsampling capabilities, which have become feasible with newer ClickHouse versions, and query hints to optimize query performance, with community contributions welcomed. The project also provides example SQL queries to analyze the largest jobs, instances, metrics, and time series by count, demonstrating its analytical capabilities. Overall, PromHouse aims to provide a scalable, efficient, and clustered long-term storage backend for Prometheus metrics using ClickHouse, addressing the needs of large-scale monitoring environments.

https://github.com/Percona-Lab/PromHouse

clickhouseclusteringcompressiondata-migrationdelta-compressiondouble-delta-compressiondownsamplingfingerprintlong-term-storagemergetreemetricsmonitoringprometheuspromhouseremote-storagereplacingmergetreesql-queriestime-series

Also in Metrics and Monitoring

hyperdxio/hyperdx

HyperDX is an open source observability platform powered by Clickhouse and OpenTelemetry that centralizes and correlates logs, metrics, traces, errors, and session replays to help engineers quickly resolve production issues.

uptrace/uptrace

Uptrace is an open source APM platform that uses OpenTelemetry for data collection and ClickHouse for storage, providing unified monitoring of traces, metrics, and logs with powerful querying, dashboards, and alerting capabilities.

openlit/openlit

OpenLIT is an open-source AI engineering platform providing OpenTelemetry-native observability, monitoring, and management tools for large language models, GPUs, and vector databases, with data stored in ClickHouse for efficient telemetry analysis.

openmeterio/openmeter

OpenMeter is a flexible metering and billing platform for AI, API, and DevOps companies that collects and aggregates usage events in real-time to enable usage-based billing and real-time insights.

trickstercache/trickster

Trickster is an open-source HTTP reverse proxy cache and time series dashboard accelerator that improves performance and scalability for time series databases including ClickHouse, Prometheus, and InfluxDB.

metrico/gigapipe

Gigapipe is a lightweight, polyglot observability stack that supports logs, metrics, traces, and profiling with compatibility for Loki, Prometheus, Tempo, Pyroscope, and OpenTelemetry, powered by ClickHouse and Bun for efficient data ingestion and querying.

Swetrix/swetrix

Swetrix is an open source, privacy-focused, cookie-less web analytics platform that uses Clickhouse for efficient statistical data management and offers self-hosting or cloud deployment options.

flant/loghouse

Loghouse is an open-source log management solution for Kubernetes that uses ClickHouse for efficient log storage and provides a web UI for querying and monitoring logs.