ClickHouse 26.10 Release Call: 104 New Features, 2x Less Hash Table Memory, Columns Cache
ClickHouse 26.10 is the biggest release yet: 104 new features (the first release over 100), 225 performance optimizations and 739 bug fixes, presented live by ClickHouse CTO and original creator Alexey Milovidov. Large hash tables now switch to Robin Hood hashing, which halves memory for GROUP BY, uniqExact, DISTINCT and JOIN and is also faster (uniqExact over 100M distinct values went from 13.5 GB and 1.33 s to 4.6 GB and 0.31 s). The query condition cache now covers now() and today() conditions by snapping them to a time grid, so dashboard queries reuse it (100M rows read down to 3.2M on repeat runs). LIKE, startsWith, endsWith and position filters are applied while strings are deserialized, cutting peak memory for one query from 275 MB to 5 MB. Top-K dynamic filtering pushes the GROUP BY … ORDER BY … LIMIT boundary into the scan (9.45 GB read down to 144 MB) and into Parquet and Iceberg readers (0.37 s to 0.077 s). Merge joins are sharded by primary key ranges (9.1 s to 0.78 s), pipelines narrow under high concurrency (about 15% less CPU per query) and GROUP BY on LowCardinality and String keys is faster. The query cache can now live on disk in a filesystem cache, surviving restarts (2.07 s to 0.033 s) and, in ClickHouse Cloud, using the distributed cache shared between replicas. The new experimental columns cache keeps decompressed, deserialized columns in memory for MergeTree and Parquet (Alexey's new favourite feature), and the experimental PCO codec compresses numeric columns better than ZSTD and DoubleDelta while decompressing faster. Live demos cover the new obfuscate table function for generating anonymized test data from a query, training and predicting with an XGBoost dictionary in SQL, the LogsQL dialect from VictoriaLogs, and an Elasticsearch table engine. Other additions: a function composition operator for lambdas (lower | reverse); written_rows quotas; IPCrypt format-preserving IP encryption; bit-packing functions for binary quantization of embeddings; quoted-printable encoding; order-insensitive query normalization; sql_compatible_division_for_integers; Cluster and Overlay database engines; JOINs with arbitrary ON conditions; IN subqueries that spill to disk; query-aware workload scheduling (fair, least attained service, priority); MATERIALIZED CTEs inside recursive queries; SQLite as an import/export format; LATERAL JOIN; mutations and hard links on s3_plain_rewritable disks; Parquet and Iceberg VARIANT read as Dynamic; Unity Catalog v2 for Delta Lake and Iceberg; Iceberg v3 deletion vectors; Trino and Kusto dialects in Beta; a Freeform input format; chdig with a Keeper browser; better PostgreSQL wire compatibility including query cancellation; logrotate-friendly FileLog; PromQL at 100% on the Prometheus compliance suite; and notebooks in the built-in Web UI. ClickHouse Cloud adds generally available executable UDFs, JWT authentication and SCIM 2.0 provisioning. Get started with ClickHouse Cloud: https://clickhouse.com/cloud