Wiki · Технологии разработки
ClickHouse
ClickHouse – это колоночная система управления базами данных с открытым кодом для аналитических запросов: подсчётов, сумм и группировок по огромным таблицам. Её разработали в Яндексе для Яндекс Метрики.
Заказчик обычно слышит это слово в двух ситуациях. Подрядчик по аналитике говорит: «Выгрузим сырые данные Метрики в ClickHouse и построим отчёты». Или разработчик предлагает перенести туда логи и статистику, потому что основная база уже не справляется с отчётами. Разберём, что это значит для бизнеса.
Откуда взялся ClickHouse и кому принадлежит
Работу над проектом начали в 2009 году, в 2012 году ClickHouse заработал как хранилище для Яндекс Метрики. В 2016 году код открыли под лицензией Apache 2.0, поэтому базу может бесплатно поставить любая компания. В 2021 году появилась отдельная компания ClickHouse, Inc. со штаб-квартирой в районе Сан-Франциско, она развивает проект и продаёт облачный сервис ClickHouse Cloud.
Почему колоночная база считает отчёты быстрее
Обычные базы, например PostgreSQL и MySQL, хранят данные строками: всё про один визит лежит рядом. Это удобно, когда нужно достать заказ целиком или поменять в нём статус. ClickHouse хранит рядом значения одного столбца: все даты отдельно, все источники трафика отдельно.
Условный пример. В таблице визитов 100 столбцов и 500 миллионов строк. Вам нужно число визитов по источникам за месяц:
SELECT source, count() AS visits FROM visits WHERE date >= '2026-09-01' GROUP BY source
Строковая база прочитает с диска все строки целиком, со всеми 100 полями. ClickHouse прочитает только два столбца, date и source. Колонки одного типа ещё и хорошо сжимаются, так что с диска читается в разы меньше данных.

Где ClickHouse встречается в маркетинговой аналитике
Самый частый сценарий связан с Яндекс Метрикой. Отчёты в её интерфейсе строятся по агрегированным данным и не всегда отвечают на нестандартный вопрос. Сырые визиты и просмотры можно забрать двумя способами:
- Logs API: скрипт запрашивает визиты или события, один запрос охватывает не больше года, потом выгрузку скачивают и загружают в свою базу.
- Data Streaming: Метрика сама передаёт события в кластер ClickHouse в Yandex Cloud, при потоковой передаче запись появляется не позже чем через 15 минут. Нужен пакет Метрика Про или отдельное подключение через маркетплейс Yandex Cloud (на октябрь 2026 года).
Дальше к ClickHouse добавляют расходы из рекламных кабинетов и сделки из CRM, а отчёты строят в BI-системе: DataLens, Superset или Metabase. Так устроено большинство самописных систем сквозной аналитики.

ClickHouse, PostgreSQL и MySQL: что под какую задачу
| Задача | ClickHouse | PostgreSQL, MySQL |
|---|---|---|
| Хранить заказы, корзины, пользователей сайта | не для этого | подходят |
| Часто менять отдельные строки | неудобно, изменения идут тяжёлыми операциями | обычная операция |
| Считать отчёты по сотням миллионов строк | основная задача | медленно без отдельной подготовки |
| Хранить логи, клики, события сайта | подходит | подходит до определённого объёма |
На практике их не выбирают вместо друг друга, а ставят рядом. Сайт и CRM работают на строковой базе, а копия данных для отчётов уходит в ClickHouse.
Почему в ClickHouse неудобно исправлять данные
В ClickHouse данные в основном дописывают. Изменить или удалить строки можно командами ALTER TABLE ... UPDATE и ALTER TABLE ... DELETE, но это мутации: база переписывает куски данных в фоне. Столбцы, входящие в ключ сортировки, так не обновить вообще. Для удаления есть облегчённый DELETE FROM у таблиц семейства MergeTree. Если в проекте статус заказа меняется по пять раз за день, хранить такие заказы удобнее в PostgreSQL, а в ClickHouse отправлять уже итог.
Что понадобится, если подрядчик предлагает ClickHouse
- Сервер. ClickHouse ставят на свою машину, берут управляемый кластер Yandex Managed Service for ClickHouse или облако ClickHouse Cloud. Условия доступа к ClickHouse Cloud для России уточняйте у вендора.
- Специалист. Запросы пишут на SQL, но со своими функциями и типами данных. Нужен человек, который знает именно ClickHouse, иначе отчёты будут медленными.
- Загрузка. Сам ClickHouse ничего не забирает из Метрики и CRM. Кто-то должен написать и поддерживать скрипты выгрузки.
- Небольшому сайту с десятками тысяч визитов в месяц отдельная аналитическая база обычно не нужна: хватит отчётов Метрики и DataLens.

