Способ организации баз данных иерархический сетевой реляционный

Иерархическая, сетевая и реляционная модели данных.

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

Иерархическая модель БД (рис.1) представляет собой совокупность элементов, расположенных в порядке их подчинения от общего к частному и образующих перевернутое дерево (граф).

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

Уровень – определяет положение узла в модели.

Узел – информационная модель элемента, находящегося на данном уровне иерархии.

Связи – определяют взаимодействующие узлы.

Узлы

Уровни

Рис. 1. Иерархическая и сетевая модели.

Свойства иерархической модели данных:

— несколько узлов низшего уровня связано только с одним узлом высшего уровня;

— иерархическое дерево имеет только одну вершину (корень), не подчиненную никакой другой вершине;

— Каждый узел имеет свое имя (идентификатор);

— Существует только один путь от корневой записи к более частной записи данных.

Сетевая модель БД (рис.1) похожа на иерархическую. Она имеет те же основные составляющие (узел, уровень, связь), однако характер их отношений принципиально иной. В сетевой модели принята свободная связь между элементами разных уровней.

Реляционная модель – модель представления данных, которая описывает структуру данных, допустимые операции над данными и специальные правила, обеспечивающие целостность данных.

Реляционная база данных – база данных, построенная на основе реляционной модели. То есть БД, имеющая табличный способ представления данных, а на внешнем уровне задаваемая набором однородных таблиц. Каждый объект записывается строкой в таблице. Строка называется записью. Запись состоит из полей разного типа.

Реляционная база создается и затем управляется с помощью специальных средств — систем управления базами данных (СУБД).

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

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

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

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

Связи между таблицами дают возможность совместно использовать данные из разных таблиц.

Различают следующие виды связей:

1. Отображение 1:1

Класс А Класс В

2. Отображение 1:М (связь один ко многим).

3. Отображение М:N (связь многие ко многим).

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

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

Читайте также:  Таблетки никсар способ применения
Код кафедры Название ФИО заведующего Телефон
01 Информатики Иванов В.В. 450-00-00
02 Математики Петров В.В. 420-00-00
Таб. номер ФИО преподавателя Код кафедры Ученая степень
Андреев А.П. ДТН
Чернов В.С. КТН
Попов Ю.А. КТН
Суриков И.П КТН
Новиков И.И ДТН

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

Источник

Модели данных: иерархическая, сетевая, реляционная.

Иерархическая модель.

Отношения в иерархической модели данных организованы в виде совокупностей деревьев, где дерево — структура данных, в которой тип сегмента потомка связан только с одним типом сегмента предка.

Иерархическая модель данных, как следует из названия, имеет иерархическую структуру, т.е. каж­дый из элементов связан только с одним стоящим выше элементом, но в, то, же время на него могут ссылаться один или несколь­ко стоящих ниже элементов

Рисунок 2 — Логическая иерархическая модель

В терминологии иерархической моде­ли используются более конкретные понятия: «элемент» (узел); «уро­вень» и «связь». Узел чаще всего представляет собой атрибут (при­знак), описывающий некоторый объект.

Иерархически модель схематически изображается в виде графа, в котором каждый узел является вершиной .

Эта модель представляет собой совокупность элементов, расположенных в порядке их подчинения от общего к частному и образующих граф – дерево с иерархической структу­рой (рисунок 2,3).

Такой граф имеет единственную вершину, не под­чиненную никакой другой вершине и находящуюся на самом верх­нем (первом) уровне. Число вершин первого уровня определяет число деревьев в базе данных. Запрещены взаимосвязи на одном уровне.

Рисунок 3 – Пример иерархической модели данных

Сетевая модель.

Сети — естественный способ представления отношений между объектами. Они широко применяются в математике, исследованиях операций, химии, физике, социологии и других областях знаний. Сети обычно могут быть представлены математической структурой, которая называется направленным графом. Направленный граф имеет простую структуру. Он состоит из точек или узлов, соединенных стрелками или ребрами.

Сетевая модель данных — это представление данных сетевыми структурами типов записей и связанных отношениями мощности один-к-одному или один-ко-многим.

Сетевая модель более демократична. В сетевой модели отсутству­ет понятие главного и подчиненного объекта (рисунок 4,5). Один и тот же объект может выступать как главный и как подчиненный, то есть иметь любое количество взаимосвязей. Здесь допустимы связи на одном уровне. Эта модель использует ту же термино­логию, что и иерархическая модель: «узел», «уровень» и «связь».

Рисунок 4 — Логическая сетевая модель

Как известно из теории графов, сетевой граф мо­жет быть преобразован в граф-дерево.

Рисунок 5 – Пример сетевой модели данных

Реляционная модель.

В 1970-1971 годах Е.Ф.Кодд опубликовал две статьи, в которых ввел реляционную модель данных и реляционные языки обработки данных — реляционную алгебру и реляционное исчисление.

Реляционная алгебра Процедурный язык обработки реляционных таблиц.

Реляционное исчисление Непроцедурный язык создания запросов.

