Перейти к основному содержимому
Перейти к основному содержимому

Производительность и оптимизация

В этом разделе приведены советы и лучшие практики по улучшению производительности с ClickHouse. Мы рекомендуем пользователям ознакомиться с Основными концепциями перед прочтением этого раздела, в котором рассматриваются основные концепции, необходимые для повышения производительности.

ТемаОписание
Руководство по оптимизации запросовНачните здесь, чтобы изучить основы оптимизации запросов, включая распространенные сценарии и методы повышения производительности для ускорения выполнения запросов.
Расширенное руководство по первичным индексамГлубокое погружение в уникальную систему разреженных первичных индексов ClickHouse, как она отличается от традиционных баз данных и лучшие практики для оптимальных стратегий индексирования.
Параллелизм запросовУзнайте, как ClickHouse параллелизует выполнение запросов с помощью обработчиков и настроек max_threads, включая способы инспекции и оптимизации параллельного выполнения.
Ключ партиционированияОвладите выбором ключа партиционирования, чтобы значительно улучшить производительность запросов, позволяя эффективное отсечение сегментов данных и избегая распространенных ошибок партиционирования.
Индексы пропуска данныхУместно применяйте вторичные индексы, чтобы пропускать нерелевантные блоки данных и ускорять фильтрованные запросы по непервичным ключевым колонкам.
PREWHERE оптимизацияПоймите, как PREWHERE автоматически снижает I/O, фильтруя данные перед чтением ненужных колонок, а также как отслеживать его эффективность.
Пакетные вставкиМаксимизируйте пропускную способность загрузки и уменьшите нагрузку на ресурсы, эффективно группируя вставки данных.
Асинхронные вставкиУлучшите производительность вставки с помощью серверной пакетной обработки, чтобы снизить сложность на стороне клиента и увеличить пропускную способность для вставок с высокой частотой.
Избегайте мутацийПроектируйте workflows только на добавление, исключающие затратные операции UPDATE и DELETE, при этом сохраняя точность и производительность данных.
Избегайте nullable колонокУменьшите нагрузку на хранилище и улучшите производительность запросов, используя значения по умолчанию вместо nullable колонок, когда это возможно.
Избегайте OPTIMIZE FINALПоймите, когда вам следует и не следует использовать OPTIMIZE TABLE FINAL
АнализаторИспользуйте новый анализатор запросов ClickHouse для выявления узких мест производительности и оптимизации планов выполнения запросов для повышения эффективности.
Профилирование запросовИспользуйте профилировщик выборки запросов для анализа паттернов выполнения запросов, выявления критических мест производительности и оптимизации использования ресурсов.
Кэш запросовУскорьте выполнение часто выполняемых SELECT запросов, активировав и настроив встроенный кэш результатов запросов ClickHouse.
Тестирование оборудованияЗапустите бенчмарки производительности ClickHouse на любом сервере без установки, чтобы оценить возможности оборудования. (Не применяется к ClickHouse Cloud)