Перейти к основному содержанию
Это руководство входит в подборку выводов, собранных на встречах сообщества. На этой странице представлен практический опыт сообщества по оптимизации затрат при использовании ClickHouse — подходы, которые хорошо зарекомендовали себя в конкретных сценариях и конфигурациях. Больше практических решений и полезных наблюдений можно найти в подборке по конкретным проблемам. Узнайте, как ClickHouse Cloud помогает управлять операционными расходами.

Стратегия сжатия: LZ4 или ZSTD в продакшене

Когда Microsoft Clarity понадобилось работать с сотнями терабайт данных, они выяснили, что выбор сжатия может кардинально влиять на затраты. При их масштабе важен каждый бит сэкономленного дискового пространства, и они столкнулись с классическим компромиссом: производительность или стоимость хранения. Microsoft Clarity работает с огромными объёмами данных — 2 PB несжатых данных в месяц по всем аккаунтам, обрабатывая около 60 000 запросов в час на восьми узлах и обслуживая миллиарды просмотров страниц с миллионов веб-сайтов. При таком масштабе стратегия сжатия становится критически важным фактором стоимости. Изначально они использовали стандартное для ClickHouse сжатие LZ4, но обнаружили, что ZSTD позволяет существенно сократить затраты. Хотя LZ4 работает быстрее, ZSTD обеспечивает более высокую степень сжатия ценой небольшого снижения производительности. Протестировав оба подхода, они стратегически решили отдать приоритет экономии места в хранилище. Результаты оказались значительными: экономия 50% места на крупных таблицах при приемлемом влиянии на производительность ингестии и запросов. Ключевые результаты:
  • Экономия 50% места на крупных таблицах за счёт сжатия ZSTD
  • Возможность обрабатывать 2 PB данных в месяц
  • Приемлемое влияние на производительность ингестии и запросов
  • Существенное снижение затрат при масштабе в сотни ТБ

Стратегия хранения на уровне столбцов

Один из самых эффективных способов оптимизации затрат — анализ того, какие столбцы действительно используются. Microsoft Clarity применяет продуманные стратегии хранения на уровне столбцов, используя встроенные возможности телеметрии ClickHouse. ClickHouse предоставляет подробные метрики использования хранилища по столбцам, а также полную информацию о шаблонах запросов: к каким столбцам обращаются, как часто, какова длительность запросов и какова общая статистика использования. Такой подход на основе данных позволяет принимать взвешенные решения о политиках хранения и управлении жизненным циклом столбцов. Анализируя эти данные телеметрии, Microsoft может выявлять горячие точки хранения — столбцы, которые занимают много места, но почти не используются в запросах. Для таких редко используемых столбцов можно применять более агрессивные политики хранения, сокращая срок хранения с 30 месяцев до одного месяца, либо полностью удалять столбцы, если к ним не обращаются вообще. Такая выборочная стратегия хранения снижает затраты на хранение без влияния на пользовательский опыт. Стратегия:
  • Анализируйте шаблоны использования столбцов с помощью телеметрии ClickHouse
  • Выявляйте столбцы с высоким потреблением хранилища и низкой частотой запросов
  • Применяйте выборочные политики хранения
  • Отслеживайте шаблоны запросов для принятия решений на основе данных
Связанная документация

Управление данными на основе партиций

В Microsoft Clarity выяснили, что стратегия партиционирования влияет и на производительность, и на простоту эксплуатации. Их подход: партиционирование по дате, ORDER BY по часу. Эта стратегия дает сразу несколько преимуществ помимо удобства очистки данных: она позволяет легко удалять данные, упрощает расчеты биллинга для их клиентского сервиса и помогает соблюдать требования GDPR к удалению отдельных строк. Ключевые преимущества:
  • Простая очистка данных (удаление партиции вместо построчного удаления)
  • Упрощение расчетов биллинга
  • Более высокая производительность запросов за счет исключения партиций
  • Более простое операционное управление
Связанная документация

Стратегия преобразования строк в целые числа

Платформы аналитики часто сталкиваются с проблемой хранения категориальных данных, которые повторяются в миллионах строк. Инженерная команда Microsoft столкнулась с этой проблемой в данных поисковой аналитики и разработала эффективное решение, позволившее сократить объём хранилища затронутых датасетов на 60%. В системе веб-аналитики Microsoft результаты поиска вызывают разные типы ответов — карточки с погодой, спортивную информацию, новостные статьи и фактологические ответы. Каждый результат запроса помечался описательными строками вроде “weather_answer”, “sports_answer” или “factual_answer”. Поскольку система обрабатывала миллиарды поисковых запросов, эти строковые значения многократно сохранялись в ClickHouse, занимая огромный объём хранилища и требуя дорогостоящих сравнений строк при выполнении запросов. Microsoft реализовала систему сопоставления строк и целых чисел с использованием отдельной базы данных MySQL. Вместо хранения самих строк в ClickHouse они сохраняют только целочисленные ID. Когда вы выполняете запросы через интерфейс и запрашиваете данные для weather_answer, оптимизатор запросов сначала обращается к таблице сопоставления в MySQL, чтобы получить соответствующий целочисленный ID, а затем преобразует запрос так, чтобы использовать это число перед отправкой в ClickHouse. Такая архитектура сохраняет удобство для пользователей: на панелях мониторинга они по-прежнему видят понятные метки вроде weather_answer, а в хранилище и запросах используются гораздо более эффективные целые числа. Система сопоставления выполняет всё преобразование прозрачно, не требуя никаких изменений в пользовательском интерфейсе или пользовательских сценариях работы. Основные преимущества:
  • Сокращение объёма хранилища затронутых датасетов на 60%
  • Более высокая производительность запросов за счёт сравнения целых чисел
  • Снижение использования памяти для JOIN и агрегаций
  • Снижение затрат на передачу данных по сети для больших результирующих наборов
Это пример, специально используемый для сценария данных Microsoft Clarity. Если все ваши данные находятся в ClickHouse или у вас нет ограничений на перенос данных в ClickHouse, попробуйте использовать словари.

Видео по теме

Эти рекомендации сообщества по оптимизации затрат отражают стратегии компаний, обрабатывающих от сотен терабайт до PB данных, и демонстрируют реальные подходы к снижению эксплуатационных расходов ClickHouse.
Последнее изменение 10 июня 2026 г.