Презентация «Транзакции и блокировки»

Смотреть слайды в полном размере
Презентация «Транзакции и блокировки»

Вы можете ознакомиться с презентацией онлайн, просмотреть текст и слайды к ней, а также, в случае, если она вам подходит - скачать файл для редактирования или печати. Документ содержит 17 слайдов и доступен в формате ppt. Размер файла: 171.00 KB

Просмотреть и скачать

Pic.1
Транзакции и блокировки Лекция №8
Транзакции и блокировки Лекция №8
Pic.2
Определение Транзакция представляет собой набор из одной или более команд, выполняемых как одно цело
Определение Транзакция представляет собой набор из одной или более команд, выполняемых как одно целое. Транзакция является единственной единицей работы. Если транзакция выполнена успешно, все …
Pic.3
Требования к выполнению транзакций (ACID) Атомарность (atomicity) – Все изменения данных в одной тра
Требования к выполнению транзакций (ACID) Атомарность (atomicity) – Все изменения данных в одной транзакции, рассматриваются как единый минимальный блок. Согласованность (consistency) – После того, …
Pic.4
Режимы транзакций в SQL Server Автоматическое определение транзакции (по умолчанию) Явное определени
Режимы транзакций в SQL Server Автоматическое определение транзакции (по умолчанию) Явное определение транзакции Неявное определение транзакции
Pic.5
Автоматическое определение транзакции При работе в этом режиме пользователь не должен указывать в яв
Автоматическое определение транзакции При работе в этом режиме пользователь не должен указывать в явном виде начало и конец транзакции. SET IMPLICIT_TRANSACTION OFF
Pic.6
Явное определение транзакции Необходимо явно указывать начало и конец транзакции. Команды для управл
Явное определение транзакции Необходимо явно указывать начало и конец транзакции. Команды для управления транзакциями: Begin tran – предназначена для обозначения начала транзакции. Синтаксис Save …
Pic.7
Пример begin tran insert into tmp_aa values ('1') save tran aaa insert into tmp_aa values
Пример begin tran insert into tmp_aa values ('1') save tran aaa insert into tmp_aa values ('2') rollback tran aaa select * from tmp_aa rollback tran select * from tmp_aa
Pic.8
Неявное определение транзакции Система автоматически начинает новую транзакцию после завершения пред
Неявное определение транзакции Система автоматически начинает новую транзакцию после завершения предыдущей транзакции. Автоматическое открытие транзакции при операциях: Alter table Create Delete Drop …
Pic.9
Вложенные транзакции Переменная @@trancount показывает текущую степень вложенности транзакции. Кажда
Вложенные транзакции Переменная @@trancount показывает текущую степень вложенности транзакции. Каждая инструкция BEGIN TRANSACTION увеличивает значение @@TRANCOUNT на один. Каждая инструкция COMMIT …
Pic.10
Основы блокировок Чтобы обеспечить выполнение требования изолированности, SQL Server использует меха
Основы блокировок Чтобы обеспечить выполнение требования изолированности, SQL Server использует механизм блокировок (locks). Блокировкой называется временное ограничение, накладываемое системой на …
Pic.11
Типы блокировок На отдельную строку таблицы (RID) Диапазон индекса (key) На страницы (page) На групп
Типы блокировок На отдельную строку таблицы (RID) Диапазон индекса (key) На страницы (page) На группы страниц (extent) На всю таблицу целиком (table) Блокировками управляет диспетчер блокировок Lock …
Pic.12
Мертвые блокировки Транзакция А создает общую блокировку строки 1. Транзакция Б создает общую блокир
Мертвые блокировки Транзакция А создает общую блокировку строки 1. Транзакция Б создает общую блокировку строки 2. Транзакция А теперь запрашивает монопольную блокировку строки 2 и блокируется до …
Pic.13
Механизмы блокирования Level 0. No trashing of data (запрещение загрязнения данных). Одни и те же да
Механизмы блокирования Level 0. No trashing of data (запрещение загрязнения данных). Одни и те же данные в каждый момент времени может изменять только одна транзакция. Если другая транзакция пытается …
Pic.14
Использование блокировок Основное назначение блокировок – обеспечение нормальной работы множества по
Использование блокировок Основное назначение блокировок – обеспечение нормальной работы множества пользователей с одними и теми же данными. Два типа конкуренции: Оптимистическая. При операциях чтения …
Pic.15
Уровни изолированности транзакций Уровни изоляции транзакций контролируют следующие параметры: Приме
Уровни изолированности транзакций Уровни изоляции транзакций контролируют следующие параметры: Применение и типы блокировки при чтении данных. Время удержания блокировок чтения. Использование …
Pic.16
Уровни изолированности транзакций READ UNCOMMITED - level0 READ COMMITED – level1 REPEATABLE READ –
Уровни изолированности транзакций READ UNCOMMITED - level0 READ COMMITED – level1 REPEATABLE READ – level2 SERIALIZABLE – level3 SNAPSHOT ISOLATION. Данные не блокируются. Поддерживаются версии …
Pic.17
Управление блокировками на уровне команд Можно управлять уровнем изоляции не только на уровне соедин
Управление блокировками на уровне команд Можно управлять уровнем изоляции не только на уровне соединения, но и на уровне запроса. Для этого в SQL Server используются специальные ключевые слова – …


Скачать презентацию

Если вам понравился сайт и размещенные на нем материалы, пожалуйста, не забывайте поделиться этой страничкой в социальных сетях и с друзьями! Спасибо!