Тема_9 (1122360), страница 3

Файл №1122360 Тема_9 (Презентации лекций С.Д. Кузнецова PDF) 3 страницаТема_9 (1122360) страница 32019-05-10СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

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

Базы данных33УправлениОбщее понятие транзакции и основные характеристикитранзакций (28) Сериализация транзакций (1)Чтобы добиться изолированности транзакций, в СУБДдолжны использоваться какие-либо методы регулированиясовместного выполнения транзакцийПусть в системе одновременно выполняется некотороемножество транзакций S = {T1, T2, …, Tn}План (способ) выполнения набора транзакций S в котором, вообще говоря, чередуются или реальнопараллельно выполняются операции разных транзакцийназывается сериальным, если результат совместноговыполнения транзакций эквивалентен результату некоторогопоследовательного выполнения этих же транзакций (Ti1, Ti2,…, Tin)03.12.2009С.Д.Кузнецов.

Базы данных34УправлениОбщее понятие транзакции и основные характеристикитранзакций (29) Сериализация транзакций (2)Сериализация транзакций – это механизм их выполнения понекоторому сериальному плануОбеспечение такого механизма является основной функциейкомпонента СУБД, ответственного за управление транзакциямиСистема, в которой поддерживается сериализация транзакций,обеспечивает реальную изолированность пользователей.Основная реализационная проблема состоит в выборе методасериализации набора транзакций, который не слишкомограничивал бы чередование их операций или реальнуюпараллельностьПриходящим на ум тривиальным решением являетсядействительно последовательное выполнение транзакцийНо существуют ситуации, в которых можно выполнять операторыразных транзакций в любом порядке с сохранением свойствасериальностиПримерами могут служить только читающие транзакции, а такжетранзакции, не конфликтующие по объектам базы данных03.12.2009С.Д.Кузнецов. Базы данных35УправлениОбщее понятие транзакции и основные характеристикитранзакций (30) Сериализация транзакций (3)Между транзакциями T1 и T2 могут существоватьследующие виды конфликтов: W/W – транзакция T2 пытается изменять объект, измененныйне закончившейся транзакцией T1oR/W – транзакция T2 пытается изменять объект,прочитанный не закончившейся транзакцией T1oналичие такого конфликта может привести к возникновениюситуации неповторяющихся чтенийW/R – транзакция T2 пытается читать объект, измененный незакончившейся транзакцией T1oналичие такого конфликта может привести к возникновениюситуации потерянных измененийналичие такого конфликта может привести к возникновениюситуации «грязного» чтенияПрактические методы сериализации транзакцийосновываются на учете этих конфликтов03.12.2009С.Д.Кузнецов.

Базы данных36УправлениМетоды сериализации транзакций (1)Существуют два базовых подхода к сериализации транзакций:основанный на синхронизационных захватах объектов базыданных иоснованный на использовании временных меток.Суть обоих подходов состоит в обнаружении конфликтовтранзакций и их устраненииНиже мы рассмотрим эти подходы сравнительно подробноКроме того, кратко обсудим возможности использования версийобъектов базы данных для ускорения выполнения «толькочитающих» транзакций,т.е. транзакций, в которых не выполняются операции изменениябазы данных03.12.2009С.Д.Кузнецов. Базы данных37УправлениМетоды сериализации транзакций (2)Предварительно заметим, что для каждого из подходов имеютсядве разновидности:При применении пессимистических методов,пессимистическая иоптимистическая.ориентированных на ситуации, когда конфликты возникают часто,конфликты распознаются и разрешаются немедленно при ихвозникновенииОптимистические методы основываются на том, что результатывсех операций модификации базы данных сохраняются в рабочейпамяти транзакцийРеальная модификация базы данных производится только на стадиификсации транзакцииТогда же проверяется, не возникают ли конфликты с другимитранзакциями03.12.2009С.Д.Кузнецов.

Базы данных38УправлениМетоды сериализации транзакций (3)Далее мы ограничимся рассмотрениемболее распространенныхпессимистических разновидностейметодов сериализации транзакцийПессимистические методы сравнительнопросто трансформируются в своиоптимистические варианты03.12.2009С.Д.Кузнецов. Базы данных39УправлениМетоды сериализации транзакций (4)Синхронизационные блокировки (1)Наиболее распространенным в централизованных СУБДявляется подход, основанный на соблюдении двухфазногопротокола синхронизационных захватов объектов баз данныхвключающих системы, основанные на архитектуре«клиент-сервер»Two-Phase Locking Protocol, 2PLВ общих чертах подход состоит в том, что перед выполнениемлюбой операции в транзакции T над объектом базы данных o отимени транзакции T запрашивается синхронизационнаяблокировка объекта o в соответствующем режимев зависимости от вида операции03.12.2009С.Д.Кузнецов.

Базы данных40УправлениМетоды сериализации транзакций (5)Синхронизационные блокировки (2)Основными режимами синхронизационныхблокировок являются следующие:совместный режим – S (Shared)oозначающий совместную (по чтению) блокировкуобъекта и требуемый для выполнения операциичтения объектамонопольный режим – X (eXclusive)oозначающий монопольную (по записи) блокировкуобъекта и требуемый для выполнения операцийвставки, удаления и модификации объекта03.12.2009С.Д.Кузнецов. Базы данных41УправлениМетоды сериализации транзакций (6)Синхронизационные блокировки (3)Блокировки одних и тех же объектов по чтениюнесколькими транзакциями совместимы,т.е.

