Презентация, доклад на тему Управление транзакциями и блокироваками в СУБД MS SQL Server 2008

Содержание

Вопросы для повторенияПеречислите операторы языка SQL для определения структуры данных

Слайд 1Разработка и эксплуатация информационных систем
Тема занятия:

Многопользовательский доступ
к базам данных
Преподаватель БОУ

СПО ЧЭМК Игнатьева Татьяна Александровна
Разработка и эксплуатация информационных системТема занятия:Многопользовательский доступ к базам данныхПреподаватель БОУ СПО ЧЭМК Игнатьева Татьяна Александровна

Слайд 2Вопросы для повторения
Перечислите операторы языка SQL
для определения структуры данных

Вопросы для повторенияПеречислите операторы языка SQL для определения структуры данных

Слайд 3Вопросы для повторения
Перечислите операторы языка SQL,
предназначенные для манипулирования данными

Вопросы для повторенияПеречислите операторы языка SQL, предназначенные для манипулирования данными

Слайд 4Постановка задачи
Создать запросы на языке SQL

Изменить количество вакансий на 50 для

специальности с кодом 1


Изменить количество вакансий на 40 для специальности с кодом 1

Постановка задачиСоздать запросы на языке SQLИзменить количество вакансий на 50 для специальности с кодом 1 Изменить количество

Слайд 5Реализация запросов в СУБД MS SQL Server

Реализация запросов в СУБД MS SQL Server

Слайд 6Реализация запросов в СУБД MS SQL Server



Потерянные обновления

Реализация запросов в СУБД MS SQL ServerПотерянные обновления

Слайд 7Организация многопользовательского доступа к БД
Для исключения нарушения логической целостности данных при

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

Слайд 8Понятие транзакции
Транзакция — последовательность операций, выполняемая как целостная логическая единица работы.

Понятие транзакции		Транзакция — последовательность операций, выполняемая как целостная логическая единица работы.

Слайд 9Свойства транзакции
атомарность

Свойства транзакции  атомарность

Слайд 10Свойства транзакции
атомарность
согласовансть

Свойства транзакции  атомарность  согласовансть

Слайд 11Свойства транзакции
атомарность
согласованность
изоляция

Свойства транзакции  атомарность  согласованность  изоляция

Слайд 12Свойства транзакции
атомарность
согласованность
изоляция
устойчивость

Свойства транзакции  атомарность  согласованность  изоляция  устойчивость

Слайд 13Транзакции и блокировки
Транзакции накладывают блокировки на данные, чтобы обеспечить выполнение свойственных

требований.
Блокировка — временное ограничение на выполнение некоторых операций обработки данных.

Транзакции и блокировки		Транзакции накладывают блокировки на данные, чтобы обеспечить выполнение свойственных требований. 		Блокировка — временное ограничение на

Слайд 14Решение «потерянных обновлений»
update специальности
set Вакансий=50
where код_специальности=1

waitfor delay '00:00:05'

select *

from специальности
where код_специальности=1

update специальности
set Вакансий=40
where код_специальности=1

select * from специальности
where код_специальности=1

begin tran

begin tran

commit tran

commit tran

Решение «потерянных обновлений»update специальности set Вакансий=50 where код_специальности=1waitfor delay '00:00:05'select * from специальностиwhere код_специальности=1update специальности set Вакансий=40

Слайд 15Исследование взаимовлияния транзакций
При одновременном выполнении двух транзакций, обращающихся к одним и

тем же данным, могут возникать следующие проблемные ситуации:
«грязное чтение» — возникает в том случае, когда первая транзакция читает данные, которые обновила, но еще не зафиксировала вторая транзакция.
Исследование взаимовлияния транзакций		При одновременном выполнении двух транзакций, обращающихся к одним и тем же данным, могут возникать следующие

Слайд 16Пример «грязного чтения»



Пример «грязного чтения»

Слайд 17
Пример «грязного чтения»

Пример «грязного чтения»

Слайд 18Исследование взаимовлияния транзакций
«неповторяемое чтение» — возникает, когда первая транзакция несколько раз

обращается к одним и тем же данным, однако данные меняются вследствие того, что между обращениями вторая транзакция обновляет данные и фиксирует.
Исследование взаимовлияния транзакций«неповторяемое чтение» — возникает, когда первая транзакция несколько раз обращается к одним и тем же

Слайд 19Пример «неповторяемого чтения»


Пример «неповторяемого чтения»

