- •Трехуровневая архитектура субд. Внешний уровень. Концептуальный уровень. Внутренний уровень.
- •Функции субд. Восстановление данных. Поддержка языков бд
- •Функции субд. Управление параллельным доступом
- •Функции субд. Управление транзакциями.
- •Функции субд. Управление буферами оп
- •Функции субд. Управление данными во внешней памяти. Словарь данных.
- •Функции субд. Контроль доступа к данным. Поддержка целостности данных.
- •Жизненный цикл создания бд. Основные этапы.
- •Концептуальное проектирование. Модель «Сущность-связь». Основные понятия
- •Модели данных. Реляционная модель данных.Графическое изображение. Структурная часть рмд, Ключи, схема отношения, степень и мощность отношений.
- •Реляционная алгебра. Операции ра. Реляционное исчисление
- •Языки бд. Классификация операторов языка sql.
- •Последовательная нормализация. Избыточность данных, Аномалия обновления данных. 1нф, 2нф, 3нф.
- •Логическое проектирование бд. Правила преобразования км в рм для связи 1:1, 1:м, м:м.
- •Технологии использования бд. Функции приложения в архитектуре Клиент-Сервер.
- •Архитектура многопользовательских субд. Модели 2-уровневой архитектуры клиент –Сервер. Достоинства, недостатки.
- •Физическая организация данных. Технология хранения данных в субд. Технология доступа к бд (файловая, страничная)
- •Модель, свойства транзакций, обеспечение целостности данных с помощью транзакций. Управление транзакциями.
Функции субд. Управление параллельным доступом
Управление параллельным доступом. СУБД должна иметь механизм, который гарантирует корректное обновление баз данных при параллельном выполнении операций обновления многими пользователями. Сложности управления параллельным доступом возникают только в ситуациях, когда возникают коллизии, связанные с конкурентным обновлением данных в базе данных разными пользователями, с возможностью чтения одним пользователем данных, которые успел лишь частично обновить другой пользователь. Такие коллизии могут привести к нарушениям логической целостности базы данных. Для их предотвращения в СУБД предусматривается техника управления транзакциями. Средства обработки транзакций позволяют изолировать пользователей друг от друга так, что бы у каждого из них было ощущение монопольной работы с бд.
Проблемы:
-Пропавшие обновления(для избегания подобных ситуаций к СУБД по части синхронизации параллельно-выполняемых транзакций предъявляется минимальное требование – отсутствие потерянных изменений)
-Чтение грязных данных (несоответствие требованию изолированности пользователей(каждый пользователь начинает свою транзакцию при согласованном состоянии бд и вправе ожидать увидеть согласованные данные). Необходимо, что бы до завершения одной транзакции, изменившей некоторый объект, никакая другая транзакция не могла читать изменяемый объект.
-Чтение несогласованных данных
-Строки призраки
Под сериализацией параллельно выполняющихся транзакций понимается такой порядок планирования их работы, при котором суммарный эффект слияния транзакций эквивалентен эффекту их некоторого последовательного выполнения. В ходе выполнения транзакции пользователь видит только согласованные данные.
Функции субд. Управление транзакциями.
Управление транзакциями. Транзакцией называют последовательность операций над базой данных. СУБД должна иметь механизм, который гарантирует выполнение либо всех операций обновления данной транзакции, либо ни одной из них. Свойства транзакций:
-Атомарность(операции транзакции образуют неразделимый атомарный блок с определенным началом и концом. Этот блок либо выполняется от начала до конца, либо не выполняется вообще. Если произошел сбой в процессе выполнения транзакции, то происходит откат к исходному состоянию.
-Согласованность (по завершении транзакции все задействованные объекты находятся в согласованном состоянии)
-Изолированность(одномерный доступ транзакции различных приложений к разделяемым объектам координируется таким образом, что бы эти транзакции не влияли друг на друга)
-Долговременность(все изменения данных, осуществленные в процессе выполнения транзакции не могут быть потеряны)
Сериализация транзакций – механизм выполнения транзакций по такому плану, когда результат совместного выполнения транзакций эквивалентен результату некоторого последовательного выполнения, обеспечив изолированность.
Между транзакциями могут существовать виды конфликтов:
-Тр2 пытается изменить объект, с незаконченными изменениями Тр1(W-W)
-Тр2 пытается изменить объект, прочит. незаконч. Тр1(R-W)
-Тр2 пыт. читать объект, изменения которого незакончены Тр1(W_R)
Захват и освобождение объекта:
-Совместный режим S, означает разделяемый захват объекта, необходимый для выполненя операции чтения объекта
-Монопольный Х, означает монопольный захват объекта и необходим для выполнения операции записи, удаления, модификации.
-Двухфазный протокол – перед выполнением операции над объектом бд от имени транзакции запрещается захват объекта в соответствующем режиме, выполнение транзакции разбиваются на 2 фазы: накопление и освобождение.
