* DOCSUP-2806: Add meta intro. * DOCSUP-2806: Update meta intro. * DOCSUP-2806: Fix meta. * DOCSUP-2806: Add quotes for meta headers. * DOCSUP-2806: Remove quotes from meta headers. * DOCSUP-2806: Add meta headers. * DOCSUP-2806: Fix quotes in meta headers. * DOCSUP-2806: Update meta headers. * DOCSUP-2806: Fix link to nowhere in EN. * DOCSUP-2806: Fix link (settings to tune) * DOCSUP-2806: Fix links. * DOCSUP-2806:Fix links EN * DOCSUP-2806: Fix build errors. * DOCSUP-2806: Fix meta intro. * DOCSUP-2806: Fix toc_priority in examples datasets TOC. * DOCSUP-2806: Fix items order in toc. * DOCSUP-2806: Fix order in toc. * DOCSUP-2806: Fix toc order. * DOCSUP-2806: Fix order in toc. * DOCSUP-2806: Fix toc index in create * DOCSUP-2806: Fix toc order in create. Co-authored-by: romanzhukov <romanzhukov@yandex-team.ru> Co-authored-by: alexey-milovidov <milovidov@yandex-team.ru>
3.6 KiB
toc_folder_title | toc_title | toc_priority |
---|---|---|
Семейство Log | Введение | 29 |
Семейство Log
Движки разработаны для сценариев, когда необходимо быстро записывать много таблиц с небольшим объёмом данных (менее 1 миллиона строк), а затем читать их целиком.
Движки семейства:
Общие свойства
Движки:
-
Хранят данные на диске.
-
Добавляют данные в конец файла при записи.
-
Поддерживают блокировки для конкурентного доступа к данным.
Во время запросов `INSERT` таблица блокируется, а другие запросы на чтение и запись ожидают разблокировки таблицы. Если запросов на запись данных нет, то можно выполнять любое количество конкуретных запросов на чтение.
-
Не поддерживают операции мутации.
-
Не поддерживают индексы.
Это означает, что запросы `SELECT` не эффективны для выборки диапазонов данных.
-
Записывают данные не атомарно.
Вы можете получить таблицу с повреждёнными данными, если что-то прервёт операцию записи (например, аварийное завершение работы сервера).
Отличия
Движок TinyLog
самый простой в семье и обеспечивает самые низкие функциональность и эффективность. Движок TinyLog
не поддерживает параллельного чтения данных в несколько потоков. Движок читает данные медленнее, чем оба других движка с параллельным чтением, и использует почти столько же дескрипторов, сколько и движок Log
, поскольку хранит каждый столбец в отдельном файле. Его можно использовать в простых сценариях с низкой нагрузкой.
Движки Log
и StripeLog
поддерживают параллельное чтение. При чтении данных, ClickHouse использует множество потоков. Каждый поток обрабатывает отдельный блок данных. Движок Log
сохраняет каждый столбец таблицы в отдельном файле. Движок StripeLog
хранит все данные в одном файле. Таким образом, движок StripeLog
использует меньше дескрипторов в операционной системе, а движок Log
обеспечивает более эффективное считывание данных.