- •Лекція 8. Основи баз даних
- •1 Базы данных и файловые системы Основи баз даних
- •Файловые системы и информационные системы
- •Потребности и задачи информационных систем
- •Пример Простая ис, которая предназначена для учета сотрудников некоторой организации. Она должна:
- •2 Функции субд
- •Типовая организация субд
- •Субд различных информационных моделей
- •1 Субд на инвертированных (преобразованных) списках
- •2Субд иерархического типа
- •3Сетевые субд
- •Реляционные базы данных
- •Фундаментальные свойства отношений
- •Реляционная модель данных
- •Манипуляционная часть рмд
- •Реляционная алгебра
- •Теоретико-множественные операции ра
- •Специальные реляционные операции
- •Реляционное исчисление
- •Исчисление кортежей
- •Проектирование реляционных бд
- •Функциональная зависимость
- •Полная функциональная зависимость
- •Транзитивная функциональная зависимость
- •Семантическое моделирование данных
- •Моделирование по схеме сущности – связи
- •Нормализация er-диаграмм
- •Внутренняя организация реляционных субд
- •1 Хранение отношений
- •2 Индексы
- •3 Хеширование
- •4 Журнальная информация
- •5 Служебная информация
- •Обработка с помощью транзакций
- •Сериализация транзакций
- •Синхронизационные захваты
- •Гранулированные синхронизационные захваты
- •Временные метки
- •Журнализация и откаты
- •Индивидуальный откат транзакций
- •Восстановление при мягком сбое
- •Теневой механизм
- •Журнализация постраничных изменений
- •Обзор языка рбд sql
Реляционные базы данных
Для РБД базовыми понятиями являются: тип данных, домен, кортеж, атрибут, ключ, отношения.
В
ернемся
к примеру «Сотрудники» – «Отделы»
-
С
ОТР_NС
ОТР_ИМЯСОТР_ЗАРПЛ
СОТР_ОТД
2934Иванов
112
3
102935
Петров
215
3
102938
Сидоров
418
3
20…
Тип СОТР_N – целые четырёхзначные; СОТР_НОМЕР – символьный, имеет смысл фамилий.
Тип данных
В реляционных моделях тип данных полностью аналогичен понятию типа данного в языках программирования, т.е. определяет форму хранения и дополнительные операции (поддерживает корректное соотношение операций с данными). Существующие типы:
числовые (простые, денежные, временные);
символьные (представляются обычно в виде строк, здесь вводят битовые последовательности, использующиеся в качестве масок).
Домен
Домен – допустимое потенциальное множество значений данного. Домен всегда имеет смысловую нагрузку, из-за чего с данными из разных доменов недопустимы некоторые операции. Домен – множество значений без типа, удовлетворяющих логическому отношению. Отношения – быть зарплатой или номером отдела.
Схема отношения (схема БД)
Схема отношения – это множество пар, включающих имя атрибута и имя домена. Количество пар определяет мощность (арность) множества.
<имя_атр, имя_домена>
арность
Отношение – поименованное множество пар.
<
СОТР_N,
домен номеров>
<СОТР_ИМЯ, домен фамилий>
<СОТР_ЗАРПЛ, домен зарплат>
<СОТР_ОТД, домен номеров отделов>
Схема БД – набор поименованных схем отношений.
Кортеж
Кортеж – множество поименованных пар <атрибут, значение атрибута>, причём имя атрибута должно быть такое, чтобы соответствовать схеме отношения, а значения атрибута – чтобы принадлежали соответствующим доменам. Т.е. отношения – это множество кортежей.
< СОТР_N, 2935>
<
СОТР_ИМЯ,
Петров>
<СОТР_ЗАРПЛ, 215>
<СОТР_ОТД, 310>
Фундаментальные свойства отношений
отсутствие кортежей – дубликатов. Следует из определения отношений как множества кортежей. Характеристика, выделяющая уникальность кортежа – первичный ключ.
Первичный ключ:
– (значение из домена) простой;
– составной.
Ключ должен удовлетворять требованию минимальности.
Иванов |
Иван |
1980 |
Иванов |
Павел |
195 |
Иванов |
Николай |
1985 |
Петров |
Пётр |
1990 |
Петров |
Николай |
1981 |
отсутствие упорядоченности кортежей. Тоже следует из определения отношений как множества кортежей. Отсутствие порядка кортежей обеспечивает большую гибкость СУБД. Для упорядоченности пользуются индексами.
отсутствие упорядоченности атрибутов. С точки зрения организации хранения данных имеет большое значение для СУБД. Для нас: обращение к значению только через имя атрибута.
атомарность значений атрибутов. Атрибуты принимают значения из доменов, а домен представляет собой множество, содержащее по определению простые элементы. Свойство атомарности препятствует появлению следующего типа таблиц:
ОТД_N |
ОТДЕЛ |
||
|
СОТР_N |
Сотрудник |
|
310 |
2934 |
Иванов |
|
2935 |
Петров |
215 |
|
320 |
2938 |
Сидоров |
418 |
Отношения, соответствующие примеру, ненормализованы. Над ними невозможно корректно выполнить операции по преобразованию данных (добавление, удаление, модификация). Отсутствие корректности называется аномалией. БД работают только с нормализованными отношениями. Преобразование ненормализованных отношений в нормализованные – процесс нормализации.
