Сетевая база данных или СБД — это теоретико-графовые модели БЗ. Они находятся в одной группе с иерархическими моделями. На основе математики именно сетевых баз созданы разные системы управления баз данных или СУБД, как правило, коммерческого характера.
Для СБД есть ряд характерных операций:
- навигация;
- манипуляция;
- управление.
Стоит учесть, что кроме теоретико-графовой модели БД есть и теоретико-множественная модель. К ней относятся реляционные базы данных.
В первую очередь сначала разобраться со структурой СБД. Это позволит понять, о чём вообще идёт речь. Для начала нужно разобраться со словом «сети». Ведь от него выстраивается понятие сетевой модели как таковой.
Что такое «Сетевая база данных» (СБД)?
Сети — это естественный способ выстраивания отношений между объектами БД и связей между обозначенными объектами. В оговоренной ситуации под словом «объекты» надо понимать таблицы БД или сущности.
Сетевые базы данных выстроены на математике графов. А если точнее, то СБД можно представить как ориентированный граф.
Выбор СУБД
Направленный граф — это структура, состоящая из рёбер и узлов. Узлы — это объекты СБД, а рёбра внутри такой конструкции демонстрируют связи между объектами и её тип. То есть по ним можно установить, идёт ли речь о связи 1 к 1 или это связь по типу 1 к многим.
Нужно учесть, что иерархическая модель БД — это частный и упрощённый случай СБД.
Структура СБД
Структура у сетевых баз данных довольно простая. Как минимум, она проще, чем у реляционной модели. По структуре такие конструкции сделаны из 4 компонентов. Это означает, что в сетевой модели применяют 4 типа структуры данных. При этом 2 — главные (запись и набор).
Вспомогательные типы структур сетевой модели, которые применяются для выстраивания главных структур — агрегат данных и элемент данных. Непосредственно структура СБД выглядит как 5 элементов. Из них есть несколько ключевых:
- Элемент данных — самая маленькая информационная единица, которая доступна пользователю. При проведении аналогии с файловой системой такую конструкцию можно назвать полем. А если сравнивать с реляционной базой данных, то это будет элементом данных. По сути, речь идёт об одном столбце таблицы реляционной базы данных. А если конкретнее, то это — «подстолбец».
- Агрегат данных — это элемент, который является следующим уровнем обобщения применительно к сетевой модели. Агрегат данных представляет собой именованную совокупность информации, которая находится внутри одной записи. По сути, это столбец, который находится выше базовых столбцов. То есть речь идёт о следующем уровне, как и говорилось выше.
- Запись — это итоговый уровень обобщения. Её можно сравнить с таблицей в реляционной базе данных. В каждой записи должно быть не меньше 1 именованного элемента. А если таких элементов больше, то у них должны быть уникальные форматы. Стандартно записи используются для сведения данных, для каких-то выводов.
В роли элементов данных для сетевой модели можно использовать простые типы данных или сложные типы. Под последними имеются в виду вектор и повторяющаяся группа.
Клиент-серверная архитектура в картинках
Агрегат типа вектор — это линейный набор данных.
Агрегат «повторяющаяся группа» — это сочетание векторов данных. То есть речь о нескольких разных векторах. Они могут быть представлены как «товары» или «расходные материалы».
Набор записей — это именованная иерархическая 2-уровневая структура, содержащая как управляемую запись, так и управляющую. Наборы позволяют обозначить тип связи между записями. По сути, набор представляет собой 2 записи, и между ними установлена связь: 1 к 1 или 1 к многим.
Таким образом, набор записей в СБД определяет:
- управляющую запись («Отдел»);
- подчинённую запись — «Работник»;
- тип связи — «Наем».
Название вида связи будет также играть роль метки, называющей сам набор данных.
Таким образом, база данных по сетевой модели — это именованная совокупность записей разного типа и наборов, которые хранят сведения о типах связей, объединяющих записи. То есть СБД можно изобразить как комплекс, состоящий из записей и связей между ними разного характера.
Концептуальная модель данных (КМД)
Что собой представляет концептуальная модель данных (КМД)? Она выражается в форме модели, которая представлена большим количеством понятий и связей. И они определяют смысловую структуру конкретной области или же отдельно взятого объекта.
КМД в первую очередь имеет отношение к предметной области. Она состоит из ряда понятий, которые взаимно связаны между собой. Указанные понятия используются, чтобы описать эту область. Причём у понятия есть свойства и характеристики, и они тоже включены в общую структуру, как и классификация по разным признакам.
Кроме того, для КМД характерны разные процессы, которые могут протекать внутри неё. Для их описания можно использовать разные законы. И они тоже будут входить в общую структуру.
Концептуальную модель данных часто называют ещё содержательной, что подчёркивает большую роль смыслового наполнения. По своему характеру она является абстрактной моделью, которая определяет структуру выстраиваемой системы, свойства элементов, причинно-следственные связи. Причём при работе с КМД нужно брать не любые связи, а только те, которые характерны для данной системы и служат цели моделирования.
КМД — это модель, которая создаётся по результатам процесса концептуализации. То есть её выстраивают на основании обобщения. Такие модели часто представляют собой абстракциями в реальном мире.
Концептуальное проектирование баз данных
Концептуальное проектирование БД встречается довольно часто на практике. По сути, она представляет собой процесс создания информационной модели, которая не будет зависеть от физических реалий.
При разработке такой структуры нужно определить:
- типы сущностей и связей;
- атрибуты;
- домены атрибутов;
- потенциальные и первичные ключи.
На первом этапе построения такой модели данных нужно определить главные объекты интереса. Под ними имеются в виду типы сущностей, которые входят в модель. Они представляют собой совокупность объектов реального типа с одинаковыми свойствами.
Тип сущности независим. Он может быть объектом реального существования или же абстрактного или концептуального характера.
Сущность — это экземпляр, который можно уникально идентифицировать. У него есть уникальный список атрибутов. И у каждой сущности есть отдельные значения для такого атрибута. Сущности делятся на слабые и сильные.
Атрибут представляет собой свойство типа связи или типа сущности. В них содержатся значения, которые позволяют описать каждую сущность. Значения атрибутов — это основная часть сведений, которые хранятся в базе данных.
В то же время, связь, соединяющая 2 сущности, может тоже обладать атрибутами. И они будут аналогичны типам сущностей.
Под связью подразумевается ассоциация между сущностями, включая минимум по 1 сущности из каждого типа. Благодаря связям происходит контакт между сущностями и поиск в рамках такой системы.
Ключ применительно к сущности — это набор атрибутов, не являющийся избыточным. Их значения — уникальны для каждой сущности. Если удалить любой атрибут, то возникает проблема с нарушением уникальности. У сущности может быть несколько разных ключей.
Нужно отметить, что выше даны общие понятия, база. Для более глубокого освоения концептуального проектирования базы данных имеет смысл выбрать тематический материал.
Преобразовать концептуальную модель в сетевую базу данных
Сетевую базу данных можно создать из концептуальной. Для этого достаточно соблюдать только 1 условие: в КМД должны применяться исключительно бинарные связи:
При этом сущности нужно заменить на типы записей. Так что имена сущностей в КМД станут названиями типов записей в другой модели данных. А атрибуты сущностей (их можно представить как столбцы таблицы) превратятся в поля записей СБД. И, наконец, связи между сущностями преобразуются в связи между типами записей.
Бинарные связи перенести легко. Например, если выбрать перенос связи «1 к многим», то тип записи «1» будет управляющей записью, а «многие» — управляемыми. При переносе «1 к 1» определение управляемой и подчинённой записью происходит по смыслу.
Управление сетевыми данными
Сетевыми данными нужно уметь управлять. Для этого можно использовать напрямую управление и манипулирование. Для этого используются типовыми операции, которые можно разделить на навигационные и модификационные. Ниже —детальнее.
Навигационные занимаются переходом по связям, которые определены в рамках схемы баз данных. Благодаря таким переходам устанавливается запись, которую можно назвать текущей. Это запись сетевой модели, и с ней предстоит работа.
Модификационные операции СБД позволяют осуществлять добавление новых записей или новых наборов данных, удаление того или другого, модификацию агрегатов и элементов данных. Чтобы реализовать эти операции в системе, нужно детализировать текущее состояние посредством запоминания 3 текущих компонентов: набор, тип записи и экземпляр типа записи.
Это позволяет осуществлять следующие записи:
- извлечь запись в буфер прикладной программы, чтобы осуществить обработку;
- запомнить запись из буфера в базе данных;
- заменить в записи, которую уже извлекли, значения обозначенных элементов;
- сделать новую запись;
- удалить запись;
- включить или исключить запись из текущего экземпляра набора.
Всё это позволяет управлять сетевой базой данных. Конкретика зависит уже от специфики БД. Поддерживать ограниченную целостность в СБД не нужно. Главное — понимать структуру и основы управления, что и позволяет совершать нужные операции.
Источник: itcons99.ru
IX Международная студенческая научная конференция Студенческий научный форум — 2017
Во многих сферах, будь то деловая или личная, все чаще приходится работать с данными из разных источников, каждый из которых связан с определенным видом деятельности. Хранение информации является одной из важнейших функций компьютера. Одним из распространенных средств хранения данных – базы данных [1].
База данных – это упорядоченное хранение какой-либо информации. То есть, информация хранится в упорядоченном или систематизированном виде. Видов систематизации, упорядочивания и хранения информации может быть множество. Каждый из способов хранения информации отвечает каким-либо специфическим требованиям или предназначен для выполнения каких-либо определенных действий [4].
Основой любой базы данных является модель данных. Модель данных – это совокупность структур данных и операций их обработки. С ее помощью могут быть представлены информационные объекты и их взаимосвязи. Выделяют три основных типа моделей данных: иерархическую, сетевую и реляционную.
- Иерархическая модель представляет собой совокупность элементов, расположенных в порядке их подчинения от общего к частному.
То есть, в иерархической БД каждый объект представляется в виде определенной сущности, то есть, у этой сущности могут быть дочерние элементы, родительские элементы, а у тех дочерних могут быть еще дочерние элементы, но есть один объект, с которого все начинается. Получается своеобразное структурное дерево (граф).
- Сетевые базы данных, являются своеобразной модификацией иерархических баз данных. Отличаются от иерархических лишь тем, что у дочернего элемента может быть несколько предков, то есть, элементов стоящих выше него. Ниже на рисунке 1 приведен пример структуры сетевых баз данных.
- Главной особенностью реляционных баз данных является, то, что объекты внутри таких баз данных хранятся в виде набора двумерных таблиц. То есть, таблица состоит из набора столбцов, в котором может указываться: название, тип данных (дата, число, строка, текст и так далее). Еще одной важной особенность реляционных БД является, то, что число столбцов фиксировано, то есть, структурабазы данных известна заранее, а вот число строк или рядов в реляционных базах данных ничем не ограничено, если говорить грубо, то строки в реляционных базах данных и есть объекты, которые хранятся в базе данных [2].
- ИСТОРИЯ ВОЗНИКНОВЕНИЯ СЕТЕВОЙ МОДЕЛИ ДАННЫХ. ОПИСАНИЕ
На разработку этого стандарта большое влияние оказал американский ученый Чарльз Уильям Бахман. Основные принципы сетевой модели данных были разработаны в середине 60-х годов, эталонный вариант сетевой модели данных описан в отчетах рабочей группы по языкам баз данных (COnference on DAta SYstem Languages) CODASYL в 1971г.
Наиболее известной из таких систем была IDMS корпорации Computer Associates International, Inc [7].
Сетевая модель данных — это логическая модель данных, представляющая их сетевыми структурами типов записей и связанные отношениями мощности один-к-одному или один-ко-многим.
Сети – это естественный способ представления отношений между объектами базы данных и связей между этими объектами. Под словом объекты следует понимать таблицы баз данных или сущности.
Сетевые базы данных опираются на математику графов, конкретнее, сетевую модель данных можно представить в виде ориентированного графа. Направленный граф состоит из узлов и ребер. Узлы направленного графа – это ни что иное, как объекты сетевой базы данных, а ребра такого графа показывают связи между объектами сетевой модели данных, причем ребра показывают не только саму связь, но и тип связи (связь один к одному или связь один ко многим).
Рисунок 1 – Пример структуры сетевой базы данных
В отличие от реляционной модели, связи в ней моделируются наборами, которые реализуются с помощью указателей. Сетевые модели данных являются расширенной версией иерархической модели, однако основным отличием является то, что в сетевых моделях данных имеются указатели в обоих направлениях, которые соединяют родственную информацию.Сетевую модель можно представить, как граф узлами, которого является запись, а ребрами — набор. Сегменты данных в сетевых БД могут иметь множественные связи с сегментами старшего уровня. При этом направление и характер связи в сетевых БД не являются столь очевидными, как в случае иерархических БД. Поэтому имена и направление связей должны идентифицироваться при описании БД.
- СТРУКТУРА СЕТЕВЫХ БАЗ ДАННЫХ
Сетевые базы данных имеют достаточно простую структуру. Структура состоит из четырех компонентов, то есть в сетевой модели используют четыре типа структур данных. Два из которых являются главными и два, если можно так сказать, не главными. Главные типы структур сетевых данных – это запись и набор [6]. Вспомогательные типы структур сетевой модели данных, которые используются для построения главных структур – это элемент данных и агрегат данных, на рисунке 2 представлена вся структура сетевых БД:
Рисунок 2 – Пример структуры сетевых баз данных
Рассмотрим каждую структуру более подробно:
- Элемент данных – это наименьшая информационная именованная единица данных, доступная пользователю, если провести аналогию с файловой системой, то это поле в файловой системе, а если проводить аналогию с реляционной базой данных, то элемент данных – один столбец таблицы реляционной БД. Если говорить точнее, то это подстолбец.
- Агрегат данных – это именованная совокупность данных внутри одной записи. Аналогию с реляционными БД тут не проведешь, поскольку агрегат данных – это столбец над столбцами, который объединяет элементы данных по логике их содержимого, для наглядности выше сказанного, рассмотрим рисунок 3:
Рисунок 3 – Пример агрегата данных сетевой модели данных
На данном рисунке видно, что дата – это агрегат данных структуры сетевой модели, а день, месяц и год – это элемент данных сетевой БД.
- Запись в сетевой модели данных – это конечный уровень обобщения данных, что-то наподобие таблицы в реляционной базе данных. Каждая запись в сетевой базе данных должна обладать или содержать в себе, как минимум один именованный элемент данных, если элементов внутри записи более одного, то каждый элемент данных должен обладать уникальным форматом.
Источник: scienceforum.ru
12.Сетевая субд
Сетевая СУБД — система управления базами данных, поддерживающая сетевую организацию: любая запись, называемая записью старшего уровня, может содержать данные, которые относятся к набору других записей, называемых записями подчиненного уровня.
Типичным представителем является Integrated Database Management System (IDMS) появилась в 70-х годах. Среди отечественных СУБД, основанных на сетевой модели, следует отметить CronosPRO компании Кронос-Информ, представленную в начале 90-х годов.
Сетевой подход к организации данных является расширением иерархического.
Сетевая БД состоит из набора записей и набора связей между этими записями. На формирование связи особых ограничений не накладывается. В иерархических структурах запись-потомок должна иметь в точности одного предка, а в сетевой структуре данных потомок может иметь любое число предков.
Достоинством сетевой модели данных является возможность эффективной реализации по показателям затрат памяти и оперативности. В сравнении с иерархической моделью сетевая модель предоставляет большие возможности в смысле допустимости образования произвольных связей. В рамках сетевых СУБД легко реализуются и иерархические даталогические модели. Сетевые СУБД поддерживают сложные соотношения между типами данных, что делает их пригодными в различных приложениях. Таким образом, к основным преимуществам сетевых СУБД относятся следующие:
обработка больших объемов информации (возможность построения на основе таких СУБД «хранилищ данных»);
поддержка аналитической обработки данных;
эффективная реализация обработки данных по показателям затрат памяти и оперативности.
Пользователи сетевых СУБД ограничены связями, определенными для них разработчиками БД-приложений. Подобно иерархическим, сетевые СУБД предполагают разработку БД приложений опытными программистами и системными аналитиками.
Также к недостаткам сетевой модели данных относится высокая сложность и жесткость схемы БД, построенной на ее основе, а также сложность для понимания и выполнения обработки информации в БД обычным пользователем. Кроме того, в сетевой модели данных ослаблен контроль целостности связей вследствие допустимости установления произвольных связей между записями.
13.Иерархическая субд
Иерархическая СУБД (ИСУБД) — система управления базами данных, использующих в своей основе древовидную структуру.
Каталог СУБД-решений и проектов доступен на TAdviser.
Типичным представителем (наиболее известным и распространенным) является Information Management System (IMS) фирмы IBM. Первая версия появилась в 1968 г. До сих пор существуют базы, которые поддерживаются этой СУБД. Иерархические модели имеют древовидную структуру, где каждому узлу соответствует один сегмент, представляющий собой поименованный линейный кортеж полей данных.
Каждому сегменту соответствует один входной и несколько выходных сегментов. Каждый элемент структуры лежит на единственном иерархическом пути, начинающемся от корневого. Иерархические базы данных наиболее пригодны для моделирования структур, по своей природе являющихся иерархическими.
В качестве примеров можно привести воинские подразделения или сложные механизмы, состоящие из более простых узлов, которые в свою очередь тоже можно подвергнуть декомпозиции. Тем не менее существует значительное количество организаций, не сводящихся к простой иерархии. В этой модели запрос, направленный вниз по иерархии, прост, однако запрос, направленный вверх по иерархии, более сложен. К достоинствам иерархической модели данных относятся эффективное использование памяти ЭВМ и неплохие показатели времени выполнения основных операций над данными. Иерархической базой данных является файловая система, состоящая из корневой директории, в которой имеется древовидная структура поддиректорий и файлов.
Иерархические базы данных — самая ранняя модель представления сложной структуры данных. Информация в иерархической базе организована по принципу древовидной структуры, в виде отношений «предок-потомок». Каждая запись может иметь не более одной родительской записи и несколько подчиненных. Связи записей реализуются в виде физических указателей с одной записи на другую. Основной недостаток иерархической структуры базы данных — невозможность реализовать отношения «много-ко-многим», а также ситуации, когда запись имеет несколько предков.
Графически такую структуру можно изобразить в виде дерева, состоящего из объектов различных уровней. Верхний уровень занимает один объект, второй — объекты второго уровня и так далее.
Между объектами существуют связи, каждый объект может включать в себя несколько объектов более низкого уровня. Такие объекты находятся в отношении предка (объект более близкий к корню) к потомку (объект более низкого уровня), при этом возможно, чтобы объект-предок не имел потомков или имел их несколько, тогда как у объекта-потомка обязательно только один предок. Объекты, имеющие общего предка, называются близнецами.
К основным недостаткам иерархических моделей следует отнести: неэффективность, медленный доступ к сегментам данных нижних уровней иерархии, четкая ориентация на определенные типы запросов и др. Также недостатком иерархической модели является ее громоздкость для обработки информации с достаточно сложными логическими связями, а также сложность понимания для обычного пользователя. Иерархические СУБД быстро прошли пик популярности, которая обусловливалась их ранним появлением на рынке. Затем их недостатки сделали их неконкурентоспособными, и в настоящее время иерархическая модель представляет исключительно исторический интерес.
Источник: studfile.net