2013-05-26 2 views
2

Немного хромой вопрос, но я смутился ... Разница между уровнями изоляции, насколько я понял, заключается в том, как они управляли своими замками (http://en.wikipedia.org/wiki/Isolation_(database_systems)). Так, как упоминалось в статье, есть блокировки чтения, записи и диапазона, но нет определения того, что они собой представляют. Что вам разрешено делать, а что нет. Когда я искал Google, ничего конкретного не было , и вместо этого я запутался в новых терминах, таких как Pessimistic Lock, Optimistic Lock, Exclusive lock, Gap lock и так далее. Я был бы рад, если бы кто-нибудь давал мне краткий обзор и, возможно, указал мне хорошие материалы, чтобы просветить себя.Уровни изоляции Sql, блокировки чтения и записи

Мой первоначальный вопрос, который начал исследование уровней изоляции был:

Что происходит, когда у меня есть параллельные вставки (разные пользователи веб-приложения) в одну таблицу, когда READ_COMMITED мой уровень изоляции транзакций. Целая таблица заблокирована или нет? Или вообще что там происходит :)?

Заранее благодарен!

+1

просто быть полным: вы спрашиваете это для конкретной СУБД? – rene

+0

Нет. Я надеялся, что это общая концепция ... Никаких конкретных РСУБД. – EnTrERy

ответ

1

Что происходит, когда у меня есть параллельные вставки (разные пользователи сети приложений) в одну таблицу, когда моя транзакция уровня изоляции READ_COMMITED.

«Read commit» означает, что другие сеансы не могут видеть вновь вставленную строку до момента ее совершения. Оператор SQL, который работает без явной транзакции, заключен в неявный, поэтому «read commit» влияет на все вставки.

В некоторых базах данных реализовано «чтение прочитано» с помощью замков. Например, блокировка чтения может быть помещена на вставленную строку, что предотвращает чтение других данных. Другие базы данных, такие как Oracle, используют multiversion concurrency control. Это означает, что они могут представлять версию базы данных перед вставкой. Это позволяет им реализовать «прочитанное» без блокировок.

+0

Не могли бы вы более подробно рассказать о разных типах блокировок - читать, писать и выбирать? – EnTrERy