К задачам концептуального этапа проектирования относятся
Задачи этапа:
a) Анализ информационных потребностей и концептуальных требований пользователей. Выявления имеющихся задач обработки информации которые должны быть представлены в новой БД.
b) Выявление информационных объектов и связей между ними.
c) Построение инфологической модели по и документирование результатов анализа.
К задачам логического этапа проектирования относятся
На данном этапе создается модель пригодная для реализации средствами какой-либо СУБД.
Существует большое разнообразие сложных типов данных, но из них можно выделить наиболее общие - модели данных
8. Целостность данных - это правильность данных в любой момент времени.
Типы ограничения целостности данных
Существует три типа ограничения целостности данных:
a) Ограничения на допустимые значения в наборе значений. Набор значений можно трактовать как область определения атрибутов, которая может быть задано непрерывным интервалом либо фиксированным списком значением.
|
|
b) Ограничение на разрешенные значения для каждого атрибута (возрастные ограничения)
c) Ограничения на существующие значения в БД (отчисление заработной платы не должны превышать самой заработной платы)
ER-диаграмма
Модель “сущность-связь” является инструментом предоставления данных, который не зависит от реализующего его программного обеспечения.
Значение данной модели - схематическое описание ПО и предоставление информации для обоснования выбора видов моделей и структур данных, которые в дальнейшем будут использоваться в системе.
11. Модели данных - это форматы данных состав операций выполняемых над ними.
12. Какие модели данных существуют?
Существует:
a) Иерархическая модель данных
b) Сетевая модель данных
c) Реляционная модель данных
Основные компоненты любой модели данных?
Любая модель содержит 3 основных компонента:
a) Структуры данных описывают точку зрения пользователя на представление данных.
b) Набор допустимых операций выполняемых на структуре данных.
c) Ограничение целостности - механизм поддержания соответствия данных ПО на основе формально описанных данных.
14. Кортеж – это строки отношения, отличные от той, которая представляет наименования атрибутов. Кортеж содержит по одному компоненту для каждого атрибута отношения. Если необходимо описать кортеж отдельно, вне контекста отношения, принято заключать его в круглые скобки и разделять компоненты символом запятой:
|
|
(«Бриллиантовая рука», 1982, 93, «Комедия»)
В этом случае, видимая связь кортежа с отношением теряется, и необходимо явно указывать к какому отношению относится, и перечислять порядок атрибутов.
В базах данных, кортежем называется группа взаимосвязанных элементов данных.
Кортеж, соответствующий данной схеме отношения, – это множество пар {имя атрибута, значение}, которое содержит одно вхождение каждого имени атрибута, принадлежащего схеме отношения. "Значение" является допустимым значением домена данного атрибута (или типа данных, если понятие домена не поддерживается).
Кортеж — конечное множество взаимосвязанных допустимых значений атрибутов, которые вместе описывают некоторую сущность (строка таблицы)
15. Понятия домена является понимание домена как допустимого потенциального множества значений данного типа.
Домен атрибута — множество допустимых значений, которые может принимать атрибут.
16. Отношение – это множество кортежей, соответствующих одной схеме отношения.
Отношение — конечное множество кортежей (таблица).
Операции обработки отношений реляционной алгебры?
В реляционной алгебре определены следующие операции обрабатывающие отношения:
Проекция - операция проекции представляет из себя выборку из каждого кортежа отношения, значений атрибутов входящих в список А и удаление из полученного отношения повторяющихся строк.
Выборка - на входе используется отношения результат новые отношения построенные на той же схеме и содержащая подмножество кортежей исходного отношения удовлетворяющие условию выборки.
Объединение - отношения в этом случае должны быть определены по одной именно на входе операции заданно. Отношения результат - отношения строения построенная по той же схеме новые отношения содержащая все кортежи первого и второго отношения.
Пересечение - на входе 2 отношения определенные по 1-ой схеме на выходе отношение содержащее кортежи, которые присутствуют в обоих исходных отношениях.
Разность - операция похожая на пересечении но в результирующем отношении содержатся кортежи которые присутствуют на первом, но отсутствует во вторых исходных отношениях.
Декартово произведение - выходные отношения могут быть определены по разным схемам. Схема результирующего отношения включает все атрибуты исходных кроме этого степень результирующего отношения равна сумме степеней исходных отношений. (степень отношения - это количество атрибутов) Мощность результирующего отношения равна произведению мощности исходных отношений (мощность отношения - это количество кортежей)
Соединение - данная операция имеет сходство декартовым произведение однако здесь добавлено условие согласно, которому вместо полного произведение всех строк в результирующее отношения включается только строки удовлетворяющие определенному соотношению между атрибутами соединения соответствующих отношений.
18. Операции над данными реляционной алгебры.
Операция обработки кортежей - данные операции связаны с изменением состава кортежей в каком-либо отношении (добавить, удалить редактировать)
Операции обработки отношений - на входе каждой такой операции используется 1 или несколько отношений, результатом выполнения операции всегда является новое отношение.
19. Нормализация отношений - это обратимым пошаговый процесс декомпозиции отношений на более мелкие с целью устранения нежелательных функциональных зависимостей (ФЗ).
20. Функциональная зависимость определяют связи между атрибутами информации. Функциональная зависимость распространяется на два и более атрибута если в любой момент времени каждому значению атрибута А соответствует не более чем одно значение атрибута В, то говорят, что В функционально зависит от A и А функцианально определяет В (А=>В) или нет.
|
|
Типы функциональная зависимость:
a) Полная функциональная зависимость
b) Транзитивная функциональная зависимость
21. Определение 1НФ, 2НФ, 3НФ
Определение 1НФа (через атрибуты): Отношение находится в 1НФ, если значения всех его атрибутов атомарны.
Определение 1НФк (через ключи): Отношение находится в 1НФ, если оно имеет ключ.
Утверждение: 1НФа Þ 1НФк.
В самом деле, кортежи в отношении не повторяются, а если еще атрибуты атомарны, то ключ в крайнем случае образуют все атрибуты, то есть ключ всегда существует.
Замечание: Обратное утверждение не верно.
Правила приведения к 1НФ
· Разделить составные атрибуты (у нас это “Дата зачисления или увольнения”) на простые (атомарные) (“Дата зачисления” и “Дата увольнения ”)
· Выделить “повторяющиеся” (однотипные, близкие) атрибуты (у нас это “Хобби” и “Тлф”)
· Для каждой такой группы атрибутов создать новую справочную сущность с одним атрибутом для повторяющейся группы
· Перенести в нее все значения повторяющихся атрибутов
· Установить идентифицирующую связь типа 1:N от исходной сущности к каждой созданной справочной сущности
Определение 2НФа (через атрибуты): Отношение в 1НФ находится в 2НФ, если ни один атрибут вне первичного ключа не находится в функциональной зависимости от части ключа.
Определение 2НФк (через ключи): Отношение в 1НФ находится в 2НФ, если каждый неключевой атрибут, находится в полной функциональной зависимости от ключа.
Замечание. Если единственный ключ отношения в 1НФ является простым (не конкатенированным), то отношение находится в 2НФ.
Правило приведения к 2НФ:
· Выделить неключевые атрибуты, зависящие от части первичного ключа. Иначе говоря, найти функциональную зависимость группы неключевых атрибутов от части атрибутов ключа.
· Создать новую сущность. В соответствии с теоремой Хиса все ее атрибуты входят в найденную выше функциональную зависимость.
|
|
· Вычеркнуть атрибуты-значения найденной функции в исходной сущности.
· Установить идентифицирующую связь 1:N или N:1 от исходной сущности к созданной сущности.
В примере существует зависимость атрибутов “Фамилия”, “Имя”, “Отчество”, “Должность” от атрибута “Таб_номер_рук”, являющегося частью первичного ключа
Определение транзитивной и прямой ФЗ: функциональная зависимость A®C называется транзитивной, если найдется атрибут B такой, что A®B, B®C функциональные зависимости. Если не существует транзитивной зависимости, то функциональная зависимость называется прямой.
Определение 3НФа (через атрибуты): отношение в 1НФ находится в 3НФ, если оно не содержит зависимостей неключевых атрибутов от других атрибутов, не принадлежащих первичному ключу.
Определение 3НФк (через ключи): отношение в 1НФ находится в 3НФ, если все его атрибуты прямо зависят от ключа.
Правило приведения к 3НФ
· Найти функциональную зависимость неключевых атрибутов от других неключевых атрибутов.
· Создать новую сущность. В соответствии с теоремой Хиса все ее атрибуты входят в найденную функциональную зависимость.
· Вычеркнуть атрибуты-значения найденной функции в исходной сущности.
· Установить неидентифицирующую связь от созданной сущности к исходной сущности