Почему не используют SERIALIZABLE всегда?

SERIALIZABLE усиливает изоляцию, но может увеличивать конфликты, ожидания и число откатов. Приложению нужно корректно повторять транзакции, а пропускная способность может снизиться.

Короткий ответ

Что ответить на собеседовании

SERIALIZABLE усиливает изоляцию, но может увеличивать конфликты, ожидания и число откатов. Приложению нужно корректно повторять транзакции, а пропускная способность может снизиться.

Подробный разбор

Ответ с пояснениями

SERIALIZABLE усиливает изоляцию, но может увеличивать конфликты, ожидания и число откатов. Приложению нужно корректно повторять транзакции, а пропускная способность может снизиться.

Точная цена зависит от реализации СУБД: используются блокировки, обнаружение конфликтов или их сочетание. Для многих операций достаточно меньшей изоляции вместе с ограничениями уникальности и точечными locks. Уровень выбирают по инвариантам данных. При этом более слабую изоляцию нельзя считать безопасной только потому, что ошибки пока не замечены.

ИИ-помощник для собеседований

Хочешь уверенно проходить собеседования?

Попробуй ИИ-помощник для собеседований: слышит вас и собеседника, анализирует экран, подсказывает ответы в реальном времени, работает без VPN и не попадает в захват экрана.

Подробнее