Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Шпоры по БД.doc
Скачиваний:
11
Добавлен:
23.11.2019
Размер:
250.37 Кб
Скачать
  1. Модели данных субд: постреляционная модель.

Постреляционная модель данных представляет собой расширенную реляционную модель, в которой отменено требование атомарности атрибутов. Поэтому постреляционную модель называют "не первой нормальной формой" (NF2) или "многомерной базой данных". Она использует трехмерные структуры, позволяя хранить в полях таблицы другие таблицы. Тем самым расширяются возможности по описанию сложных объектов реального мира. В качестве языка запросов используется несколько расширенный SQL, позволяющий извлекать сложные объекты из одной таблицы без операций соединения.

Существует несколько коммерческих постреляционных СУБД. Cамыми известными из них являются системы Adabas, Pick и Universe.

Также на сегодняшний день существуют следующие модели данных:

  • объектно-реляционная (Oracle),

  • объектно-ориентированная (POET, Jasmine, Versant, Q2, Iris, Orion, Postgres),

  • многомерная (поддерживают современные промышленные СУБД, в т.ч. MS SQL Server, Oracle),

  • документно-ориентированная (IBM Lotus Domino).

  1. Инфологическая модель «Сущность-связь»: сущность, связь, типы связей, атрибут, уникальный идентификатор, полная и неполная идентификация, возможный ключ сущности.

Сущность (Entity) – реальный либо воображаемый объект, имеющий существенное значение для рассматриваемой предметной области, информация о котором подлежит хранению

Связь (Relationship) – поименованная ассоциация между двумя сущностями, значимая для рассматриваемой предметной области.

Атрибут – любая характеристика сущности, значимая для рассматриваемой предметной области и предназначенная для идентификации, количественной характеристики или выражения состояния сущности

Уникальный идентификатор это атрибут или совокупность атрибутов и/или связей, предназначенная для уникальной идентификации каждого экземпляра данного типа сущности.

В случае полной идентификации каждый экземпляр данного типа сущности полностью идентифицируется своими собственными ключевыми атрибутами, в случае неполной идентификации в его идентификации участвуют также атрибуты другой сущности-родителя (рис. 6).

Возможный ключ сущности – это один или несколько атрибутов, чьи значения однозначно определяют каждый экземпляр сущности.

  1. Методология проектирования idef1x: зависимые и независимые сущности, степень связи, типы связи, внешние ключи, правила построения диаграмм

Сущность в методологии IDEF1X является независимой от идентификаторов или просто независимой, если каждый экземпляр сущности может быть однозначно идентифицирован без определения его отношений с другими сущностями

Сущность называется зависимой от идентификаторов или просто зависимой, если однозначная идентификация экземпляра сущности зависит от его отношения к другой сущности (рис. 12).

В IDEF1X могут быть выражены следующие мощности связей:

  • каждый экземпляр сущности-родителя может иметь ноль, один или более связанных с ним экземпляров сущности-потомка;

  • каждый экземпляр сущности-родителя должен иметь не менее одного связанного с ним экземпляра сущности-потомка;

  • каждый экземпляр сущности-родителя должен иметь не более одного связанного с ним экземпляра сущности-потомка;

  • каждый экземпляр сущности-родителя связан с некоторым фиксированным числом экземпляров сущности-потомка.

Связь называется идентифицирующей, если экземпляр сущности-потомка однозначно определяется своей связью с сущностью-родителем, и неидентифицирующей в противном случае.

Сущности могут иметь также внешние ключи (Foreign Key), которые могут использоваться в качестве части или целого первичного ключа или неключевого атрибута. Внешний ключ изображается с помощью помещения внутрь блока сущности имен атрибутов, после которых следуют буквы FK в скобках (рис. 17).

ER-диаграмма должна подчиняться следующим правилам:

  • каждая сущность, каждый атрибут и каждая связь должны иметь имя;

  • имя сущности должно быть уникально в рамках модели данных;

  • имя атрибута должно быть уникально в рамках сущности;

  • имя связи должно быть уникально, если для нее генерируется таблица БД;

  • каждый атрибут должен иметь определение типа данных.

  1. Реляционная модель данных: понятия «отношение», «домен», «кортеж», «атрибут», «схема отношения», «реляционная база данных», «степень отношения», «мощность отношения», «возможный ключ», «первичный ключ», «альтернативный ключ», «внешний ключ».

