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

Удаление мутаций

Удаление мутаций относится к ALTER запросам, которые манипулируют данными таблицы через удаление. В частности, это такие запросы, как ALTER TABLE DELETE и т.д. Выполнение таких запросов создаст новые мутированные версии частей данных. Это означает, что такие операторы вызовут переписывание целых частей данных для всех данных, которые были вставлены до мутации, что приведет к большому количеству запросов на запись.

к сведению

Для удаления вы можете избежать этого большого количества запросов на запись, используя специализированные движки таблиц, такие как ReplacingMergeTree или CollapsingMergeTree вместо стандартного движка таблиц MergeTree.

Команда ALTER TABLE ... DELETE

Удаляет данные, соответствующие указанному выражению фильтрации. Реализовано как мутация.

примечание

Префикс ALTER TABLE делает этот синтаксис отличным от большинства других систем, поддерживающих SQL. Это сигнализирует о том, что в отличие от аналогичных запросов в OLTP базах данных, это тяжелая операция, не предназначенная для частого использования. ALTER TABLE считается тяжелой операцией, которая требует, чтобы основные данные были объединены перед их удалением. Для таблиц MergeTree рассмотрите возможность использования DELETE FROM запроса, который выполняет легкое удаление и может быть значительно быстрее.

filter_expr должно быть типа UInt8. Запрос удаляет строки в таблице, для которых это выражение принимает ненулевое значение.

Один запрос может содержать несколько команд, разделенных запятыми.

Синхронность обработки запроса определяется настройкой mutations_sync. По умолчанию она асинхронная.

Смотрите также