Секции
IF NOT EXISTS
db_name уже существует, ClickHouse не создает новую базу данных и:
- Не генерирует исключение, если указана эта конструкция.
- Генерирует исключение, если эта конструкция не указана.
ON CLUSTER
db_name на всех серверах указанного кластера. Подробности см. в статье Distributed DDL.
ДВИЖОК
COMMENT
Query
Response
Настройки
lazy_load_tables
Atomic, Ordinary). Представления, materialized view, словари и таблицы, использующие table function, всегда загружаются сразу независимо от этого параметра.
Когда использовать: Этот параметр полезен для баз данных с большим количеством таблиц (сотнями или тысячами), когда активно запрашивается только часть из них. Он уменьшает время запуска сервера и использование памяти, откладывая создание объектов движка таблицы, сканирование частей данных и инициализацию фоновых потоков до первого обращения.
Влияние на system.tables:
- Пока к таблице не обратились,
system.tablesпоказывает её движок какTableProxy. После первого обращения отображается реальное имя движка (например,MergeTree). - Столбцы вроде
total_rowsиtotal_bytesвозвращаютNULLдля незагруженных таблиц, поскольку реальное хранилище ещё не создано.
SELECT,INSERT,ALTER,DROPпрозрачно инициируют загрузку реального движка таблицы при первом использовании.RENAME TABLEработает без инициирования загрузки.- После загрузки таблица остаётся загруженной на всё время работы серверного процесса.
- Инструменты мониторинга, которые полагаются на метаданные
system.tables(например,total_rows,engine), могут показывать неполную информацию для незагруженных таблиц. - Первый запрос к незагруженной таблице приводит к разовым затратам на загрузку (разбор сохранённого оператора
CREATE TABLEи инициализацию движка).
0 (отключено).