Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Bd_mu_lr_2014.docx
Скачиваний:
57
Добавлен:
02.04.2015
Размер:
934.25 Кб
Скачать
  1. Конфигурирование блокировок, отчеты о блокировках

Для конфигурирования блокировок используются директивы, позволяющие задать:

(i) тайм-аут установления блокировки — set lock_timeout <количество миллисекунд>, значение параметра находится в глобальной системной переменной @@lock_timeout;

(ii) максимальное количество блокировок — sp_configurelocks”, <количество>, если в качестве количества указан 0 — память распределяется автоматически; параметр, в том числе, оказывает влияние на решение о повышении уровня блокировки (http://msdn.microsoft.com/ru-ru/library/ms184286%28v=sql.105%29.aspx).

Для получения отчетов о блокировках используются директивы:

(i) sp_lock [ <процесс 1> [ , … ] ] — возвращает сведения о всех блокировках или блокировках для указанных процессов (сеансов работы) (http://msdn.microsoft.com/ru-ru/library/ms187749%28SQL.105%29.aspx);

(ii) sp_who [ <имя пользователя> ] — возвращает сведения о всех процессах или процессах указанного пользователя (http://msdn.microsoft.com/ru-ru/library/ms174313%28v=sql.105%29.aspx).

Альтернативными способами получения сведений о блокировках являются системные представления sys.dm_tran_locks (http://msdn.microsoft.com/ru-ru/library/ms190345%28v=sql.105%29.aspx), sys.syslockinfo (http://msdn.microsoft.com/ru-ru/library/ms189497(v=sql.105).aspx).

SQL-сервера поддерживают средства для предоставления отчетов о тупиках, это могут быть СХП, как например (http://infocenter.sybase.com/help/topic/com.sybase.infocenter.dc36273.1572/html/sprocs/X25628.htm) или отдельные приложения, например, SQL Server Profiler, входящий в состав MS SQL.

SQL Server Profiler позволяет отображать данные о тупиках, в том числе, в графическом виде. Запуск SQL Server Profiler — Пуск\Все программы\Microsoft SQL Server 2008\ Средства обеспечения производительности\SQL Server Profiler. Для выполнения трассировки — Файл\Создать трассировку…\Соединить, далее на вкладке Выбор событий установить флаг Показать все события, после чего выбрать раздел Locks, установить флаг Deadlock graph (другие установленные флаги можно сбросить) и нажать кнопку Запустить (http://msdn.microsoft.com/ru-ru/library/ms190465%28v=sql.105%29.aspx).

  1. Выполнение лабораторной работы

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

Смоделировать в БД тупик (взаимную блокировку), получить с помощью приложения SQL Server Profiler отчет о тупике, пояснить его содержание.

  1. Содержание отчета

Содержание отчета:

— скрипты транзакций;

— отчеты о блокировках и пояснения к ним;

— отчет о тупике, пояснения к нему.

  1. Варианты заданий

Варианты заданий приведены в ПРИЛОЖЕНИИ.

Лабораторная работа 11 — Организация репликация

  1. Репликация

Современные СУБД, в том числе SQL-сервера, позволили реализовать базовый принцип построения информационных систем «одно данное должно храниться в одном месте и изменяться один раз» за счет:

(i) интеграции в БД данных, необходимых всем пользователям приложений информационной системы предприятия;

(ii) обеспечения корректного многопользовательского доступа к данным, хранящимся в БД.

Вместе с тем, по мере увеличения масштабов информационных систем такое решение оказалось не всегда:

(i) удобным, из-за того что часть данных используется локально (в таких системах как отдел социальной защиты районной администрации—городской комитет—министерство или штаб-квартира транснациональной корпорации—представительство в стране—офисы в регионах не обязательно вся информация, вводимая на нижнем уровне, должна стекаться в центр);

(ii) возможным, из-за отсутствия постоянных высокоскоростных соединений между территориально удаленными офисами или офисом и мобильными пользователями.

Для решения таких задач были предложены механизмы репликации, которые реализуют автоматическую передачу данных между несколькими БД, осуществляя в том числе:

— горизонтальную (отбор подмножества строк таблиц);

— вертикальную (отбор подмножества столбцов таблиц);

— смешанную фрагментацию (сочетание горизонтальной и вертикальной).

В литературе различают гомогенные и гетерогенные распределенные БД (РБД). В гомогенных на всех узлах используется одна и та же СУБД и часто БД с тождественными структурами. В гетерогенных используются СУБД различных производителей, а БД могут иметь различные структуры.

Типовыми случаями, когда оказываются полезны механизмы репликации, являются (http://msdn.microsoft.com/ru-ru/library/ms151787%28v=sql.105%29.aspx) или (http://msdn.microsoft.com/ru-ru/library/ms152485%28v=sql.105%29.aspx) или (http://infocenter.sybase.com/help/topic/com.sybase.infocenter.dc32580.1571/doc/html/san1271105857839.html).

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]