Главная » Просмотр файлов » Введение в системы БД

Введение в системы БД (542480), страница 149

Файл №542480 Введение в системы БД (Введение в системы БД) 149 страницаВведение в системы БД (542480) страница 1492015-08-16СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

Текст из файла (страница 149)

Все эти проблемы возникают из-за того, что график запуска не является упорядоченным, т.е. он не эквивалентен некоторому последовательному графику запуска этих же транзакций. Наиболее распространенным методом разрешения указанных проблем является использование механизма блокировки. Существует два основных типа блокнровок: разделяемая (Я-блокировка) н эксклюзивная (Х-блокировка).

Если транзакция устанавливает Б-блокировку для некоторого объекта, то другие транзакции также смогут установить Я-блокировку для этого же объекта, однако установить для него Х- блокировку им не удастся. Если одна транзакция устанавливает Х-блокировку для некоторого объекта, то никакая другая транзакция не сможет установить лля этого объекта никакой другой блокировки. Специальный протокол использования этих блокировок позволяет устранить упомянутую выше проблему утраты результатов обновления и другие возможные проблемы. В соответствии с данным протоколом Я- блокировка устанавливается дпя всех считываемых объектов, а Х-блокировка — для всех обновляемых объектов, причем все установленные блокировки сохраняются до окончания выполнения транзакции.

С помощью этого протокола можно обеспечить упорядоченность графика выполнения транзакций. Описанный протокол является более строгой (и более общей) формой протокола двухфазной блокировки. В теореме двухфазной блокировки утверждается, что если выполнение всех транзакций подчиняется этому протоколу, то любой из возможных графиков запуска будет упорядоченным. При построении такого графика запуска гарантируется, что если а и В являются двумя транзакциями данного графика, то либо транзакция й получит доступ к результатам выполнения транзакции й, либо транзакция В получит доступ к результатам выполнения транзакции а.

К сожалению, применение протокола двухфазной блокировки способно привести к возникновению ситуации взаимной блокировки. Для ее устранения следует выбрать одну из конфликтующих транзакций в качестве транзакции-жертвы и отменить ее с выполнением отката всех внесенных ею изменений.

В общем случае нельзя гарантировать безопасность выполнения набора транзакций, если используемый график не полностью упорядочен. Однако в некоторых системах для повышения их производительности и пропускной способности предусмотрена возможность чередующегося выполнения нескольких транзакций с некоторым установленным уровнем изоляции, что на самом деле является не совсем безопасным решением. В этой главе был описан один такой "небезопасный уровень", т.е. уровень стабильности курсора (с точки зрения терминологии, принятой в СУБД РВ2, хотя в стандарте языка ЗОЬ аналогичный уровень называется ИЕао СОИИ1ТТЕ0).

Далее вкратце было рассмотрено понятие степень детализации блокнровок и связанная с ним идея блокировки намерения. Предполагается, что перед установкой транзакцией блокировки определенного типа для некоторого элемента, например для кортежа базы данных, ей следует установить соответствующую блокировку 585 Глава 15. Параллвльноет ь намерения для "родительского" объекта этого элемента (в случае кортежа — для переменной-отношения, в которой кортеж содержится). На практике блокировки намерения обычно устанавливаются так же, как 5- и Х-блокировки кортежей, т.е. неявным образом. Однако рекомендуется предусмотреть оператор типа БОСЕ для явной установки (в случае необходимости) блокировок более сильных, чем те, которые устанавливаются системой неявно.

Наконец, в этой главе были кратко описаны средства управления параллельностью, предусмотренные в языке БО) . В стандарте языка БЯ). средства явной установки блокировки не предусмотрены вовсе, однако в нем поддерживаются различные уровни изоляции 1ЯЕК1АБ11АВЬЕ, КЕРЕАТАВЬЕ КЕАП, КЕЙП СОИИ1ТТЕП, КЕАП ОИСОИИ1ТТЕП), которые в СУБД обычно реализуются средствами неявного автоматического блокирования.

В заключение этой части книги следует сделать краткое замечание о важности ограничений целостности. Корректность базы данных в широком понимании означает то, что она не противоречит никаким известным ограничениям целостности. Отсюда понятно, что для системы без поддержки таких ограничений целостности не имеет смысла говорить о корректности ее базы данных.

В главе 14 уже шла речь о том, что восстановление означает возврат к предыдущему корректному состоянию, а в этой главе упоминалось о том, что параллельность (или, точнее, управление параллельностью) означает, что при использовании упорядоченного графика запуска база данных переводится каждой транзакцией из одного корректного состояния в другое корректное состояние.

Отсюда следует, что понятие целостности является более фундаментальным, чем понятие восстановления или параллельности. Действительно, понятие целостности имеет очень глубокий смысл даже в однопользовательской системе. Упражнения 15.1. Дайте определение понятия упарлдачиваемасти. 15.2. Дайте подробное описание: а) протокола двухфазной блокировки; б) теоремы двухфазной блокировки. 15.3. Пусть даны транзакции Т1, Т2 и ТЗ, которые выполняют следующие операции: Т1: добавить 1 к А; Т2: удвоить значение А; ТЗ: вывести значение А на экран, а затем поместить в А значение 1 (здесь А — некоторый объект базы данных). а) Допустим, что транзакции Т1, Т2 и ТЗ выполняются параллельно. Перечислите все возможные результаты нх выполнения, если начальное значение А равно нулю.

