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

Специальные движки таблиц

Существует три основные категории движков таблиц:

Остальные движки уникальны по своему назначению и пока не объединены в семейства, поэтому они размещены в этой «специальной» категории.

СтраницаОписание
Движок таблицы AliasДвижок таблицы Alias создает прозрачный прокси для другой таблицы. Все операции перенаправляются в целевую таблицу, при этом сам алиас не хранит данных.
Движок таблицы DistributedТаблицы с движком Distributed не хранят собственные данные, но позволяют выполнять распределенную обработку запросов на нескольких серверах. Чтение автоматически распараллеливается. При чтении используются индексы таблиц на удаленных серверах, если они есть.
Движок таблицы DictionaryДвижок Dictionary отображает данные словаря в виде таблицы ClickHouse.
Движок таблицы MergeДвижок Merge (не путать с MergeTree) сам не хранит данные, но позволяет одновременно читать из произвольного числа других таблиц.
Движки таблиц Executable и ExecutablePoolДвижки таблиц Executable и ExecutablePool позволяют определить таблицу, строки которой генерируются указанным вами скриптом (путем записи строк в stdout).
Движок таблицы FileДвижок таблицы File хранит данные в файле в одном из поддерживаемых форматов (TabSeparated, Native и т. д.).
Движок таблицы NullПри записи в таблицу Null данные игнорируются. При чтении из таблицы Null возвращается пустой результат.
Движок таблицы SetНабор данных, который всегда находится в оперативной памяти. Предназначен для использования в правой части оператора IN.
Движок таблицы JoinНеобязательная предварительно подготовленная структура данных для использования в операциях JOIN.
Движок таблицы URLВыполняет запросы к данным на удаленном сервере HTTP/HTTPS и обратно. Этот движок похож на движок File.
Движок таблицы ViewИспользуется для реализации представлений (подробнее см. запрос CREATE VIEW). Он не хранит данные, а только сохраняет указанный запрос SELECT. При чтении из таблицы этот запрос выполняется (при этом из него удаляются все ненужные столбцы).
Движок таблицы MemoryДвижок Memory хранит данные в оперативной памяти в несжатом виде. Данные хранятся точно в том же виде, в каком они поступают при чтении. Иными словами, чтение из этой таблицы практически ничего не стоит.
Движок таблицы BufferБуферизует записываемые данные в оперативной памяти, периодически сбрасывая их в другую таблицу. Во время чтения данные одновременно считываются из буфера и из другой таблицы.
Внешние данные для обработки запросаClickHouse позволяет отправлять серверу данные, необходимые для обработки запроса, вместе с запросом SELECT. Эти данные помещаются во временную таблицу и могут использоваться в запросе (например, в операторах IN).
Движок таблицы GenerateRandomДвижок таблицы GenerateRandom генерирует случайные данные для заданной схемы таблицы.
Движок таблицы KeeperMapЭтот движок позволяет использовать кластер Keeper/ZooKeeper как согласованное хранилище ключ-значение с линеаризуемыми записями и последовательно согласованными чтениями.
Движок таблицы FileLogЭтот движок позволяет обрабатывать файлы журналов приложений как поток записей.