Встречается на собеседованиях • сегодня
Какие знаешь проблемы параллельного выполнения транзакций в БД
Основные проблемы параллельных транзакций:
- Lost Update - две транзакции читают данные, обе изменяют их, но сохраняется только последнее изменение:
sql
-- Транзакция 1: SELECT balance (100)
-- Транзакция 2: SELECT balance (100)
-- Транзакция 1: UPDATE balance = 100 + 50
-- Транзакция 2: UPDATE balance = 100 + 20
-- Результат: 120 (потеряно +50)-
Dirty Read - чтение незафиксированных данных другой транзакции, которая потом откатывается.
-
Non-repeatable Read - разные значения при повторном чтении в одной транзакции из-за изменений другой транзакции.
-
Phantom Read - появление новых строк при повторном чтении из-за вставок другой транзакции.
-
Deadlock - взаимная блокировка транзакций, ожидающих ресурсы друг друга.
Для решения используются механизмы изоляции (READ UNCOMMITTED, READ COMMITTED, REPEATABLE READ, SERIALIZABLE) и блокировки (оптимистичные/пессимистичные).

Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы