ClickHouse: вопросы на собеседовании
Вопросы и ответы по ClickHouse: подготовка, примеры и типичные ошибки.
Проверьте себя по ClickHouse: 5 вопросов, ~10 минут
Вопросов: 38. Частые идут первыми, сложные возвращаются на повторение.
- Как ClickHouse обрабатывает вставку данных и почему важна пакетная вставка (batch insertion)?Senior· спрашивают почти всегда· полный разбор — Jobs/Boost
- Как выполнять backup/restore и disaster recovery в ClickHouse Cloud и self-hosted кластере?Middle· спрашивают почти всегда
- Что такое ClickHouse и к какому типу СУБД он относится?Junior· спрашивают почти всегда
- Для каких типов нагрузок ClickHouse подходит лучше всего, а где стоит выбрать другую базу данных?Junior· спрашивают почти всегда· полный разбор — Jobs/Boost
- Что такое колоночное хранение (columnar storage) и почему оно лучше подходит для аналитических нагрузок?Junior· спрашивают почти всегда· полный разбор — Jobs/Boost
- Что такое движок таблиц MergeTree и как он работает?Middle· спрашивают почти всегда
- Что такое первичный ключ (primary key) в ClickHouse и чем он отличается от primary key в реляционных базах данных?Middle· спрашивают почти всегда
- Как сравнить ClickHouse с альтернативами по consistency, latency, throughput, cost и operability?Middle
- Как понять, что проблема связана со схемой, индексом, запросом, настройками, диском или инфраструктурой?Senior· полный разбор — Jobs/Boost
- Представьте, запросы к ClickHouse резко замедлились после релиза или роста данных. Как вы будете искать причину?Senior· полный разбор — Jobs/Boost
- Как ClickHouse обрабатывает JOINs и каковы различные алгоритмы join?Senior· полный разбор — Jobs/Boost
- Какие ошибки делают команды, когда используют ClickHouse как «просто SQL-базу» без учёта его особенностей?Middle
- Какая модель хранения, индексации и выполнения запросов у ClickHouse влияет на архитектуру приложения?Middle· полный разбор — Jobs/Boost
- Что такое партиционирование (partitioning) в ClickHouse и чем оно отличается от партиционирования в PostgreSQL?Middle· полный разбор — Jobs/Boost
- Какие production-риски есть у ClickHouse: блокировки, bloat, replication lag, backup/restore, schema changes или плохие запросы?Senior· полный разбор — Jobs/Boost
- Что такое data skipping indexes в ClickHouse и когда их следует использовать?Middle
- Что такое distributed tables в ClickHouse и как работает шардирование?Senior
- Что такое materialized views в ClickHouse и как они работают?Middle· полный разбор — Jobs/Boost
- Каковы различные варианты MergeTree и когда использовать каждый (ReplacingMergeTree, SummingMergeTree, AggregatingMergeTree, CollapsingMergeTree)?Senior· полный разбор — Jobs/Boost
- Что такое выражение PREWHERE в ClickHouse и как оно улучшает производительность запросов?Middle· полный разбор — Jobs/Boost
- В чём разница между primary key и ORDER BY в ClickHouse?Middle· полный разбор — Jobs/Boost
- Каковы типичные ошибки при проектировании запросов в ClickHouse?Senior· полный разбор — Jobs/Boost
- В чём разница между
ReplicatedMergeTreeиMergeTree?Senior· полный разбор — Jobs/Boost - Что такое index в ClickHouse и что такое sparse indexes (primary index)?Middle
- Как мониторить производительность ClickHouse с помощью системных таблиц?Senior· полный разбор — Jobs/Boost
- Что такое приближённые агрегирующие функции в ClickHouse (uniq, quantile и т.д.)?Middle
- В чём разница между типами данных
Array,NestedиMapв ClickHouse?Middle - Что такое ClickHouse dictionaries и как они улучшают производительность поиска?Middle· полный разбор — Jobs/Boost
- Расскажите о случае, когда вам приходилось решать проблему с ClickHouse: slow query, migration, incident, replication, backup или tuning.Middle· полный разбор — Jobs/Boost
- Как проектировать ingestion pipeline: Kafka engine, materialized view, deduplication и ограничения exactly-once семантики?Middle· полный разбор — Jobs/Boost
- Что такое ClickHouse Keeper (ранее ZooKeeper) и какую роль он выполняет?Senior· полный разбор — Jobs/Boost
- Как диагностировать проблемы с merges, parts explosion и memory limits в ClickHouse?Middle· полный разбор — Jobs/Boost
- Что такое mutations и почему
UPDATE/DELETEв ClickHouse дорогие?Middle - Чем projections отличаются от materialized views?Middle· полный разбор — Jobs/Boost
- Как работает сжатие данных в ClickHouse и какие кодеки (codecs) доступны?Middle· полный разбор — Jobs/Boost
- Как ClickHouse интегрируется с Kafka для приёма данных в реальном времени?Senior
- Что такое функция TTL (Time-To-Live) в ClickHouse и как её настраивать?Senior· полный разбор — Jobs/Boost
- В чём разница между ClickHouse Cloud и self-hosted ClickHouse?Senior· полный разбор — Jobs/Boost