Что означает консистентность в ACID?

Консистентность в ACID означает сохранение заданных инвариантов: успешная транзакция переводит базу из одного допустимого состояния в другое.

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

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

Консистентность в ACID означает сохранение заданных инвариантов: успешная транзакция переводит базу из одного допустимого состояния в другое.

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

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

Консистентность в ACID означает сохранение заданных инвариантов: успешная транзакция переводит базу из одного допустимого состояния в другое.

Например, внешние ключи не должны ссылаться на отсутствующие строки, уникальные значения — дублироваться, а сумма проводок должна удовлетворять бизнес-правилу. Часть ограничений обеспечивает СУБД, часть — корректная транзакционная логика приложения.

Это не то же самое, что согласованность реплик в CAP. ACID не делает произвольную ошибочную бизнес-логику правильной: если инвариант не выражен ограничениями или алгоритмом, СУБД не может автоматически его угадать.

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

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

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

Подробнее