MVCC snapshot определяет, какие версии строк видны запросу или транзакции относительно других транзакций. Это логическая видимость, а не копия всей базы данных.
Что такое снапшот в контексте MVCC PostgreSQL?
MVCC snapshot определяет, какие версии строк видны запросу или транзакции относительно других транзакций. Это логическая видимость, а не копия всей базы данных.
Короткий ответ
Что ответить на собеседовании
Подробный разбор
Ответ с пояснениями
MVCC snapshot определяет, какие версии строк видны запросу или транзакции относительно других транзакций. Это логическая видимость, а не копия всей базы данных.
В PostgreSQL Read Committed обычно получает новый снимок на команду, а Repeatable Read сохраняет снимок транзакции. Изменения после выбранной границы могут быть невидимы, даже если уже зафиксированы. Долгоживущий snapshot способен мешать очистке старых версий, поэтому важен возраст транзакций.