Модели данных (сетевые, иерархические, реляционные).
Разговор о моделях данных нельзя вести, не внеся ясность в сами понятия «данные» и «модель данных», которые являются основополагающими в концепции баз данных.
Данные можно определить как набор некоторых конкретных значений, характеризующих любой из описываемых объектов – например, Ауди ТТ, 2008 год выпуска.
Модель данных – некоторая абстракция, которая, будучи приложенной к конкретным данным, позволяется трактовать их уже как информацию, то есть модель – это не только данные, но и связи между ними.
За время развития баз данных выделились основные модели данных: сетевые, иерархические, реляционные.
Стандарт сетевой модели впервые был определен в 1975 году организацией CODASYL (Conference of Data System Languages), которая определила базовые понятия и формальный язык описания.
Основными объектами сетевой модели являются:
- элемент данных;
- агрегат данных;
- запись;
- набор данных.
Элемент данных – это минимальная единица информации, доступная пользователю с помощью СУБД.
Агрегат данных определяет следующий уровень обобщения в модели. Определены два вида агрегатов: агрегат типа вектор и агрегат типа повторяющаяся группа. Каждый агрегат имеет имя. Агрегат типа вектор соответствует линейному набору элементов данных (фактически, это строчка таблицы). Агрегат типа повторяющаяся группы соответствует совокупности векторов данных (то есть уже целой таблице).
Записью называет совокупность агрегатов или элементов данных, моделирующая некоторый класс объектов реального мира. Набором называют двухуровневый граф, связывающий отношением «один-ко-многим» два типа записи. Фактически набор отражает иерархическую связь между двумя типами записей, родительская запись называется владельцем набора, а подчиненная – членом набора. Между двумя записями может быть определено любое число наборов.
Модель поддерживает язык описания данных и язык манипулирования данными. Операции манипулирования в сетевой модели делятся на навигационные операции и операции модификации.
Иерархическая модель данных является наиболее простой из даталогических моделей. Исторически она появилась первой среди всех даталогических моделей, именно ее поддерживает первая из зарегистрированных промышленных СУБД IMS фирмы IBM.
Основными информационными единицами являются база данных, сегмент и поле. Поле – это минимальная неделимая единица данных, доступная пользователю с помощью СУБД. Сегмент (который в терминологии Data Base Task Group, DBTG называют записью) определяет два понятия – тип сегмента (записи) и экземпляр сегмента (записи).
Тип сегмента – это именованная совокупность типов элементов данных, в него входящих. Экземпляр сегмента образуется из конкретных значений полей или элементов данных, в него в ходящих. Каждый тип сегмента образует набор однородных записей.
В иерархической модели сегменты объединяются в ориентированный древовидный граф. При этом полагают, что направленные ребра графа отражают иерархические связи между сегментами (родительскому по иерархии экземпляру сегмента может соответствовать множество экземпляров подчиненного сегмента). Схема иерархической базы данных представляет собой совокупность отдельных деревьев, каждое из которых называется физической базой данных. Каждая физическая база данных удовлетворяет иерархическим ограничениям:
- у нее существует один корневой сегмент, у которого нет родителя;
- каждый сегмент может быть связан с произвольным числом подчиненных сегментов;
- каждый подчиненный сегмент может иметь только одного родителя.
В рамках иерархической модели выделяют языковые средства описания данных (Data Definition Language, DDL) и манипулирования данными (Data Manipulation Language, DML).
Реляционная модель – яркий представитель теоретико-множественных моделей данных. Теоретические основы модели заложили логики Чарльз Содерс Пирс (1839 – 1914) и Эрнст Шредер (1841 – 1902). Основной структурой данных в реляционной модели является отношение – подмножество декартова произведения исходных множеств, называемых доменами. Каждое отношение моделирует определенную реальную ситуацию и имеет очень простое графическое изображение в виде таблицы, столбцами которой являются имена доменов, а строками – наборы значений, взятых из этих доменов. Вхождение домена в отношение называется атрибутом.
В отличие от теоретико-графовых моделей связи в реляционной модели поддерживаются неявно. В каждой иерархической связи одно отношение может выступать как родительское, а другое как подчиненное. Это означает, что одна строчка (кортеж) родительского отношения может быть связана с множеством кортежей подчиненного отношения. Для обеспечения такого рода связей оба отношения должны содержать атрибуты, по которым они связаны. В родительском отношении таким атрибутом служит первичный ключ (уникальный атрибут или набор атрибутов, позволяющий единственным образом идентифицировать каждый кортеж отношений). В подчиненном отношении должен присутствовать набор атрибутов, соответствующий первичному ключу родительского отношения. В этом случае он будет называться внешним ключом.
В реляционной модели определен набор операций, составляющих реляционную алгебру. Разработал основы реляционной алгебры Э. Ф. Кодд, который предложил 8 операций – 4 теоретико-множественные и 4 специальные.
Администратор 5 сентября, 2010 в 00:12:05
Не только. Отличие в принципе в наличии иерархии: "Каждая физическая база данных удовлетворяет иерархическим ограничениям:
- у нее существует один корневой сегмент, у которого нет родителя;
- каждый сегмент может быть связан с произвольным числом подчиненных сегментов;
- каждый подчиненный сегмент может иметь только одного родителя."
Ян ОПИ(Э) 07 5 октября, 2009 в 14:42:13
В чем заключается разница между сетевой и иерархической моделями данных? (Верно ли? - Разница между иерархической моделью данных и сетевой состоит в том, что в иерархических структурах запись-потомок должна иметь в точности одного родителя, а в сетевой структуре данных у потомка может иметься любое число родителей).
Добавить комментарий