Altinity Blog

ClickHouse Kafka Engine Tutorial

Our colleague Mikhail Filimonov just published an excellent ClickHouse Kafka Engine FAQ. It provides users with answers to common questions about using stable versions, configuration parameters, standard SQL definitions, and many other topics. Even experienced users are likely to learn something new.
But what if you are getting started and need help setting up Kafka and ClickHouse for the first time? Good news! This article is for you.

Read More
Reducing Clickhouse Storage Cost with the LowCardinality Type – Lessons from an Instana Engineer

At Instana we are operating our Clickhouse clusters on m5.12xlarge AWS EC2 instances and similar sized custom build Google Cloud instances. The biggest cost driver however is not the size of the instance, but the EBS volumes / persistent SSDs that are attached to the instances. Every single one of our 12TB volumes costs $1320 per month in AWS and $2,040 per month in Google Cloud.

Read More
ClickHouse Dictionaries, Reloaded!

ClickHouse external dictionaries are a “ClickHouse way” to handle multi-dimensional schema. ClickHouse Dictionaries Explained was the very first article in the Altinity blog three years ago. ClickHouse has improved significantly since then, and dictionaries have achieved a new level of utility. In this article, I will explain two new cool ClickHouse features that completely change the way how dictionaries can be used. Change in a good sense, of course.

Read More
SQL for ClickHouse DBA

My name is Meo and I’ve been a DataBase Administrator (DBA) for the last 35 years of my life. After getting a degree at the University in Turin (Italy) many years ago, I started working with relational databases, and I’m still enjoying it! Sometimes I worked as a programmer, and later as an analyst, but my favourite job is the DBA. I’ve worked with Oracle, PostgreSQL, MySQL, and now with ClickHouse in XeniaLab.

The DBA uses particular SQL statements to extract the most interesting information from the databases it manages. This article describes some useful SQL commands a DBA must know to manage a ClickHouse database, like checking sessions, locks, disk space usage, performance and replication. This is my personal “Run Book,” and I am happy to share it in the Altinity blog.

Read More
Monitoring ClickHouse on Kubernetes with Prometheus and Grafana


The ClickHouse Kubernetes operator is great at spinning up data warehouse clusters on Kubernetes. Once they are up, though, how can you see what they are actually doing? It’s time for monitoring!
In this article we’ll explore how to configure two popular tools for building monitoring systems: Prometheus and Grafana. The ClickHouse Kubernetes operator includes scripts to set these up quickly and add a basic dashboard for clusters.

Read More
ClickHouse Kafka Engine FAQ

Kafka is a popular way to stream data into ClickHouse. ClickHouse has a built-in connector for this purpose -- the Kafka engine. Our friends from Cloudfare originally contributed this engine to ClickHouse. The Kafka engine has been reworked quite a lot since then and is now maintained by Altinity developers. It is not always evident how to use it in the most efficient way, though. We tried to fill the gap with a Kafka webinar, which was a success. In this article we collected typical questions that we get in our support cases regarding the Kafka engine usage. We hope that our recommendations will help to avoid common problems.

Read More
Altinity Stable Release is updated to 19.16.19.85

We are delighted to announce that Altinity Stable Release is updated to 19.16.17.85. The release includes several bug fixes not present in the previous 19.16.14.65 release.

Read More
Handling Real-Time Updates in ClickHouse

Mutable data is generally unwelcome in OLAP databases. ClickHouse is no exception to the rule. Like some other OLAP products, ClickHouse did not even support updates originally. Later on, updates were added, but like many other things they were added in a “ClickHouse way.”

Even now, ClickHouse updates are asynchronous, which makes them difficult to use in interactive applications. Still, in many use cases users need to apply modifications to existing data and expect to see the effect immediately. Can ClickHouse do that? Sure it can.

Read More
Five Ways to Handle as-of Queries in ClickHouse

A common use case in time series applications is to get the measurement value at a given point of time. For example, if there is a stream of measurements, one often needs to query the measurement as of current time or as of the same day yesterday and so on. Financial market data analysis and all sorts of monitoring applications are typical examples.

Databases have different ways to achieve this task and ClickHouse is not an exception here. In fact, ClickHouse offers at least 5 different approaches. In this article, we will review and compare them.

Read More
Putting Things Where They Belong Using New TTL Moves


Multi-volume storage is crucial in many use cases. It helps to reduce storage costs as well as improves query performance by allowing placement of the most critical application data on the fastest storage devices. Monitoring data is a classic use case. The value of data degrades rapidly over time. The last day, last week, last month, and previous year data have very different access patterns, which in turn correspond to various storage needs.

Read More
Altinity Novel Coronavirus Update

The COVID-19 outbreak has placed unprecedented stress on individuals and businesses worldwide. We would like to share a few words about how the Altinity team is dealing with this outbreak in the hope it may help your own planning.

Read More
Altinity Stable Release update 19.16.14.65

We are delighted to announce that Altinity Stable Release is updated to 19.16.14.65. The release includes several important bug fixes not present in the previous 19.16.12.49, and one compatibility fix that is important for future upgrades.

Read More