Niche ClickHouse Features

May 2, 2023 Engineering

A lot of companies love ClickHouse for it's great performance as LDAP system, incredible compression, and its ease of deployment.

This is a list of features that are perhaps less known about but also quite powerful:

  • Materialized Columns: This feature allows you to add new columns (which, given the fact that ClickHouse is column based, is very cheap) that derive the data from existing fields. You can imagine a generic log table with a json text field and you want to extract a specific field from the JSON into a custom column. With this feature, you can start your log table in an unstructured form and gradually migrate to a schema over time. Check out this video from Altinity for more informations.
  • TTL: ClickHouse allows you to define how long data inside tables and even specific columns is being retained. I think this is an amazing feature for sensitive data, ensuring the data is only retained as long as it is necessary for analytical purposes.
  • Automatic schema inference from JSON: Granted, this is a very niche feature but I assume it could be amazing in combination with materialized columns to gradually and automatically convert an untyped JSON payload into a typed column structure.
  • Quotas: A feature to allow you to limit resources in a multi-tenant ClickHouse deployment. You don't care about it until you absolutely need it, and here you just get it for free.

Other Notes

May 5, 2023
Engineering/ML/Jaccard Similarity
May 4, 2023
May 2, 2023
Engineering/Front-End/Modern Front-End Problems
November 3, 2022
Engineering/Test Matrixes
February 25, 2022
February 25, 2022
Engineering/Front-End/React’s Escape Hatch
February 21, 2022
January 1, 2022

About the author

Philipp Spiess
Philipp Spiess [ˈʃpiːs]

Engineer at Sourcegraph. Prev: Front End Engineer at Meta, curator of This Week in React, React DOM team member, and Lead Engineer at PSPDFKit. Loves fixing Web things.