ClickHouse рядом с PostgreSQL, Метрикой и BI-системами
Чем ClickHouse отличается от PostgreSQL?
ClickHouse хранит данные по столбцам и рассчитан на отчёты по огромным таблицам, а PostgreSQL хранит строки и подходит для заказов, пользователей и частых правок. Поэтому в проектах их обычно используют вместе: рабочие данные в PostgreSQL, копия для аналитики в ClickHouse.
Как подключиться к ClickHouse из BI-системы или своей программы?
У ClickHouse есть HTTP-интерфейс, родной TCP-протокол, консольный клиент clickhouse-client, драйверы JDBC и ODBC и библиотеки для языков программирования. DataLens, Superset и Metabase подключаются к нему штатно, достаточно адреса сервера, логина и пароля.
Как загрузить сырые данные Яндекс Метрики в ClickHouse?
Сырые данные Метрики попадают в ClickHouse через Logs API скриптом или через Data Streaming прямо в кластер Yandex Cloud. Второй способ работает с пакетом Метрика Про или отдельным подключением, а его формат данных не совпадает с Logs API.
Кто сейчас развивает ClickHouse и при чём здесь Яндекс?
ClickHouse придумали в Яндексе для Метрики, а с 2021 года его развивает отдельная компания ClickHouse, Inc. Код по-прежнему открыт под лицензией Apache 2.0.
Почему UPDATE в ClickHouse работает не так, как в MySQL?
В ClickHouse UPDATE выполняется как мутация: база в фоне переписывает целые куски таблицы, а не правит одну строку. Поэтому частые точечные правки здесь дорогие, а столбцы ключа сортировки обновить нельзя совсем. Данные, которые постоянно меняются, держат в строковой базе.
Где развернуть ClickHouse, если своего сервера нет?
Без своего сервера ClickHouse берут как управляемый кластер в Yandex Cloud: обновления, резервные копии и мониторинг там на стороне провайдера. Есть и ClickHouse Cloud от самого разработчика, но условия доступа к нему из России проверяйте у вендора.
Выгрузку данных Метрики, рекламы и CRM в единую базу и отчёты по ней делаем по услуге Проектирование и внедрение системы сквозной аналитики: подключаем источники и собираем отчёты.
Документация ClickHouse и Яндекс Метрики
- Документация ClickHouse: «What is ClickHouse?», «Our Story», «Updating and deleting ClickHouse data», «Drivers and interfaces»
- Блог ClickHouse: «Yandex Opensources ClickHouse»
- Справка Яндекс Метрики: Logs API, «Data Streaming (интеграция с Yandex Cloud)»
- Документация Yandex Cloud: Yandex Managed Service for ClickHouse
Остались вопросы по теме «ClickHouse»?
Напишите нам в Telegram или MAX. Ответит специалист, который отвечает за эту тему, или руководитель проектов в рабочее время.
Отвечает по темеСергей ЧерняковWeb-разработчикНад статьёй работали
Посчитайте стоимость проекта за 2 минуты
Калькулятор соберёт смету по нашим тарифам: сайт, дизайн, интеграции и поддержка.
