Files
nis2/project-tasks/p12-a-clickhouse-data-skipping.md
T
2026-09-06 19:26:12 +03:00

4.8 KiB
Raw Blame History

P12-A. ClickHouse: отсечение данных

  • Версия и дата проверки: 1.0, 05.09.2026.
  • Статус: готово к назначению.

Статья и исходные материалы

  • Основная статья: Robert Schulze и соавт. — ClickHouse — Lightning Fast Analytics for Everyone. VLDB 2024.
  • Кратко о статье: Статья описывает архитектуру ClickHouse — столбцовой аналитической СУБД, рассчитанной на быстрое выполнение запросов над большими объёмами данных. Производительность обеспечивают совместно порядок хранения, разреженный первичный индекс, пропуск ненужных гранул, сжатие и векторизованное выполнение. В этом проекте изолируется вклад порядка данных и отсечения гранул при разной селективности запросов.
  • Почему результат актуален: статья описывает устройство открытой аналитической СУБД ClickHouse: столбцовое хранение, фоновые слияния частей, векторизованный конвейер исполнения запросов и отсечение ненужных данных.
  • Артефакты и данные: ClickHouse/ClickHouse под Apache-2.0 и ClickHouse/ClickBench с воспроизводимой аналитической нагрузкой и конфигурациями разных СУБД. Зафиксированные ревизии: ClickHouse/ClickHouse@2da63c1b42ca (Apache-2.0); ClickHouse/ClickBench@fa52f8524ad9 (CC BY-NC-SA 4.0; лицензии отдельных входных наборов проверяются отдельно).

Обязательный результат

  • Проверяемый вопрос или утверждение: порядок данных и пропуск ненужных гранул дают измеримый выигрыш для аналитических запросов, когда фильтр согласован с физической организацией таблицы.
  • Технический результат: Развернуть ClickHouse и подготовить уменьшенный ClickBench с двумя физическими вариантами одной таблицы, различающимися ключом сортировки и размером гранул.
  • Эксперимент: Для не менее чем пяти запросов сравнить варианты хранения по прочитанным строкам и байтам, времени, CPU и памяти. Выполнить прогрев и не менее трёх измеряемых повторов; объяснить результат через EXPLAIN и системные таблицы.
  • Границы выводов: эффект отсечения данных оценивается для выбранных ключей сортировки, размеров гранул и запросов уменьшенного ClickBench; он не характеризует все оптимизации ClickHouse и производительность распределённого кластера.
  • Ресурсный профиль: локально, CPU, 8–16 ГБ памяти, готовый бинарный выпуск или контейнер. Полный ClickBench не требуется: объём данных и набор запросов сокращаются с проверкой того, что выбранные режимы остаются различимы.

Содержательные направления

  • данные, схема и варианты хранения.
  • планы и измерения исполнения.
  • распределённый режим или дополнительная оптимизация и анализ результатов.

Возможное продолжение

Добавить реплицированный двухузловой стенд, сравнить локальный и распределённый запрос, исследовать компрессию, проекции, пропускную способность загрузки либо сопоставимый столбцовый baseline.