Модель данных - это совокупность структур данных и операций их обработки. Рассмотрим три основных типа моделей данных: иерархическую, сетевую и реляционную.
Структурная часть модели определяет, что единственной структурой данных является нормализованное n-арное отношение. Отношения удобно представлять в форме таблиц, где каждая строка есть кортеж, а каждый столбец – атрибут, определенный на некотором домене. Данный неформальный подход к понятию отношения дает более привычную для разработчиков и пользователей форму представления, где реляционная база данных представляет собой конечный набор таблиц.
Достоинства реляционной модели:
§ простота и доступность для понимания пользователем. Единственной используемой информационной конструкцией является "таблица";
§ строгие правила проектирования, базирующиеся на математическом аппарате;
§ полная независимость данных. Изменения в прикладной программе при изменении реляционной БД минимальны;
§ для организации запросов и написания прикладного ПО нет необходимости знать конкретную организацию БД во внешней памяти.
Недостатки реляционной модели:
§ далеко не всегда предметная область может быть представлена в виде "таблиц";
§ в результате логического проектирования появляется множество "таблиц". Это приводит к трудности понимания структуры данных;
§ БД занимает относительно много внешней памяти;
§ относительно низкая скорость доступа к данным.
НАЗОВИТЕ ЭЛЕМЕНТЫ РЕЛЯЦИОННОЙ МОДЕЛИ ДАННЫХ. ОПИШИТЕ УСЛОВИЯ, ПРИ КОТОРЫХ ТАБЛИЦА СЧИТАЕТСЯ ОТНОШЕНИЕМ.
Элементы реляционной модели данных:
1) Отношение - представляет собой двумерную таблицу, содержащую некоторые данные.
2) Сущность – объект любой природы, данные о котором хранятся в БД.
6) Домен – совокупность значений атрибутов отношения (тип данных).
7) Кортеж – строка таблицы.
8) Кардинальность (мощность) – количество строк в таблице.
9) Первичный ключ – это атрибут, уникально идентифицирующий строки отношения.
10) Внешний ключ – это атрибут (атрибуты) одной таблицы, который может служить первичным ключом другой таблицы.
Условия, при которых таблица будет являться отношением:
l. Bce строки таблицы должны быть уникальны, т. е. не может быть строк с одинаковыми первичными ключами.
2. Имена столбцов таблицы должны быть различны, а значения их просты ми, т. е. недопустима группа значений в одном столбце одной строки.
З. Все строки одной таблицы должны иметь одну структуру, соответствующую именам и типам столбцов.
4. Порядок размещения строк в таблице может быть произвольным.
РАСКРОЙТЕ ПОНЯТИЯ: ИНДЕКСИРОВАНИЕ, СВЯЗЫВАНИЕ ТАБЛИЦ. ДАЙТЕ ХАРАКТЕРИСТИКУ БИНАРНОМУ ТИПУ СВЯЗЕЙ МЕЖДУ ТАБЛИЦАМИ.
Под индексом понимают средство ускорения операции поиска записей в таблице, а следовательно, и других операций, использующих поиск: извлечение, модификация, сортировка и т. д. Таблицу, для которой используется индекс, называют индексированной.
Индекс выполняет роль оглавления таблицы, просмотр которого предшествует обращению к записям таблицы. В некоторых системах, например Paradox, индексы хранятся в индексных файлах, хранимых отдельно от табличных файлов.
Варианты решения проблемы организации физического доступа к информации зависят в основном от следующих факторов:
• вида содержимого в поле ключа записей индексного файла;
• типа используемых ссылок (указателей) на запись основной таблицы;
• метода поиска нужных записей.
В поле ключа индексного файламожно хранить значения ключевых полей индексируемой таблицы либо свертку ключа (так называемый хеш-код). Преимущество хранения хеш-кода вместо значения состоит в том, что длина свертки независимо от длины исходного значения ключевого поля всегда имеет некоторую постоянную и достаточно малую величину (например, 4 байта), что существенно снижает время поисковых операций. Недостатком хеширования является необходимость выполнения операции свертки (требует определенного времени), а также борьба с возникновением коллизий (свертка различных значений может дать одинаковый хеш-код).
Для организации ссылки на запись таблицы могут использоваться три типа адресов: абсолютный (действительный), относительный и символический (идентификатор).
На практике для создания индекса для некоторой таблицы БД пользователь указывает поле таблицы, которое требует индексации. Ключевые поля таблицы во многих СУБД как правило индексируются автоматически. Индексные файлы, создаваемые по ключевым полям таблицы, часто называются файлами первичных индексов.
Индексы, создаваемые пользователем для не ключевых полей, иногда называют вторичными (пользовательскими) индексами. Введение таких индексов не изменяет физического расположения записей таблицы, но влияет на последовательность просмотра записей. Индексные файлы, создаваемые для поддержания вторичных индексов таблицы, обычно называются файлами вторичных индексов.
При проектировании реальных БД информацию обычно размещают в нескольких таблицах. Таблицы при этом связаны семантикой информации. В реляционных СУБД для указания связей таблиц производят операцию их связывания. Укажем выигрыш, обеспечиваемый в результате связывания таблиц. Многие СУБД при связывании таблиц автоматически выполняют контроль целостности вводимых в базу данных в соответствии с установленными связями. В конечном итоге это повышает достоверность хранимой в БД информации. Кроме того, установление связи между таблицами облегчает доступ к данным. Связывание таблиц при выполнении таких операций как поиск, просмотр, редактирование, выборка и подготовка отчетов обычно обеспечивает возможность обращения к, произвольным полям связанных записей. Это уменьшает количество явных обращений к таблицам данных и число манипуляций в каждой из них.
Бинарная связь – это связь, между 2-мя таблицами. При связывании двух таблиц выделяют основную и дополнительную (подчиненную). Логическое связывание производится с помощью ключа связи. Он состоит из одного или нескольких полей связи. Суть связывания состоит в установлении соответствия полей связей основной и дополнительной таблиц. Поля связей основной таблицы могут быть обычными и ключевыми. В качестве полей связи подчиненной таблицы обычно используют ключевые поля.