0

Какова разница между уровнями изоляции сериализуемого и повторяемого чтения?

14

В чем разница между уровнями изоляции "сериализуемый" (serializable) и "повторяемый чтение" (repeatable read)? Может кто-нибудь привести простой пример для наглядности?

1 ответ(ов)

0

Повторяемое чтение предотвращает только неповторяемое чтение (то есть вы можете прочитать одни и те же данные в одной транзакции, не опасаясь, что кто-то их изменит — хотя такая необходимость возникает довольно редко).

Сериализуемая изоляция предотвращает как неповторяемое чтение, так и фантомные строки (то есть вы не можете даже выполнять операции INSERT). Это означает, что вы можете ЧИТАТЬ и ЗАПИСЫВАТЬ (SELECT, UPDATE) строки, которые не входят в сериализуемую транзакцию, но не можете УДАЛЯТЬ или ВСТАВЛЯТЬ строки на уровне таблицы.

Обе изоляции — повторяемое чтение и сериализуемая — очень строгие, и не всегда есть необходимость в их использовании!

Чтобы ответить на вопрос, пожалуйста, войдите или зарегистрируйтесь