Семейство движков MergeTree
Движки таблиц из семейства MergeTree являются основой возможностей хранения данных в ClickHouse. Они предоставляют большинство функций для надежности и высокой производительности обработки данных: колоночное хранение, пользовательская партиционирование, разреженный первичный ключ, вторичные индексы для пропуска данных и т.д.
Базовый MergeTree движок таблиц можно считать стандартным движком для одноузловых экземпляров ClickHouse, поскольку он универсален и практичен для широкого спектра случаев использования.
Для производственного использования ReplicatedMergeTree является оптимальным выбором, так как он добавляет высокую доступность ко всем возможностям обычного движка MergeTree. В качестве бонуса предлагается автоматическая дедупликация данных при их загрузке, что позволяет программному обеспечению безопасно повторять попытку в случае сетевой проблемы во время вставки.
Все другие движки семейства MergeTree добавляют дополнительный функционал для конкретных случаев использования. Обычно это реализуется в виде дополнительных манипуляций с данными в фоновом режиме.
Основной недостаток движков MergeTree заключается в том, что они довольно тяжелые. Поэтому типичная схема заключается в том, чтобы иметь их не так много. Если вам нужно много небольших таблиц, например, для временных данных, рассмотрите семейство Log.
Страница | Описание |
---|---|
VersionedCollapsingMergeTree | Позволяет быстро записывать состояния объектов, которые постоянно меняются, и удалять старые состояния объектов в фоновом режиме. |
Replication данных | Обзор репликации данных в ClickHouse |
MergeTree | Движки таблиц семейства MergeTree разработаны для высоких скоростей загрузки данных и огромных объемов данных. |
Приблизительный поиск ближайших соседей с использованием векторных индексов схожести | Приблизительный поиск ближайших соседей с использованием векторных индексов схожести |
CollapsingMergeTree | Наследует от MergeTree, но добавляет логику для коллапса строк во время процесса объединения. |
Ключ пользовательского партиционирования | Узнайте, как добавить пользовательский ключ партиционирования в таблицы MergeTree. |
Полнотекстовый поиск с использованием полнотекстовых индексов | Быстро находите поисковые термины в тексте. |
SummingMergeTree | SummingMergeTree наследует от движка MergeTree. Его ключевая особенность заключается в возможности автоматически суммировать числовые данные во время объединения частей. |
AggregatingMergeTree | Заменяет все строки с одинаковым первичным ключом (или, точнее, с одинаковым ключом сортировки) на одну строку (в рамках одной части данных), которая хранит комбинацию состояний агрегирующих функций. |
GraphiteMergeTree | Разработан для сжатия и агрегирования/усреднения (rollup) данных Graphite. |
ReplacingMergeTree | Отличается от MergeTree тем, что удаляет дубликаты с одинаковым значением ключа сортировки (ORDER BY часть таблицы, не PRIMARY KEY ). |