Отношение – подмножество декартова произведения одного или более доменов. Домен – множество возможных значений конкретного атрибута. Атрибут – свойство объекта, явления или процесса. Примеры атрибутов: фамилия, имя, отчество, дата рождения. Кортеж – элемент отношения, это отображение имен атрибутов в значения, взятые из соответствующих доменов

Поименованный список имен атрибутов отношения называют схемой отношения. Пример схемы:

Детали (Номер детали, Название детали, Вид обработки, Вес).

Ключевой атрибут в схеме отношения подчеркивают.

Совокупность схем отношений, используемых для представления информации, называется схемой реляционной базы данных.

Число столбцов в отношении называют степенью отношения

Текущее число кортежей в отношении называют мощностью.

Реляционная база данных – это совокупность отношений, содержащих всю информацию, которая должна храниться в базе данных.

Один из возможных ключей (выбранный произвольным образом) принимается за его первичный ключ. Остальные возможные ключи, если они есть, называются альтернативными ключами.

  1. Реляционная модель данных: классы отношений, типы связей между отношениями.

Отношения реляционной базы данных в зависимости от содержания подразделяются на два класса: объектные отношения и связные отношения.

Объектные отношения хранят данные о группе однородных объектов, явлений или процессов, имеющих однотипные характеристики.

Связное отношение хранит данные о связях между объектными отношениями.

Связь «один-ко-многим» означает, что одной записи в родительской таблице может соответствовать ноль, одна или более записей в дочерней таблице.

Связь «один-к-одному» имеет место, когда одной записи в родительской таблице соответствует ноль или одна запись в дочерней таблице

Третий вид связи — связь «многие-ко-многим». Данный вид связи означает, что несколько записей одной таблицы связаны с несколькими записями другой таблицы и наоборот

  1. Манипулирование реляционными данными: базовые теоретико-множественные операции реляционной алгебры (объединение, разность, пересечение, произведение).

Объединением двух совместимых отношений R1 и R2 одинаковой размерности (Rl U R2) является отношение R3, содержащее все элементы исходных отношений, повторяющиеся кортежи при этом исключаются.

Пересечением двух совместимых отношений R1 и R2 одинаковой размерности (R1 ∩ R2) называется отношение R3, содержащее множество кортежей, принадлежащих одновременно и первому и второму отношениям.

Разностью двух совместимых называется R1 и R2 одинаковой размерности (R1 \ R2) называется отношение, содержащее множество кортежей, принадлежащих R1 и не принадлежащих R2.

Четвертой теоретико-множественной операцией является расширенное декартово произведение. Эта операция не накладывает никаких дополнительных условий на схемы исходных отношений, поэтому операция расширенного декартова произведения, обозначаемая Rl R2, допустима для любых двух отношений

  1. Манипулирование реляционными данными: специальные операции реляционной алгебры (селекция, проекция, соединение).

Селекция (выбор) – это операция создания нового отношения, включающего те кортежи исходного отношения, для которых истинно условие выбора или фильтрации.

Проекцией отношения R на набор атрибутов В, обозначаемой R[B], называется отношение со схемой, соответствующей набору атрибутов В SR[B] = В, содержащему кортежи, получаемые из кортежей исходного отношения R путем удаления из них значений, не принадлежащих атрибутам из набора В. Все дублирующие кортежи удаляются из результирующего отношения.

Тогда соединением отношений R и Q при условии β будет подмножество декартова произведения отношений R и Q, кортежи которого удовлетворяют условию β. Соединение обозначают следующим образом: R [β] Q.

  1. Реляционная модель данных: аномалии обновления, нормализация, первая нормальная форма.

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

Т.к. аномалии проявляют себя при выполнении операций, изменяющих состояние базы данных, то различают следующие виды аномалий:

  • аномалии вставки (INSERT),

  • аномалии обновления (UPDATE),

  • аномалии удаления (DELETE).

Первая нормальная форма (1НФ) – это обычное отношение. Свойства отношений (это и будут свойства 1НФ):

  • В отношении нет одинаковых кортежей.

  • Кортежи не упорядочены.

  • Атрибуты не упорядочены и различаются по наименованию.

  • Все значения атрибутов атомарны.

  1. Реляционная модель данных: функциональные зависимости, вторая нормальная форма.

