Проверяемый текст
Гаврилов, Евгений Сергеевич. Модельно-алгоритмическая поддержка анализа транзакционной надежности в системах обработки информации и управления (Диссертация 2006)
[стр. 61]

Основная идея управления параллельными транзакциями на основе многоверсионности (multiversion concurrency control, MVCC) заключается в том, что в базе данных допускается существование нескольких «версий» одного и того же элемента данных, что позволяет улучшить ряд характеристик СУБД, наиболее важных для следующих категорий приложений.
Приложения, для которых требуется эффективное выполнение запросов, не изменяющих данные, например для Web-приложений.
Специфика такого рода систем в том, что в подавляющем большинстве транзакций осуществляется лишь выборка данных [6, 84].
Система должна минимизировать время ожидания результата пользователем.
Приложения, ориентированные на поддержку совместной работы.
В таких системах для многих пользователей требуется одновременное выполнение операций чтения и изменения одних и тех же данных.
В этом случае использование обычного двухфазного протокола синхронизации транзакций может привести к тому, что почти любое действие будет приводить к тупику.
Приложения реального времени, для которых требуется быстрый отклик и высокая степень параллельности.
В качестве примера такого приложения можно привести систему резервирования авиабилетов, в которой число параллельно выполняемых транзакций может быть весьма велико [29, 40, 57].
Типичная транзакция для такой системы проверяет наличие свободных мест на некоторый рейс.
Конфликт двух транзакций (в одной из которых изменяется количество свободных мест, а во второй выясняется, есть ли еще свободные места на рейс) не обязательно является серьезным.
Вместо блокировки данных о рейсе, которая может привести к длительному ожиданию со стороны оператора, можно позволить второй транзакции прочитать старую версию данных.
Это не вызовет ошибки, если только первая транзакция не обнуляет число свободных мест.

61
[стр. 131]

Основная идея управления параллельными транзакциями на основе многоверсионности (multiversion concurrency control, MVCC) заключается в том, что в базе данных допускается существование нескольких «версий» одного и того же элемента данных, что позволяет улучшить ряд характеристик СУБД, наиболее важных для следующих категорий приложений.
Приложения, для которых требуется эффективное выполнение запросов, не изменяющих данные, например для Web-приложений.
Специфика такого рода систем в том, что в подавляющем большинстве транзакций осуществляется лишь выборка данных [6, 84].
Система должна минимизировать время ожидания результата пользователем.
Приложения, ориентированные на поддержку совместной работы.
В таких системах для многих пользователей требуется одновременное выполнение операций чтения и изменения одних и тех же данных.
В этом случае использование обычного двухфазного протокола синхронизации транзакций может привести к тому, что почти любое действие будет приводить к тупику.
Приложения реального времени, для которых требуется быстрый отклик и высокая степень параллельности.
В качестве примера такого приложения можно привести систему резервирования авиабилетов, в которой число параллельно выполняемых транзакций может быть весьма велико [29, 40, 57].
Типичная транзакция для такой системы проверяет наличие свободных мест на некоторый рейс.
Конфликт двух транзакций (в одной из которых изменяется количество свободных мест, а во второй выясняется, есть ли еще свободные места на рейс) не обязательно является серьезным.
Вместо блокировки данных о рейсе, которая может привести к длительному ожиданию со стороны оператора, можно позволить второй транзакции прочитать старую версию данных.
Это не вызовет ошибки, если только первая транзакция не обнуляет число свободных мест.

[Back]