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

Специальные Движки Таблиц

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

Оставшиеся движки уникальны по своему назначению и пока не сгруппированы в семьи, поэтому они помещены в эту "специальную" категорию.

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