Полное руководство по ClickHouse для backend-разработчиков — от установки и базовых концепций до экспертных техник оптимизации, шардирования, репликации и production-эксплуатации. Курс охватывает архитектуру, движки таблиц, SQL-диалект, индексы, материализованные представления, мониторинг, безопасность и best practices.
Что такое ClickHouse, история создания, область применения, колоночная архитектура, векторизованное выполнение
Установка через Docker и нативно, clickhouse-server, clickhouse-client, веб-интерфейс, первая база данных
Числовые, строковые, даты, массивы, кортежи, Nullable, LowCardinality, специализированные типы
Что такое движки таблиц, MergeTree, Log, Memory, File, Table, Null, различия и применение
ReplacingMergeTree, SummingMergeTree, AggregatingMergeTree, CollapsingMergeTree, VersionedCollapsingMergeTree, GraphiteMergeTree
SELECT, INSERT, агрегатные функции, оконные функции, функции для работы с массивами, JOIN, подзапросы
Первичный индекс, индекс ключей сортировки, вторичные индексы (data skipping), полнотекстовый индекс, проекции
ReplicatedMergeTree, ZooKeeper/ClickHouse Keeper, кворумы вставки, восстановление после сбоев
Распределённые таблицы, шардирование, кластеры, distributed-движок, глобальные JOIN, балансировка
EXPLAIN, анализ планов выполнения, оптимизация JOIN, предикаты, партиционирование, типичные антипаттерны
Создание материализованных представлений, инкрементальная агрегация, live views, словари
INSERT, UPDATE, DELETE, ALTER, мутации, TTL, сжатие, кодировки, оптимизация партиций
System-таблицы, логи, метрики, трассировка запросов, профилирование, alerting
Пользователи, роли, права доступа, квоты, SSL/TLS, аудит, row-level security
Конфигурация production-кластера, бэкапы, обновления, масштабирование, troubleshooting, SLO/SLA