ClickHouse: winter/spring 2020

Author: Alexey Milovidov, 2020-04-26.

ClickHouse: winter/spring 2020

Zoom: https://yandex.zoom.us/j/91554601465

YouTube: https://www.youtube.com/c/ClickHouseDB

Telegram chat: clickhouse_en

New Features of ClickHouse:
winter/spring 2020

Previous Episodes:

Tiered Storage DDL queries for dictionaries CONSTRAINTs Prepared Statements Format ORC Format Template ORDER BY optimization WITH FILL text_log metric_log Query Profiler Globs for File/URL/HDFS RPM packages neighbor os_schedule_priority ALTER MODIFY SETTING SELECT FROM VALUES COLUMNS matcher LIVE VIEW Settings constraints Row Level Security Secondary Indices TTL expressions MySQL protocol Adaptive index granularity Advanced text search JSON functions Cascade MATERIALIZED VIEWs WITH ROLLUP/CUBE ASOF JOIN Redis dictionary source Parallel parsing Template format CustomSeparated format VALUES optimization s3 import/export gzip/brotli import/export geoDistance

Role Based Access Control

Managing users, roles
and access with SQL queries.

CREATE USER / DROP USER

CREATE ROLE / DROP ROLE

GRANT / REVOKE role TO user

GRANT / REVOKE SELECT columns ON db.table TO role/user

Available from version 20.4. Developer — Vitaly Baranov.

Role Based Access Control

demo?

Non-blocking ALTER queries

... and ALTER RENAME COLUMN

Available from version 20.4. Developer — Alexander Sapin.

And more for ALTER

ALTER MATERIALIZE TTL

ALTER MOVE PARTITION

Adaptive JOIN algorithm

SET join_algorithm = 'auto'

Automatically switch between Hash Join and Merge Join
depending on memory usage.

Available since 20.3. Developer — Artem Zuikov.

Adaptive JOIN algorithm

demo?

DateTime64

Date and Time with subsecond resolution.

DateTime64(3) — milliseconds.

DateTime64(6) — microseconds.

...

Available since 20.1. Developer — Vasily Nemkov, Altinity.

DateTime64

В разработке — расширенный диапазон.

Сейчас 1970–2106.

Write-Optimized Data Format

For data parts of MergeTree tables.

CREATE TABLE test.hits_compact AS test.hits ENGINE = MergeTree ORDER BY ... SETTINGS min_bytes_for_wide_part = '10M'

Ускоряет мелкие вставки.

Experimental feature.

Available since 20.3. Developer — Anton Popov.

Write-Optimized Data Format

demo?

More Features

FORMAT Avro

FORMAT Regexp

Handler for Prometheus

Asynchronous update mode for cache dictionaries

Memory Profiler

system.stack_trace

Limiting network connections for hosts

Full support for h3

LTS releases

Version 20.3 (March 2020) is a new LTS

ClickHouse Playground

(beta version)

https://play.clickhouse.com/

Works on the cheapest VM in Yandex.Cloud.

What's Next

LDAP for authentication

Kerberos for authentication

LDAP as a storage for access rights and roles

What's Next

ALTER RENAME COLUMN

Non-blocking CREATE/DROP/RENAME

In-memory data parts and WAL for MergeTree

Cold storage over S3 and HDFS.

FreeBSD x86_64 and Linux ppc64le builds in CI.

What's Next

Cache for subquery results

Custom HTTP handlers

On-disk data encryption

Geographical dictionaries

Public roadmap 2020!

https://clickhouse.com/docs/ru/extended_roadmap/

~ 500 tasks with detailed descriptions — dependencies, assignies...

and ~ 70 are already done :)

.