BATCH UPDATE
Совет
Перед тем как изучать BATCH UPDATE
, рекомендуется ознакомиться со стандартным UPDATE.
BATCH UPDATE
позволяет обновлять записи в таблицах большого размера, минимизируя риск отмены блокировок и отката транзакций за счёт ослабления гарантий. Обновление данных выполняется в виде серии транзакций для каждой партиции указанной таблицы отдельно, обрабатывая по 10 000 строк за итерацию. Каждый запрос обрабатывает не более 10 партиций одновременно.
Данный запрос, как и стандартный UPDATE
, выполняется синхронно и завершается с некоторым статусом. В случае возникновения ошибки или отключения клиента обновление данных останавливается, применённые изменения не откатываются.
Семантика наследуется от стандартного UPDATE
с ограничениями:
- Поддерживается только для строковых таблиц.
- Поддерживается только для неявного контроля транзакции (режим
NoTx
илиEmptyTxControl
в SDK). - Поддерживаются только идемпотентные обновления: выражения после
SET
не должны зависеть от текущих значений изменяемых колонок. - Запрещено использование подзапросов и нескольких выражений в одном запросе.
- Недоступно ключевое слово
RETURNING
.
Пример
BATCH UPDATE my_table
SET Value1 = "foo", Value2 = 0
WHERE Key1 > 1;
Была ли статья полезна?
Предыдущая
Следующая