Эти настройки доступны в system.settings и автоматически генерируются на основе исходного кода.
enable_optimize_predicate_expression
Тип
Bool
По умолчанию
1
История версий
| Версия | Значение по умолчанию | Комментарий |
|---|---|---|
| 18.12.17 | 1 | Оптимизировать предикаты в подзапросах по умолчанию |
Включает pushdown предикатов в запросах SELECT.
Pushdown предикатов может значительно сократить сетевой трафик в распределённых запросах.
Возможные значения:
- 0 — Отключено.
- 1 — Включено.
Использование
Рассмотрим следующие запросы:
SELECT count() FROM test_table WHERE date = '2018-10-10'SELECT count() FROM (SELECT * FROM test_table) WHERE date = '2018-10-10'
Если enable_optimize_predicate_expression = 1, время выполнения этих запросов будет одинаковым, потому что ClickHouse применяет WHERE к подзапросу в процессе его обработки.
Если enable_optimize_predicate_expression = 0, время выполнения второго запроса будет значительно больше, потому что предложение WHERE применяется ко всем данным только после завершения подзапроса.
enable_optimize_predicate_expression_to_final_subquery
Тип
Bool
По умолчанию
1
Разрешает проталкивание предиката в подзапрос FINAL.