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

Обновление мутаций

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

к сведению

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

ИНСТРУКЦИИ ALTER TABLE ... UPDATE

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

примечание

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

filter_expr должен быть типа UInt8. Этот запрос обновляет значения указанных колонок на значения соответствующих выражений в строках, для которых filter_expr принимает ненулевое значение. Значения преобразуются в тип колонки с помощью оператора CAST. Обновление колонок, которые используются в расчете первичного или партиционного ключа, не поддерживается.

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

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

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