Базы данных Лекция 05 Основные понятия реляционных баз данных.

Презентация:



Advertisements
Похожие презентации
Проектирование БД. Нормальные формы В теории реляционных баз данных обычно выделяется следующая последовательность нормальных форм: первая нормальная.
Advertisements

Нормализация таблиц реляционной базы данных © Панова И.В
1 БАЗЫ ДАННЫХ Функциональные зависимости и их использование в базах данных ЗАНЯТИЕ 4 ПУГАЧЁВ Ю.В. Учитель информатики Харьковская общеобразовательная школа.
Функциональные зависимости Нормализация отношений.
Реляционная модель – это особый метод рассмотрения данных, содержащий данные в виде таблиц, способов работы и манипуляции с ними в виде связей. структура,
Виды моделей данных. Ядром любой базы данных является модель данных. Модель данных представляет собой множество структур данных, ограничений целостности.
ВИДЫ МОДЕЛЕЙ ДАННЫХ. Ядром любой базы данных является модель данных. Модель данных представляет собой множество структур данных, ограничений целостности.
Информационные системы. Базы данных. Информационная система – любая система обработки информации (шир)
Модуль 1. Математические основы баз данных и знаний.
Модуль 1. Математические основы баз данных и знаний 1.
Каждой нормальной форме соответствует некоторый определенный набор ограничений, и отношение находится в некоторой нормальной форме, если удовлетворяет.
Базы данных Лекция 9 Проектирование реляционных баз данных на основе принципов нормализации: дальнейшая нормализация.
Модуль 1. Математические основы баз данных и знаний 1.
Реляционные базы данных N-арное отношение – подмножество декартова произведения N множеств возможных значений (доменов, типов данных, атрибутов) Изображение.
Определения Банк данных (БнД) это система специальным образом организованных дан­ных - баз данных, программных, технических, языковых, организационно-
Базы данных Лекция 4 Базисные средства манипулирования реляционными данными: реляционная алгебра Кодда.
Нормализация отношений "Сложная система, спроектированная наспех, никогда не работает, и исправить её, чтобы заставить работать, невозможно". Законы Мерфи.
Базы данных Реляционная база данных MS Access. Повторение База данных организованная совокупность данных из какой-либо предметной области, предназначенная.
Нормализация данных В IDEF1X (дополнительный материал к лекции по информационному моделированию с использованием методологии IDEF1X)
Реляционная модель данных Определения Основные операции над отношениями (реляционная алгебра)
Транксрипт:

Базы данных Лекция 05 Основные понятия реляционных баз данных

1. Термины и определения 1. База данных (database) – поименованная совокупность структурированных данных, относящихся к определенной предметной области 2. Предметная область – часть реально существующей системы, функционирующая как самостоятельная единица 3. Реляционная БД –тип современных баз данных 4. Таблица (table) – регулярная структура, состоящая из однотипных строк (records), разбитых на столбцы (fields) 5. Таблица реляционной БД – отношение (relation). Строка – кортеж. Столбец – атрибут 2

1. Термины и определения 6. Таблица в концептуальной модели БД – сущность (entity). Набор свойств – атрибуты. Набор допустимых значений – домен 7. Ключевой элемент (regular key) – поле/поля, определяющее значения других полей 8. Первичный ключ (primary key) – элемент, однозначно идентифицирующий строку 9. Связь (relation) – функциональная зависимость между объектами 10. Внешний ключ (foreign key) – ключевой элемент подчиненной (внешней, дочерней) таблицы 11. Ссылочная целостность данных (referential integrity) – набор правил 3

1. Термины и определения 12. Хранимые процедуры (stored procedures) – программные модули, сохраняемые в БД 13. Триггеры (triggers) – хранимые процедуры, запускаемые при изменениях в таблице 14. Объект (object) – элемент информационной системы, имеющий свойства (properties) и реагирующий на события (events) 15. Система – совокупность взаимодействующих между собой и с внешним окружением объектов 16. Репликация БД – создание копий БД (replica) 17. Транзакция – изменение информации в БД 18. Язык SQL (Structured Query Language) – универсальный язык работы с БД 4

2. Структура данных 1. Декартово произведение: D 1 *D 2 *…*D n = d 1 *d 2 *…*d n, где d 1 D 1, d 2 D 2, d n D n Пример: Пусть A (a 1, a 2, a 3 ) и B (b 1, b 2 ), тогда С=A*B (a1*b1, a2*b1, a3*b1, a1*b2, a2*b2, a3*b2) 2. Отношение R на множествах D 1, D 2, … D n – это подмножество декартова произведения D 1 * D 2 *…* D n Множества D 1, D 2, … D n – домены Элементы декартова произведения d 1 *d 2 *…*d n – кортежи Число n – степень отношения (n=1 - унарное, n=2 – бинарное,..., n-арное) Количество кортежей – мощность отношения 5

