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