Spanner: Удаление ограничений на кумулятивные мутации для DML-транзакций
Google Cloud Spanner, глобально согласованная реляционная база данных, обновила обработку транзакций для более крупных и сложных операций. Ранее Spanner ограничивал общее количество модификаций в транзакции 80 000 "модификаций мутаций". Этот лимит, рассчитываемый как строки, умноженные на столбцы плюс индексы, мог быть достигнут развивающимися приложениями. Новая гибкость переносит этот лимит в 80 000 модификаций мутаций с всей транзакции на отдельные операторы языка манипулирования данными (DML). Это означает, что одна транзакция теперь может содержать несколько операторов DML, при условии, что каждый оператор соблюдает свой собственный лимит в 80 000 модификаций. Это позволяет разработчикам группировать операторы DML логически по бизнес-требованиям без искусственного разделения. Изменение обратно совместимо с существующими клиентскими библиотеками Spanner, не требуя обновлений кода приложений. Однако разработчики должны помнить, что более крупные транзакции удерживают блокировки дольше, потенциально увеличивая количество отказов. Лимит в 80 000 модификаций применяется индивидуально к операторам DML, но по-прежнему применяется ко всему набору мутаций в одном вызове фиксации с использованием API мутаций. Разработчики могут отслеживать общее количество модификаций через mutation_count в CommitStats. Отдельные операторы DML, превышающие 80 000 модификаций, по-прежнему будут вызывать ошибку, а другие лимиты транзакций, такие как размер в байтах, остаются активными. Лучшие практики включают мониторинг CommitStats и оптимизацию крупных операций. Spanner остается надежным выбором для масштабируемых, постоянно доступных операционных приложений, теперь предлагая повышенную гибкость для разработчиков.
mutation_countвCommitStats. Отдельные операторы DML, превышающие 80 000 модификаций, по-прежнему будут вызывать ошибку, а другие лимиты транзакций, такие как размер в байтах, остаются активными. Лучшие практики включают мониторингCommitStatsи оптимизацию крупных операций. Spanner остается надежным выбором для масштабируемых, постоянно доступных операционных приложений, теперь предлагая повышенную гибкость для разработчиков.