![]() Заглавная страница Избранные статьи Случайная статья Познавательные статьи Новые добавления Обратная связь FAQ Написать работу КАТЕГОРИИ: ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ТОП 10 на сайте Приготовление дезинфицирующих растворов различной концентрацииТехника нижней прямой подачи мяча. Франко-прусская война (причины и последствия) Организация работы процедурного кабинета Смысловое и механическое запоминание, их место и роль в усвоении знаний Коммуникативные барьеры и пути их преодоления Обработка изделий медицинского назначения многократного применения Образцы текста публицистического стиля Четыре типа изменения баланса Задачи с ответами для Всероссийской олимпиады по праву ![]() Мы поможем в написании ваших работ! ЗНАЕТЕ ЛИ ВЫ?
Влияние общества на человека
Приготовление дезинфицирующих растворов различной концентрации Практические работы по географии для 6 класса Организация работы процедурного кабинета Изменения в неживой природе осенью Уборка процедурного кабинета Сольфеджио. Все правила по сольфеджио Балочные системы. Определение реакций опор и моментов защемления |
Введение в основы теории функциональных зависимостей.Содержание книги
Поиск на нашем сайте
Пусть R – реляционное (конечное) отношение с атрибутами A = (X1,...Y1,...Z1,...). X,Y Í A. R удовлетворяет функциональной зависимости X®Y: проекция [X,Y](R) является функциональным отношением типа X®Y, т.е. не содержит пары строк с одинаковыми значениями атрибутов X («аргумент функции»), но разными значениями атрибутов Y («значение функции»). Будем использовать также терминологию: f-зависимость, Y функционально (однозначно) зависит от X, X функционально (однозначно) определяет Y, X – посылка (детерминант) f-зависимости, Y – заключение. Пусть F – множество f-зависимостей. F ÷= X®Y (F влечет f-зависимость X®Y): для любого R, если R удовлетворяет каждой f-зависимости из F, то R удовлетворяет f-зависимости X®Y. F* - (соответствующее) замыкание F, т.е. множество всех f-зависимостей X®Y, таких что F влечет f-зависимость X®Y. Аксиомы Армстронга (точнее, исчисление выводимости для f-зависимостей). F1. Рефлексивность (аксиома): X®X F2. Пополнение (правило вывода): X®Y XZ®Y F6. Псевдотранзитивность (правило вывода): X®Y YZ®W XZ®W Производные правила вывода (их обоснование можно получить из предыдущих): F3. Аддитивность: X®Y X®Z X®YZ F4. Проективность: X®YZ X®Y F5. Транзитивность (~ F6 при пустом Z): X®Y Y®W X®W F ÷- X®Y (из F выводима f-зависимость X®Y): имеется вывод X®Y из набора зависимостей F (как аксиом) и аксиом рефлексивности по правилам вывода Армстронга. Теорема о полноте. F ÷= X®Y Û F ÷- X®Y Таким образом, F* - транзитивное замыкание F, построенные по отношению «влечет» и по отношению «выводимости», совпадают. NB. Доказуемость в исчислении выводимости для f-зависимостей равносильна доказуемости в &É - фрагменте интуиционистской (конструктивной) логики высказываний.
Как уже отмечалось выше, взаимосвязи между данными отражают семантику базы данных, унаследованную от предметной области. Фактически для проектировщика и администратора БД основной интерес представляют не конкретные взаимосвязи между конкретными данными конкретного текущего состояния БД, а именно зависимости между атрибутами, причем те, которые должны сохраняться, по крайней мере в периоде между реструктуризациями БД (изменениями в метаданных).
Поэтому точнее, семантику БД фиксирует именно F, множество зависимостей, которое определяется не по конкретному текущему наполнению конкретной БД, а (априорно) определяется проектировщиком БД, исходя из смысла предметной области («что, будем считать, должно сохранятся в процессе преобразований БД»). Однако базовые зависимости F влекут свои последствия, из чего проистекает практический интерес к F* и далее к понятиям «выводимость и сложность вывода». Может возникнуть недоумение – база данных состоит из нескольких взаимосвязанных таблиц, а все вышеприведенные определения даны применительно к одному отношению R. Поэтому напомним, что выше было оговорено, что многотабличная реляционная БД теоретически сводима к однотабличной, а практически... приведенные определения чисто технически обобщаются и на многотабличные БД. X – возможный ключ отношения R: X является уникальным ключом (но возможно не выделенным в качестве первичного ключа). Неключевой атрибут – атрибут, не входящий в состав ни одного из возможных ключей. R находится во второй нормальной форме: R находится в первой нормальной форме, и нет неключевых атрибутов, зависящих от части какого-либо (составного) возможного ключа. Пусть (X,Y) – возможный ключ отношения R, но поля B1,... зависят от X (части возможного ключа), т.е. X®B1,... Тогда R = [X,B1,...](R) * [X,Y,C1,...](R), где C1,... – остальные атрибуты отношения R. Это разложение отношения R на два отношения [X,B1,...](R) и [X,Y,C1,...](R) устраняет (внутритабличную) зависимость X®B1,... от части ключа. Причем естественное соединение этих двух отношений точно совпадает с исходным отношением. Такое разложение называется декомпозицией без потерь.
Для этой таблицы нетрудно привести (аналогичные ранее приведенным) примеры аномалий. Рекомендованная декомпозиция (без потерь) дает две таблицы:
Z транзитивно зависит от X (в отношении R): имеется такой Y, что X®Y и Y®Z, где X¹Y¹Z и не верно: Y®X. R находится в третьей нормальной форме: R находится во второй нормальной форме, и нет неключевых атрибутов, транзитивно зависящих от какого-либо возможного ключа.
Пусть X – возможный ключ отношения R, X®Y и Y®Z (т.е. Z транзитивно зависит от X), W – остальные атрибуты отношения R. Тогда R = [Y,Z](R) * [X,Y,W](R). Это разложение отношения R на два отношения [Y,Z](R) и [X,Y,W](R) устраняет (внутритабличную) транзитивную зависимость X®Z. Причем декомпозицией без потерь.
Для этой таблицы нетрудно привести (аналогичные ранее приведенным) примеры аномалий. Рекомендованная декомпозиция (без потерь) дает две таблицы:
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Последнее изменение этой страницы: 2016-06-23; просмотров: 209; Нарушение авторского права страницы; Мы поможем в написании вашей работы! infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 18.227.134.162 (0.01 с.) |