Не реляционные модели данных. Примеры реализации

Концепция баз данных

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

· Отчуждение данных от программ

· Хранение описания данных вместе с самими данными

· Отчуждение данных от носителей

· Поддержание баз данных в актуальном состоянии

· Защита информации от сбоев аппаратуры

· Поддержка многопользовательской работы

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

 

Не реляционные модели данных. Примеры реализации.

(не нашел у Фомина)

Модели данных (главные А и Б):

А) Иерархическая

Б) Сетевая

В) Объектно – ориентированная (обрабатывает данные как абстрактные объекты, наделённые свойствами и использующие методы взаимодействия с другими объектами окружающего мира)

Г) Объектно – реляционная (объекты, классы и наследование реализованы в структуре баз данных и языке запросов.)

 

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

· Сущность ИМ: атрибут (элемент данных), запись – именованная совокупность атрибутов, тип записи определяется совокупностью ее атрибутов, групповое отношение – иерархическое отношение между записями двух типов, главная и подчиненные записи, потомок имеет ровно одного предка.

· ИМ – связный неориентированный граф древовидной структуры

· Иерархическая БД – упорядоченный набор деревьев

· В реляционной модели отношения между атрибутами записей

· Корневая запись каждого дерева обязательно должна содержать ключ с уникальным значением

· Ключи некорневых записей должны иметь уникальное значение только в рамках своего группового отношения

· Каждая запись идентифицируется полным сцепленным ключом – совокупность ключей всех записей от корневой по пути в иерархии

Особенности ИМ

· Удобно представляются иерархические данные

· В иерархической модели представляются отношения 1:N

· При наличии нескольких зависимостей возникает дублирование данных (вместо одного дерева строятся два или больше), например при представлении отношений N:N

 

Операции над данными в ИМ

· Добавление записи – для корневой записи формирование ключа

· Изменения данных записи – атрибуты ключа не должны меняться

· Удаление записи – удаляются все подчиненные записи

· Выборка: корневой записи по ключу; следующей записи в выбранном дереве

· Запросы «вниз» и «вверх» по дереву

 

Целостность данных

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

· Нет связей между разными групповыми отношениями

 

 

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

· Определяется в тех же терминах, что и ИМ

· Запись может быть членом более чем одного группового отношения

· Каждое групповое отношение именуется и проводится различие между его типом и экземпляром: тип группового отношения задается его именем и определяет свойства общие для всех экземпляров данного типа; экземпляр группового отношения представляется записью-владельцем и множеством (возможно пустым) подчиненных записей

· ИМ может быть представлена с помощью СМ

 

Свойства групповых отношений в СМ

· Способ упорядочения подчиненных записей: произвольный, хронологический, сортированный

· Режим включения подчиненных записей: автоматический, ручной

· Режим исключения: фиксированное – подчиненная запись жестко связана с главной, ее можно исключить из группового отношения только удалив, при удалении главной записи удаляются все подчиненные; обязательное -0 допускается переключение подчиненной записи на другую главную, но невозможно ее существование без владельца; необязательное

Операции над данными в СМ

· Добавление записи

· Включение записи в групповое отношение

· Исключение записи из группового отношения

· Переключение записи

· Изменение полей записи

· Удаление записи

· Выборка данных

 

Ограничение целостности как в ИМ

Пример нереляционных СУБД: NoSQL, InterSystem Cache(иерархическая), AllegroGraph(сетевая)