|
|
su.dbms- SU.DBMS ---------------------------------------------------------------------- From : Sergey Vlasov 2:5020/400 23 Dec 2002 21:45:17 To : Dmitry V. Liseev Subject : Re: Синхронизация дос тупа к БД -------------------------------------------------------------------------------- On Mon, 23 Dec 2002 17:20:17 +0000 (UTC) "Dmitry V. Liseev" <dimik@infopro.spb.su> wrote: > Предположим, некто пытается построить отчет > по данным, которые постоянно меняются. Тут > тоже применимо понятие целостности. То есть, > пока некто строит отчет, требуемые для него > данные можно читать (для других аналогичных > отчетов), но нельзя изменять. В многоверсионной архитектуре - можно. Транзакция в этом случае видит данные в том состоянии, в котором они были на момент ее начала (плюс свои изменения, если они были). В это как раз основной плюс многоверсионности - параллельно может выполняться любое число транзакций, только читающих данные, и они никак не мешают другим транзакциям модифицировать данные. > В противном случае отчет будет некорректным. Будет корректным, но будет отражать состояние на момент начала транзакции. > Hафига тогда уровни изоляции транзакций > и чем они могут помочь? Hапример, в PostgreSQL (версионник) поддерживаются уровни READ COMMITTED и SERIALIZABLE. При READ COMMITTED каждая отдельная команда видит завершенные транзакции на момент начала выполнения этой команды (т.е. в этом случае два последовательных одинаковых SELECT могут выдать разные результаты - вот как раз в этом случае "баланс не сведется", если для генерации отчета нужно выполнить более одного запроса). При SERIALIZABLE фактически делается снимок состояния на момент начала транзакции - это позволяет корректно обработать отчет, требующий более одного SELECT. Еще раз подчеркиваю, что даже при уровне SERIALIZABLE, если производится только чтение, такая транзакция никому не мешает (ни чтению, ни обновлениям из других транзакций). -- Отправлено через сервер Форумы@mail.ru - http://talk.mail.ru --- ifmail v.2.15dev5 * Origin: Talk.Mail.Ru (2:5020/400) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /su.dbms/106447113ccc7.html, оценка из 5, голосов 10
|