2. Структура данных Основные компоненты реляционного отношения 6

2. Структура данных БД о подразделениях и сотрудниках предприятия Внешний ключ Внешний ключ – атрибут, представляющий собой копию ключей других отношений 7

2. Структура данных Свойства отношений: 1. Отсутствие кортежей-дубликатов 2. Отсутствие упорядоченности кортежей 3. Отсутствие упорядоченности атрибутов 4. Атомарность значений атрибутов Проблемы проектирования: Отобразить объекты предметной области в абстрактные объекты модели данных Обеспечить эффективность выполнения запросов к БД 8

3. Теория нормальных форм Последовательность НФ: Первая нормальная форма (1NF) Вторая нормальная форма (2NF) Третья нормальная форма (3NF) Нормальная форма Бойса-Кодда (BCNF) Четвертая нормальная форма (4NF) Пятая нормальная форма (5NF) Основные свойства нормальных форм: Каждая следующая НФ в некотором смысле лучше предыдущей При переходе к следующей НФ свойства предыдущих НФ сохраняются 9

3. Теория нормальных форм Функциональные зависимости (ФЗ) Атрибут Y некоторого отношения функционально зависит от X, если в любой момент времени каждому значению X соответствует ровно одно значение Y Избыточная функциональная зависимость – зависимость, которая может быть получена на основе других зависимостей, имеющихся в БД Нормализация – обратимый пошаговый процесс замены совокупности отношений другой схемой с устранением избыточных функциональностей Условие обратимости требует: –Не должны появляться ранее отсутствовавшие кортежи –Должны выполняться исходные множества ФЗ 10

3.1. Первая нормальная форма (1NF) Простой атрибут – атрибут, значения которого атомарныййй (неделимы) Сложный атрибут – получается соединением нескольких атомарныйййх атрибутов Отношение находится в 1NF, если значения всех его атрибутов атомарныййй 11 СЛУЖАЩИЙ (номер_служащего, имя, дата_рождения, история_работы, дети)

3.1. Первая нормальная форма (1NF) ИСТОРИЯ_РАБОТЫ (дата_приема, название, история_зарплаты), ИСТОРИЯ_ЗАРПЛАТЫ (дата_назначения, зарплата), ДЕТИ (имя_ребенка, год_рождения) 12

3.2. Вторая нормальная форма (2NF) Отношение находится во 2НФ, если оно находится в 1НФ и каждый неключевой атрибут функционально полно зависит от ключа 13 Сотрудник ДолжностьЗарплата Компьютер Гришин Кладовщик 10000,00 р.Нет Васильев Программист 20000,00 р.Есть Иванов Кладовщик 12000,00 р.Нет Сотрудник Должность Гришин Кладовщик Васильев Программист Иванов Кладовщик Должность Компьютер Кладовщик Нет Программист Есть СОТРУДНИКИ (Сотрудник, Должность, Зарплата, Компьютер) СОТРУДНИКИ (Сотрудник, Должность) ДОЛЖНОСТИ (Должность, Компьютер)

3.3. Третья нормальная форма (3NF) Отношение находится в 3НФ, если оно находится во 2НФ и каждый неключевой атрибут нетранзитивно зависит от Первичного Ключа Если существует такое множество атрибутов Y, что X Y и Y Z, то Z транзитивно зависит от X (X Z) 14 Сотрудник Отдел Телефон Гришин Бухгалтерия Васильев Бухгалтерия Иванов Снабжение Отдел Телефон Бухгалтерия Снабжение Сотрудник Отдел Гришин Бухгалтерия Васильев Бухгалтерия Петров Снабжение

3.4. Бойса-Кодда нормальная форма (BCNF) Отношение находится в BCNF, если оно находится во 3НФ и в ней отсутствуют зависимости атрибутов Первичного Ключа от неключевых атрибутов 15 Номер корта Время начала Время окончания Тариф Член клуба К-171 8:0024:00 Premium Да К-05 8:0020:00 General Нет К-171 8:0020:00 General Нет К-05 12:0018:00 Family Да К-НН 0:0024:00 VIP Да Тариф Время начала Время окончания Premium 8:0024:00 General 8:0020:00 Family 12:0018:00 VIP 0:0024:00 Тариф Номер корта Член клуба PremiumК-171 Да General К-171Нет Family К-05Да General К-05Нет VIP К-ННДа