нескольким транзакциям допускаетсяодновременно читать один и тот же объектБлокировка объекта одной транзакцией почтению не совместима с блокировкой другойтранзакцией того же объекта по записи,т.е. никакой транзакции нельзяo изменять объект, читаемый некоторой транзакцией•кроме самой этой транзакции, иникакой транзакции нельзяo читать объект, изменяемый некоторой транзакцией•03.12.2009кроме самой этой транзакцииС.Д.Кузнецов.

Базы данных42УправлениМетоды сериализации транзакций (7)Синхронизационные блокировки (4)Блокировки одного и того же объекта позаписи разными транзакциями несовместимыт.е. никакой транзакции нельзя изменятьобъект, изменяемый некоторой транзакциейoкроме самой этой транзакции03.12.2009С.Д.Кузнецов. Базы данных43УправлениМетоды сериализации транзакций (8)Синхронизационные блокировки (5)Правила совместимостизахватов одного объектаразными транзакциямиприведены в таблицеВ первом столбце приведенывозможные состояния объектас точки зрения синхронизационных захватовПри этом "-" соответствует состоянию объекта, для которогоне установлен никакой захватТранзакция, запросившая синхронизационный захватобъекта БД, уже захваченный другой транзакцией внесовместимом режиме, блокируется до тех пор, пока захватс этого объекта не будет снят03.12.2009С.Д.Кузнецов.

Базы данных44УправлениМетоды сериализации транзакций (9)Синхронизационные блокировки (6)Заметим, что слово«нет»отсутствие совместимостиблокировокв этой таблице соответствует описанным ранеевозможным случаям конфликтов транзакций подоступу к объектам базы данных (W/W, R/W,W/R)Совместимость S-блокировок соответствуеттому, что конфликт R/R не существует03.12.2009С.Д.Кузнецов. Базы данных45УправлениМетоды сериализации транзакций(10)Синхронизационныеблокировки (7)Для обеспечения сериализации транзакцийтретьего уровня изолированностисинхронизационные блокировки объектов,произведенные по инициативе транзакции,можно снимать только при ее завершенииЭто требование порождает двухфазныйпротокол синхронизационных захватов – 2PLВ соответствии с этим протоколом выполнениетранзакции разбивается на две фазы:первая фаза транзакции (выполнение операций надбазой данных) – накопление блокировок;вторая фаза (фиксация или откат) – снятие блокировок03.12.2009С.Д.Кузнецов.

Базы данных46УправлениМетоды сериализации транзакций(11)Синхронизационныеблокировки (6)Достаточно легко убедиться, что при соблюдениидвухфазного протокола синхронизационных блокировокдействительно обеспечивается сериализация транзакций натретьем уровне изолированностиТакже легко видеть, что для обеспечения отсутствияпотерянных данных достаточно блокировать в режиме X изменяемые объекты базы данных и удерживать эти блокировки до конца транзакции,а для обеспечения отсутствия чтения «грязных» данныхдостаточно блокировать в режиме X изменяемые объекты до концатранзакции и блокировать в режиме S читаемые объекты на времявыполнения операции чтения03.12.2009С.Д.Кузнецов. Базы данных47УправлениМетоды сериализации транзакций(12)Синхронизационныеблокировки (7)Основная проблема состоит в том, что следует считатьобъектом для синхронизационного захвата?В контексте реляционных баз данных возможны следующиеальтернативы: файл (сегмент в терминах System R) – физический (с точкизрения базы данных) объект, область хранения несколькихтаблиц и, возможно, индексов таблица – логический объект, соответствующий множествукортежей данной таблицы страница данных – физический объект, хранящий кортежиодной или нескольких таблиц, индексную или служебнуюинформацию кортеж – элементарный физический объект базы данных03.12.2009С.Д.Кузнецов.

Базы данных48УправлениМетоды сериализации транзакций(13)Синхронизационныеблокировки (8)На самом деле, любая операция над объектомбазы данных фактически воздействует и наобъемлющие его объектыНапример, операция над кортежем является иоперациейв которой этот кортеж хранится, инад страницей,над соответствующей таблицей,и над файлом, содержащим таблицуПоэтому действительно имеется выбор уровняобъекта блокировки.03.12.2009С.Д.Кузнецов. Базы данных49УправлениМетоды сериализации транзакций(14)Синхронизационныеблокировки (9)Понятно, что для поддержки блокировоктребуются системные ресурсы, и что чемкрупнее объект синхронизационного захватаневажно, какой природы этот объект – логический илифизический,тем меньше синхронизационных блокировокбудет поддерживаться в системе, и на это,соответственно, будут тратиться меньшиенакладные расходыБолее того, если устанавливать блокировки науровне файлов или таблиц, то будет решенадаже проблема фантомов03.12.2009С.Д.Кузнецов.

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

Тип файла
PDF-файл
Размер
534,3 Kb
Тип материала
Предмет
Высшее учебное заведение

Список файлов лекций

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