Функциональная зависимость атрибутов отношения напоминает понятие функциональной зависимости в математике. Но это не одно и то же. Для сравнения напомним математическое понятие функциональной зависимости.

Функциональная зависимость (функция) - это тройка объектов , где

- множество (область определения),

- множество (множество значений),

- правило, согласно которому каждому элементу ставится в соответствие один и только один элемент (правило функциональной зависимости).

Функциональная зависимость обычно обозначается как или .

Отношение находится во второй нормальной форме (2НФ) тогда и только тогда, когда отношение находится в 1НФ и нет неключевых атрибутов, зависящих от части сложного ключа (неключевой атрибут это атрибут, не входящий в состав никакого потенциального ключа).

  1. Реляционная модель данных: третья нормальная форма, алгоритм нормализации.

Отношение R находится в третьей нормальной форме (3НФ) тогда и только тогда, когда отношение находится в 2НФ и все неключевые атрибуты взаимно независимы.

Шаг 1 (Приведение к 1НФ). На первом шаге задается одно или несколько отношений, отображающих понятия предметной области. По модели предметной области (не по внешнему виду полученных отношений!) выписываются обнаруженные функциональные зависимости. Все отношения автоматически находятся в 1НФ.

Шаг 2 (Приведение к 2НФ). Если в некоторых отношениях обнаружена зависимость атрибутов от части сложного ключа, то проводим декомпозицию этих отношений на несколько отношений следующим образом: те атрибуты, которые зависят от части сложного ключа выносятся в отдельное отношение вместе с этой частью ключа.

Шаг 3 (Приведение к 3НФ). Если в некоторых отношениях обнаружена зависимость некоторых неключевых атрибутов от других неключевых атрибутов, то проводим декомпозицию этих отношений следующим образом: те неключевые атрибуты, которые зависят других неключевых атрибутов выносятся в отдельное отношение.

  1. Реляционная модель данных: сравнение нормализованных и ненормализованных моделей.

Критерий

Отношения слабо нормализованы (1НФ, 2НФ)

Отношения сильно нормализованы (3НФ)

Адекватность базы данных предметной области

ХУЖЕ (-)

ЛУЧШЕ (+)

Легкость разработки и сопровождения базы данных

СЛОЖНЕЕ (-)

ЛЕГЧЕ (+)

Скорость выполнения вставки, обновления, удаления

МЕДЛЕННЕЕ (-)

БЫСТРЕЕ (+)

Скорость выполнения выборки данных

БЫСТРЕЕ (+)

МЕДЛЕННЕЕ (-)

  1. Целостность реляционных данных: Null-значения, потенциальные ключи, простой ключ, составной ключ, первичный ключ, альтернативный ключ.

Для того чтобы обойти проблему неполных или неизвестных данных, в базах данных могут использоваться типы данных, пополненные так называемым null-значением. Null-значение - это, собственно, не значение, а некий маркер, показывающий, что значение неизвестно. Второй вариант состоит в использовании null-значений вместо неизвестных данных.

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

  1. Свойством уникальности - в отношении не может быть двух различных кортежей, с одинаковым значением .

  2. Свойством неизбыточности - никакое подмножество в не обладает свойством уникальности.

Потенциальный ключ, состоящий из одного атрибута, называется простым.

Потенциальный ключ, состоящий из нескольких атрибутов, называется составным.

Традиционно, один из потенциальных ключей объявляется первичным, а остальные - альтернативными

  1. Целостность реляционных данных: целостность сущностей, внешний ключ, целостность внешних ключей.

  1. В любой реляционной базе данных должны выполняться два ограничения:

  • Целостность сущностей

  • Целостность внешних ключей

Правило целостности сущностей состоит в том, что атрибуты, входящие в состав некоторого потенциального ключа не могут принимать null-значений.

Правило целостности внешних ключей состоит в том, что внешние ключи не должны ссылаться на отсутствующие в родительском отношении кортежи, т.е. внешние ключи должны быть корректны.

  1. Целостность реляционных данных: операции, которые могут нарушить ссылочную целостность.

Ссылочная целостность может нарушиться в результате операций, изменяющих состояние базы данных. Таких операций три - вставка, обновление и удаление кортежей в отношениях. Т.к. в определении ссылочной целостности участвуют два отношения - родительское и дочернее, а в каждом из них возможны три операции - вставка, обновление, удаление, то нужно рассмотреть шесть различных вариантов.