Встречается на 2% собеседований по Python
Что такое грязное чтение в БД
Грязное чтение (Dirty Read) — это аномалия в транзакциях, когда одна транзакция читает данные, изменённые другой, но ещё не зафиксированной транзакцией. Если вторая транзакция откатывается, первая получит некорректные данные.
Пример (SQL):
sql
-- Транзакция 1 (изменяет данные)
BEGIN;
UPDATE accounts SET balance = balance - 100 WHERE user_id = 1;
-- Транзакция 2 (читает НЕзафиксированные данные)
BEGIN;
SELECT balance FROM accounts WHERE user_id = 1; -- Видит изменённые -100
COMMIT;
-- Транзакция 1 откатывается
ROLLBACK;
text
**Как избежать**:
В большинстве СУБД (PostgreSQL, MySQL и др.) можно настроить уровень изоляции `READ COMMITTED` или выше, который предотвращает грязное чтение.
```sql
SET TRANSACTION ISOLATION LEVEL READ COMMITTED;Где встречается:
Чаще в системах с высокой конкуренцией, где важна скорость, но не строгая согласованность данных.

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