Слайд 20Исследование взаимовлияния транзакций
«чтение фантомов» — появляется в том случае, когда записи

из диапазона записей, читаемого в первой транзакции, добавляются или удаляются второй транзакцией.
Исследование взаимовлияния транзакций«чтение фантомов» — появляется в том случае, когда записи из диапазона записей, читаемого в первой

Слайд 21Управление взаимодействиями транзакций
Для управления взаимодействия транзакций между собой используется установка уровня

изоляции транзакции.
Уровень изоляции транзакции определяет, какие блокировки накладываются на данные.
Для изменения уровня изоляции транзакции используется оператор SET TRANSACTION ISOLATION LEVEL.

Синтаксис: SET TRANSACTION ISOLATION LEVEL
{уровень изоляции}


Управление взаимодействиями транзакций		Для управления взаимодействия транзакций между собой используется установка уровня изоляции транзакции. 		Уровень изоляции транзакции определяет,

Слайд 22Уровни изоляции транзакции
READ UNCOMMITTED (неподтвержденное чтение) — транзакция с этим уровнем

изоляции может читать записи, которые были изменены, но еще не зафиксированы другой транзакцией.
READ COMMITTED (подтвержденное чтение) — транзакция с этим уровнем изоляции может читать только те записи, которые были изменены и уже зафиксированы другой транзакцией.
Уровни изоляции транзакцииREAD UNCOMMITTED (неподтвержденное чтение) — транзакция с этим уровнем изоляции может читать записи, которые были

Слайд 23Уровни изоляции транзакции
REPEATABLE READ (повторяемое чтение) — транзакция с этим уровнем

изоляции может читать только те записи, которые были изменены и уже зафиксированы другой транзакцией, и никакая другая транзакция не может изменить записи, которые были прочитаны в рамках этой транзакции.
SERIALIZABLE (упорядочение) — транзакция с этим уровнем изоляции может читать только те записи, которые были изменены и уже зафиксированы другой транзакцией; никакая другая транзакция не может изменить записи, которые были прочитаны в рамках этой транзакции и никакая другая транзакция не может добавить или удалить записи из диапазона записей, прочитанного в рамках этой транзакции.
Уровни изоляции транзакцииREPEATABLE READ (повторяемое чтение) — транзакция с этим уровнем изоляции может читать только те записи,

Слайд 24Уровни изоляции транзакции
Уровень изоляции определяет, может ли транзакция считывать результаты работы

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

Слайд 25Решение проблемной ситуации «грязное чтение»

begin tran

update абитуриенты
set статус='зачислен'


where код_абитуриента=2
waitfor delay '00:00:05'

rollback tran

set transaction isolation level

select count(код_абитуриента)
from абитуриенты
where статус='зачислен'

read committed



Решение проблемной ситуации «грязное чтение»		begin tranupdate абитуриенты   set статус='зачислен'   where код_абитуриента=2waitfor delay '00:00:05'rollback

Слайд 26Решение «неповторяемого чтения»

Решение «неповторяемого чтения»

Слайд 27Влияние уровней изоляции на транзакции
снижается степень
параллельности работы
повышается
согласованность данных
При повышении

уровня изоляции



Влияние уровней изоляции на транзакцииснижается степень параллельности работыповышается согласованность данныхПри повышении уровня изоляции

Слайд 28Литература
1) Шрайнер П. A., Котельников И. A. Распределенные информационные системы и

базы данных. Режим доступа: http://msdn.microsoft.com
2) Уровни изоляции и несогласованность данных. Всё об MS SQL Server 2008R2/2012 на русском. Режим доступа: www.T-SQL.ru.
3) Грязное чтение и несогласованные данные. Всё об MS SQL Server 2008R2/2012 на русском. Режим доступа: www.T-SQL.ru
4) Д.Э.Фуфаев, Э.В.Фуфаев. Разработка и эксплуатация автоматизированных информационных систем: учебник. - М.: Издательский центр «Академия», 2010.
Литература1) Шрайнер П. A., Котельников И. A. Распределенные информационные системы и базы данных. Режим доступа: http://msdn.microsoft.com2) Уровни

Что такое shareslide.ru?

Это сайт презентаций, где можно хранить и обмениваться своими презентациями, докладами, проектами, шаблонами в формате PowerPoint с другими пользователями. Мы помогаем школьникам, студентам, учителям, преподавателям хранить и обмениваться учебными материалами.


Для правообладателей

Яндекс.Метрика

Обратная связь

Email: Нажмите что бы посмотреть