Перейти к основному содержанию
OPTIMIZE FINAL — это DDL-команда, которая физически и необратимо реорганизует и оптимизирует данные на диске. Она физически объединяет data parts в таблицах MergeTree, одновременно выполняя дедупликацию данных за счет удаления дублирующихся строк из хранилища. FINAL — это модификатор на этапе выполнения запроса, который возвращает дедуплицированные результаты без изменения структуры хранимых данных. Он применяет логику слияния при чтении. Его действие временно и влияет только на результат текущего запроса. Пользователям часто рекомендуют избегать OPTIMIZE FINAL, поскольку он создает существенную нагрузку на производительность, однако не стоит путать его с FINAL. Во многих случаях необходимо использовать FINAL, чтобы получить результаты без дубликатов, особенно при использовании табличных движков, таких как ReplacingMergeTree, которые могут содержать дублирующиеся строки, еще не замещенные в ходе фонового процесса слияния, происходящего со временем. Таблица ниже суммирует ключевые различия:
AspectOPTIMIZE FINALFINAL
ТипDDL-командаМодификатор запроса
ЭффектПостоянная оптимизация хранилищаВременная дедупликация на этапе выполнения запроса
ПроизводительностьВысокая стоимость один раз, затем запросы быстрееМеньшая стоимость одного запроса, но повторяется для каждого запроса
Изменение данныхДа — физически изменяет хранилищеНет — операция только для чтения
Сценарий использованияПериодическое обслуживание/оптимизацияДедуплицированные запросы в реальном времени

Когда использовать каждый вариант

Используйте OPTIMIZE FINAL, когда:
  • Вы хотите надолго повысить производительность запросов
  • Вы можете позволить себе разовые затраты на оптимизацию
  • Вы выполняете периодическое обслуживание таблиц
  • Вы хотите физически удалить дубликаты данных
Используйте FINAL, когда:
  • Вам сразу нужны дедуплицированные результаты
  • Вы не можете ждать завершения постоянной оптимизации или не хотите её выполнять
  • Дедуплицированные данные нужны вам лишь время от времени
  • Вы работаете с данными, которые часто меняются
Оба варианта — полезные инструменты, но в ClickHouse они решают разные задачи в рамках стратегии дедупликации.
Последнее изменение 10 июня 2026 г.