3.5. Четвёртая нормальная форма (4NF) Отношение находится в 4NF, если оно находится в BCNF и в нём отсутствуют многозначные зависимости, не являющиеся функциональными зависимостями 16 ИМЯКУРСУЧЕБНОЕ_ПОСОБИЕ Петров Теория упругости Петров Теория колебаний Теория упругости Петров Теория упругости Теория колебаний Петров Теория колебаний Иванов Теория удара Иванов Теория удара Теоретическая механика Иванов Теория упругости Теория удара Иванов Теория упругости Теоретическая механика ИМЯКУРС Петров Теория колебаний Петров Теория упругости Иванов Теория удара Иванов Теория упругости ИМЯУЧЕБНОЕ_ПОСОБИЕ Петров Теория колебаний Петров Теория упругости Иванов Теоретическая механика Иванов Теория удара

3.6. Пятая нормальная форма (5NF) Отношение находится в 5НФ тогда и только тогда, когда любая зависимость по соединению в нём определяется только его возможными ключами Основные варианты декомпозиции отношения R с атрибутами {a, b, c}: {a}, {b}, {c}{a, b}, {b, c} {a}, {b, c}{a, b}, {a, c} {a, b}, {c}{b, c}, {a, c} {b}, {a, c}{a, b}, {b, c}, {a, c} Отношение R – результат операции естественного соединения (NATURAL JOIN), тогда: Декомпозиция называется декомпозицией без потерь, если R' в точности совпадает с R 17

3.5. Пятая нормальная форма (5NF) Не всякая декомпозиция является декомпозицией без потерь Пример: Отношение R с атрибутами {a, b, c} 18 R ABc Москва Россия Столица Томск Россия Не столица Берлин Германия Столица R1R1 a Москва Томск Берлин R2R2 bc Россия Столица Россия Не столица Германия Столица R' = R 1 NATURAL JOIN R 2 abc Москва Россия Столица Москва Россия Не столица Москва Германия Столица Томск Россия Столица Томск Россия Не столица Томск Германия Столица Берлин Россия Столица Берлин Россия Не столица Берлин Германия Столица Результат операции соединения этих отношений: Декомпозиция R 1 = {a}, R 2 = {b, c} имеет вид:

3.5. Пятая нормальная форма (5NF) Пример: Отношение R с атрибутами {a, b, c} 19 R1R1 ab Москва Россия Томск Россия Берлин Германия Декомпозиция R 1 = {a, b}, R 2 = {a, c}: R ABc Москва Россия Столица Томск Россия Не столица Берлин Германия Столица R2R2 ac Москва Столица Томск Не столица Берлин Столица Результат операции соединения этих отношений: R ABc Москва Россия Столица Томск Россия Не столица Берлин Германия Столица

3.5. Пятая нормальная форма (5NF) Пример: 20 Ассортимент (продавцы, фирмы, товары) Продавец Фирма Товар Иванов Рога и Копыта Пылесос Иванов Рога и Копыта Хлебница Петров Безенчук&Ко Сучкорез Петров Безенчук&Ко Пылесос Петров Безенчук&Ко Хлебница Петров Безенчук&Ко Зонт Сидоров Безенчук&Ко Пылесос Сидоров Безенчук&Ко Телескоп Сидоров Рога и Копыта Пылесос Сидоров Рога и Копыта Лампа Сидоров Геркулес Вешалка Товары продавцов Продавец Товар Иванов Пылесос Иванов Хлебница Петров Сучкорез Петров Пылесос Петров Хлебница Петров Зонт Сидоров Телескоп Сидоров Пылесос Сидоров Лампа Сидоров Вешалка Фирмы продавцов Продавец Фирма Иванов Рога и Копыта Петров Безенчук&Ко Сидоров Безенчук&Ко Сидоров Рога и Копыта Сидоров Геркулес Товары фирм Фирма Товар Рога и Копыта Пылесос Рога и Копыта Хлебница Рога и Копыта Лампа Безенчук&Ко Сучкорез Безенчук&Ко Пылесос Безенчук&Ко Хлебница Безенчук&Ко Зонт Безенчук&Ко Телескоп Геркулес Вешалка

4. Заключение Нормализация схемы БД: Способствует более эффективному выполнению СУБД операций обновления При проектировании данных почти всегда добиваются 2NF В часто обновляемых БД стараются обеспечить 3NF На BCNF внимание обращают гораздо реже 21

4. Заключение 1.1NF – значения всех его атрибутов атомарныййй 2.2NF – каждый неключевой атрибут функционально полно зависит от ключа 3.3NF – каждый неключевой атрибут нетранзитивно зависит от Первичного Ключа 4. BCNF – отсутствуют зависимости атрибутов Первичного Ключа от неключевых атрибутов 5.4NF – отсутствуют многозначные зависимости 6.5NF – любая зависимость по соединению определяется только его возможными ключами. Каждая проекция такого отношения содержит не менее одного возможного ключа и не менее одного неключевого атрибута. 22

Спасибо за внимание 23