NeverBlink / Engines / ClickHouse
NeverBlink for ClickHouse

ClickHouse fails quietly. NeverBlink is listening.

ClickHouse is fast because it defers work. Merges, TTL deletes and replication all happen in the background, which is why the worst ClickHouse incidents don't start with an alert. NeverBlink watches that background machinery and tells you, with the fix attached, while the problem is still a warning.

ClickHouse CloudSelf-hostedKubernetes
Silent failures

Nobody gets paged for any of these.

ClickHouse exposes over a thousand metrics through system tables, and very few teams know which fifteen actually predict outages. These are the failures NeverBlink is built to catch.

Merge backlog piles up

Parts accumulate faster than the merge pool clears them, until ingestion fails with TOO_MANY_PARTS.

A materialized view drops data

It fails mid-insert. The source table gets the row, the target doesn't, and rollups under-count for weeks.

TTL stops keeping up

Deletes only happen inside merges, and ClickHouse deprioritizes them when the pool is busy, until a replica goes read-only.

Replicas quietly diverge

A Keeper hiccup leaves a replica stale, and by default ClickHouse serves reads from it rather than erroring.

Detached parts eat the disk

Broken parts land in detached, where ClickHouse never cleans them up, until the disk fills.

Shard skew

One shard carries far more data or traffic than the others, and its node becomes the cluster's ceiling.

ALERTS WITH THE FIX ATTACHED

Purpose-built watchers for ClickHouse

Watchers for merge backlog, replication delay, stuck mutations, Keeper flapping and Kafka consumer lag, ranked by severity. Each alert arrives with the investigation done, down to copy-paste SQL.

  • Slack, email, PagerDuty and 14+ more destinations
  • Shows what happened, what it affects and what to run next
Root-cause analysis of a ClickHouse replica delay alert, with SQL to stop serving reads from stale replicas
SCHEMA AND PIPELINES

See how data actually flows

NeverBlink maps data from source tables through materialized view cascades to TTL and retention. It reviews every table for wrong compression codecs, oversized types and partition keys that fight your queries, each with the ALTER statement and the estimated gain.

ClickHouse table pipeline: Kafka source, materialized views in and out, targets, and TTL, with a slow materialized view highlighted
QUERY ANALYTICS

Find the queries behind the bill, then get the rewrite

Every query on the cluster is fingerprinted and ranked by runtime, memory, CPU and IO. NeverBlink explains each expensive one, such as a full scan against the wrong ORDER BY key or a memory-hungry GROUP BY. The optimizer then proposes a rewritten query next to the original, with the schema changes worth considering.

Query optimizer result: original and suggested SQL side by side, the reason for the change, and a schema change to consider

A health score you can act on.

Scored checks are re-run continuously by a lightweight collector that reads system tables only, never your data.

Stability

  • MergeTree part counts
  • Disk and memory headroom
  • Node version alignment

Performance

  • Merge pool saturation
  • Rejected or delayed inserts
  • Query latency and error rates

Resiliency

  • Replication queue health
  • DDL queue health
  • Recent backups

Security

  • Authentication configuration
  • Server version and known CVEs

On ClickHouse Cloud? You're covered too.

ClickHouse Cloud keeps the cluster running. It can't fix unoptimized application usage, and managed pricing makes the easy fix, scaling up, the expensive one. NeverBlink adds query analytics, schema reviews and cost recommendations on top, so what you run on it is worth the bill.

NeverBlink provides continuous insights on queries and node sizing, and walks us through the changes required to optimize the cluster. Our dashboard queries dropped from 8 seconds to subsecond.
A
Ariel IllouzVP Engineering, LinearB
25–30%lower database costs
80–90%less time on DB management

Running in minutes.

Create a read-only monitoring user, point the collector at your cluster, and the first health assessment arrives the same day. With auto-discovery on, the collector finds every node through system.clusters.

Read the ClickHouse setup guide →

-- 1. A read-only monitoring user CREATE USER IF NOT EXISTS neverblink_monitoring_collector IDENTIFIED WITH sha256_password BY '…' SETTINGS readonly = 1, log_queries = 0, max_execution_time = 30;
# 2. Run the collector anywhere that can reach port 8123 docker run -d --name neverblink-agent --restart=always \ -e NB_INGEST_KEY='<INGEST_KEY>' \ -e CLICKHOUSE_HOSTS='http://ch-1:8123' \ -e CLICKHOUSE_AUTO_DISCOVERY=true \ <registry>/agent

Find out what your ClickHouse cluster isn't telling you.

Your first cluster is free.

Subscribe to the NeverBlink Newsletter

Get early access to new NeverBlink features, insightful blogs & exclusive events , webinars, and workshops.

We use cookies to provide an optimized user experience and understand our traffic. To learn more, read our use of cookies; otherwise, please choose 'Accept Cookies' to continue using our website.