Все существующие к тому времени подходы к связыванию записей из разных файлов использовали физические указатели или адреса на диске. В своей работе Кодд продемонстрировал, что такие базы данных существенно ограничивают число типов манипуляций данными. Более того, они очень чувствительны к изменениям в физическом окружении. Когда в компьютерной системе устанавливался новый накопитель или изменялись адреса хранения данных, требовалось дополнительное преобразование файлов. Если к формату записи в файле добавлялись новые поля, то физические адреса всех записей файла изменялись. То есть такие базы данных не позволяли манипулировать данными так, как это позволяла бы логическая структура. Все эти проблемы преодолела реляционная модель, основанная на логических отношениях данных.

Читайте также:  Прерывание беременности способы прерывания беременности

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

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

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

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

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

Таблица 1 – Структура реляционной таблицы

Имя файла
Поле Признак ключа Формат поля
Имя (обозначение) Полное наименование Тип Длина Точность (для чисел) N/NN
имя1
имя n

Рассмотрим пример реляционной модели данных (таблица 2).

Таблица 2 — Детали приборов

Код Расположение поверхностей Дополнительная характеристика
Тела вращения Валы
Тела вращения Втулки
Не тела вращения Плоские
Не тела вращения Объемные

На рисунке 6 показано разделение таблицы 2 на две связанные таблицы.

Код Дополнительная характеристика
1.1 Валы
1.2 Втулки
2.1 Плоские
2.2 Объёмные
Код Расположение поверхностей
Тела вращения
Не тела вращения

Реляционные модели данных, или реляционные базы данных, являются в настоящее время основным способом в проектировании и организации информационных систем в производстве и бизнесе.

Источник

Иерархические, сетевые и реляционные модели данных.

Дата добавления: 2013-12-23 ; просмотров: 25851 ; Нарушение авторских прав

Базы данных.

Лекция №12.

Базы данных (БД) – это данные, организованные в виде набора записей определенной структуры и хранящиеся в файлах, где, помимо самих данных, содержится описание их структуры.

Система управления базами данных (СУБД) – система, обеспечивающая ввод данных в БД, их хранение и восстановление в случае сбоев, манипулирование данными, поиск и вывод данных по запросу пользователя.

По моделям представления, базы данных делятся на:

Иерархические базы данных – это самая первая модель представления данных, в которой все записи базы данных представлены в виде дерева, с соотношением предок-потомок (рис. 30).

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

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

Рис. 30. Иерархическая база данных.

Однако иерархическая модель не является оптимальной. Допустим, что один и тот же тип болтов используется в автомобиле 300 раз в различных узлах. При использовании иерархической модели, данный тип болтов будет фигурировать в базе данных 1 раз, а 300 раз (в каждом узле — отдельно). В данном случае, будет прослеживаться дублирование информации. Чтобы устранить этот недостаток была введена сетевая модель представления данных.

Читайте также:  Способы активации карты альфа банка

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

Рис. 31. Сетевая база данных.

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

И иерархическая и сетевая модели достаточно просты, однако они имеют общий недостаток: для того, чтобы получить ответ даже на простой вопрос, программист должен был написать программу, которая просматривала базу данных, двигаясь по указателям от одной записи к другой. Написание программы занимало некоторое время, и часто к тому моменту, когда такая программа была написана, необходимость в получении данных уже не требовалась. Поэтому в середине 80-х годов 20 века произошел практически повсеместный переход к реляционным базам данных.

В реляционной базе данных вся информации представляется в виде таблиц, и любые операции над данными – это операции над таблицами. Таблицы строят из строк и столбцов. Строки – это записи, а столбцы представляют собой структуру записи (каждый столбец имеет определенный тип данных и длину данных). Строки в таблице не упорядочены – не существует первой или десятой строки. Однако поскольку на строки необходимо как-то ссылаться, то вводится понятие «первичный ключ».

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

Некоторые СУБД требуют в явном виде указать первичный ключ таблицы, а некоторые позволяют пользователю не задавать для таблицы первичный ключ – в таком случае СУБД сама добавляет в таблицу столбец – первичный ключ, не отображаемый на экране (так, например, в СУБД Oracle у любой таблицы существует псевдо-столбец ROWID, формируемый Oracle, который содержит уникальный адрес каждой строки). Отношения предок-потомок в реляционных БД реализуются при помощи внешних ключей.

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

Так, например, на рис. 32 столбец «Ответственный» таблицы «Мероприятия» является внешним ключом для таблицы «Сотрудники» (первичный ключ – столбец «Фамилия»).

Рис. 32. Отношения предок-потомок в реляционных базах данных.

Важным моментом является также использование значения NULL в таблицах реляционной базе данных. NULL – это отсутствующее значение, отсутствие информации по данной позиции. Не допускается использование 0 или пробела вместо NULL: понятно, что «нулевой» объем продаж – это не тоже самое, что «неизвестный» объем продаж. По этой же причине, ни одно значение NULL не равно другому значению NULL. В реляционной базе данных, при запросах, группировке, сравнениях, и т.д., значения NULL обрабатываются особым образом.

Объектно-реляционные базы данных появились в последнее время у значительного числа производителей СУБД (Oracle, Informix, PostgreSQL) и сочетают в себе реляционную модель данных с концепциями объектно-ориентированного программирования (полиморфизм, инкапсуляция, наследование).

Источник

Оцените статью
Разные способы