- •Вопрос 1: «Основные виды моделей хранения информации»
- •2: «Реляционная модель. Основные понятия и термины»
- •3 «Необходимость нормализации бд. Аномалии, причиной которых является использование единственного отношения»
- •4: «Первая и вторая нормальные формы»
- •5: «Третья нормальная форма»
- •6: «Нормальная форма Бойса-Кодда»
- •8: «Неизбыточное, кольцевое, минимальные покрытия»
- •9: «Метод декомпозиции. Алгоритм метода»
- •10: «Метод "сущность-связь" основные термины и понятия. Графическое представление. Нотация Чена»
- •11: «Генерация отношений при степени связи 1:1»
- •12: «Генерация отношений при степени связи 1:n и m:n»
- •13: «Необходимость применения множественных связей и генерация отношений при данном типе связей»
- •14: «Применение ролевого метода при проектировании реляционных баз данных»
- •15: «Стандарт sql»
- •16: «Организация средствами sql запроса с подзапросами»
- •17: «Бинарные операции реляционной алгебры»
- •18: «Унарные операции реляционной алгебры»
- •19: «Метод "сущность-связь" основные термины и понятия. Графическое представление. Нотация Баркера»
- •21.Транзакции, сериализация транзакций.
- •Понятия первичного и внешнего ключа.
- •23Понятие функциональной зависимости (фз), полной фз, транзитивной фз.
- •20 Метод синтеза
21.Транзакции, сериализация транзакций.
Транзакцией называют неделимую с позиции воздействия на БД последовательность операций манипулирования данными. Транзакция может состоять из операций чтения, удаления, вставки, модификации данных. Транзакция обладает четырьмя основными свойствами:
Атомарности
Согласованности
Изолированности
Долговечности
Сериализация транзакций
Понятно, что для того, чтобы добиться изолированности транзакций, в СУБД должны использоваться какие-либо методы регулирования совместного выполнения транзакций.
План (способ) выполнения набора транзакций называется сериальным, если результат совместного выполнения транзакций эквивалентен результату некоторого последовательного выполнения этих же транзакций.
Сериализация транзакций - это механизм их выполнения по некоторому сериальному плану. Обеспечение такого механизма является основной функцией компонента СУБД, ответственного за управление транзакциями. Система, в которой поддерживается сериализация транзакций обеспечивает реальную изолированность пользователей.
Основная реализационная проблема состоит в выборе метода сериализации набора транзакций, который не слишком ограничивал бы их параллельность. Приходящим на ум тривиальным решением является действительно последовательное выполнение транзакций. Но существуют ситуации, в которых можно выполнять операторы разных транзакций в любом порядке с сохранением сериальности. Примерами могут служить только читающие транзакции, а также транзакции, не конфликтующие по объектам базы данных.
Между транзакциями могут существовать следующие виды конфликтов:
W-W - транзакция 2 пытается изменять объект, измененный не закончившейся транзакцией 1;
R-W - транзакция 2 пытается изменять объект, прочитанный не закончившейся транзакцией 1;
W-R - транзакция 2 пытается читать объект, измененный не закончившейся транзакцией 1.
Практические методы сериализации транзакций основывается на учете этих конфликтов.
Понятия первичного и внешнего ключа.
Первичным ключом называют атрибут или набор атрибутов отношения зн-ия которого однозначны идентифицируют каждый кортеж отношения РК
если РК состоит из одного атрибута, то он называется простым, из нескольких – составной или сложный
Возможный ключ – это набор атрибутов или атрибут, который может выступать в роли РК у одного отношения может быть несколько ВК и задачей проектировщика является правильный выбор РК
Внешний ключ – множество атрибутов, которые являются первичным ключом в другом отношении. Отношение, которое содержит внешний ключ, называется ссылающимся, а отношение, которое содержит соответствующий первичный ключ, называется ссылочным.
23Понятие функциональной зависимости (фз), полной фз, транзитивной фз.
Наиболее важные на практике нормальные формы отношений основываются на фундаментальном в теории реляционных баз данных понятии функциональной зависимости. Для дальнейшего изложения нам потребуются несколько определений.
Определение 1. Функциональная зависимость
В отношении R атрибут Y функционально зависит от атрибута X (X и Y могут быть составными) в том и только в том случае, если каждому значению X соответствует в точности одно значение Y: R.X (r) R.Y.
Определение 2. Полная функциональная зависимость
Функциональная зависимость R.X (r) R.Y называется полной, если атрибут Y не зависит функционально от любого точного подмножества X.
Определение 3. Транзитивная функциональная зависимость
Функциональная зависимость R.X -> R.Y называется транзитивной, если существует такой атрибут Z, что имеются функциональные зависимости R.X -> R.Z и R.Z -> R.Y и отсутствует функциональная зависимость R.Z --> R.X. (При отсутствии последнего требования мы имели бы "неинтересные" транзитивные зависимости в любом отношении, обладающем несколькими ключами.)
Определение 4. Неключевой атрибут
Неключевым атрибутом называется любой атрибут отношения, не входящий в состав первичного ключа (в частности, первичного).
Определение 5. Взаимно независимые атрибуты
Два или более атрибута взаимно независимы, если ни один из этих атрибутов не является функционально зависимым от других.