б) Допустим, что транзакции Т1, Т2 и ТЗ имеют показанную ниже внутреннюю структуру. 586 Часть |)л управление транзакйиями Сколько возможных графиков запуска существует, если эти транзакции выполняются без каких-либо блокировок? в) Существуют ли какие-либо чередующиеся графики запуска, которые для заданного начального значения А 1нуль) приводят к получению "корректного'* результата, но не допускают упорядочения? г) Существуют ли какие-либо графики запуска, которые действительно допускают упорядочение, но не могут быть реализованы, если все три транзакции подчиняются протоколу двухфазной блокировки? 15.4.

Ниже приведена последовательность выполнения различных событий в графике запуска с транзакциями Т1, Т2, ..., Т12 и объектами базы данных А, В, ..., Н. Время 80 Время 81 (Т1) : КЕТй1ЕЧЕ А ; Время 82 (Т2) : КЕТК1ЕЧЕ В (Т1) : КЕТВ1ЕЧЕ С (Т4) КЕТК1ЕЧЕ О (Т5) КЕТК1ЕЧЕ А; (Т2) КЕТК1ЕЧЕ Е (Т2) НРОАТЕ Е (ТЗ) : йЕТК1ЕЧЕ Р ; (Т2) : КЕТК1ЕЧЕ Р (Т5) ОРОАТЕ А; (Т1) : соиитт (Тб) ; КЕТК1ЕЧЕ А , (Т5) : йоььВАск ; (Тб) : КЕТК1ЕЧЕ С (Тб) с ОРОАТЕ С ) (Т7) : КЕТй1ЕЧЕ О (Т8) : КЕТК1ЕЧЕ Н (Т9) КЕТКТЕЧЕ 0 (Т9) ОРОАТЕ 0 (Т8) КЕТК1ЕЧЕ Е (Т7) : соиитт ; (Т9) КЕТК1ЕЧЕ Н (ТЗ) 1 КЕТКТЕЧЕ 6 ) (Т10) : КЕТК1ЕЧЕ А ; (Т9) : НРОАТЕ Н (Тб) СОИИХТ (Т11) : КЕТК1ЕЧЕ С ) Глава 15.

Параллельность 587 Время Ьп Предположим, что для выполнения оператора КЕТК1ЕЧЕ К (считать К) требуется (в случае успеха) установить Б-блокировку лля объекта К, а для выполнения операто- ра БРВАТЕ К (обновить К) требуется (в случае успеха) установить для объекта К Х- блокировку. Допустим, что все блокировки сохраняются до конца выполнения транзакции. Возникнет ли ситуация взаимной блокировки к моменту Ьп? Еще раз обратимся к проблемам параллельности, представленным на рис.

15.1- 15.5. 15.4. Что произойдет в каждом из этих случаев, если все транзакции будут вы- полняться на уровне изоляции "Повторяемость считывания", а не на уровне "Стабильность курсора"? Дайте формальные и неформальные определения пяти типам блокировок: Х, Б,!Х, 15.6 15, 5!Х. Сформулируйте понятие относительной силы блокировок и нарисуйте соответст- вующую диаграмму их приоритета. Сформулируйте определение протокола блокировки намерения, а также поясните основное назначение этого протокола. В стандарте языка БОЬ определяются три проблемы параллельности: некоррект- ное чтение, неповторяачое чтение и чтение фанточов.

Как онн соотносятся с тремя проблемами параллельности, описанными в начале этой главы (потери ре- зультатов обновления, зависимости от незафиксированных результатов и несогла- сованной обработки данных)? 15.7 15.8 15.9 15.10.Кратко опишите механизм реализации многовариантного протокола управления параллельностью, обсуждаемого в комментарии к (! 5.1). Список литературы В этом списке следовало бы также упомянуть работы (14.2], (!4.!О) и особенно (14.!2) из главы !4. Вауег К., Не!!ег М., Кейег А. Рага1!е1Вш апд Кесочегу )п ОагаЬазе 5уягешз l~ АСМ ТОПЯ. — )цпе, ! 980. — 5, № 2. Как уже говорилось в главе 14, новые прикладные области (например, проекти- рование и разработка программного и аппаратного обеспечения) часто выдвига- ют сложные требования к обработке данных, которые нельзя полностью удовле- творить с помошью классических схем управления выполнением транзакций, описанных в этой и предыдушей главах.

Характеристики

Тип файла
DJVU-файл
Размер
10,05 Mb
Тип материала
Предмет
Высшее учебное заведение

Список файлов книги

Свежие статьи
Популярно сейчас
А знаете ли Вы, что из года в год задания практически не меняются? Математика, преподаваемая в учебных заведениях, никак не менялась минимум 30 лет. Найдите нужный учебный материал на СтудИзбе!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
6384
Авторов
на СтудИзбе
308
Средний доход
с одного платного файла
Обучение Подробнее