Классификация баз данных
Различаются централизованные и распределенные базы данных. Централизованная база данных хранится в памяти одной вычислительной системы. Если эта вычислительная система является компонентом сети ЭВМ, возможен распределенный доступ к такой базе данных – доступ к ней пользователей различных ЭВМ данной сети. Такой способ использования баз данных часто применяют в локальных сетях персональных ЭВМ. Появление сетей ЭВМ позволило наряду с централизованными создавать и распределенные базы данных. Распределенная база данных состоит из нескольких, возможно, пересекающихся или даже дублирующих друг друга частей, хранимых в различных ЭВМ вычислительной сети. Однако пользователь распределенной базы данных не обязан знать, каким образом ее компоненты размещены в узлах сети, и представляет себе эту базу данных как единое целое. Работа с такой базой данных осуществляется с помощью системы управления распределенной базой данных (СУРБД). Данные, содержащиеся в распределенной базе данных, их представление на всех уровнях архитектуры СУРБД и размещение в сети описываются в системном справочнике, который сам может быть декомпозирован и размещен в различных узлах сети. Части распределенной базы данных, размещенные на отдельных ЭВМ сети, управляются собственными (локальными) СУБД и могут использоваться одновременно как самостоятельные локальные базы данных. Локальные СУБД не обязательно должны быть одинаковыми в разных узлах сети. Объединение неоднородных локальных баз данных в единую распределенную базу данных является сложной научно-технической проблемой. Ее решение потребовало проведения большого комплекса научных исследований и экспериментальных разработок. Базы данных можно разделить на 1. базы данных первого поколения: иерархические, сетевые; 2. второго поколения:реляционные; 3. третьего поколения:объектно-ориентированные, объектно-реляционные.
Модели данных
Способ отображения сущностей, атрибутов и связей на структуры данных определяется моделью данных. Существуют 4 основные модели данных – 1. списки, 2. реляционные базы данных, 3. иерархические и 4. сетевые структуры.
Рассмотрим их подробнее. Самый простой тип – это список – структура данных в виде линейной последовательности. Древовидные иерархические структуры широко используются в повседневной человеческой деятельности. Иерархические модели данных базируются на использовании графовой и табличной форм представления данных. В графической диаграмме схемы базы данных вершина графа используется для интерпретации типов сущностей, а дуги – для интерпретации типов связей между типами сущностей. При реализации вершины представляются таблицами описаний экземпляров сущностей соответствующего типа. На рис. 3 показан пример иерархической древовидной структуры БД.
Рис. 3. Иерархическая древовидная структура БД
Основными внутренними ограничениями иерархической модели данных являются следующие: – все типы связей должны быть функциональными, т.е. 1:1, 1:М, М:1; – структура связей должна быть древовидной. Результатом действия этих ограничений является ряд особенностей процесса структуризации данных в иерархической модели. Древовидная структура, или дерево, – это связный неориентированный граф, который не содержит циклов.
Обычно при работе с деревом выделяют какую-то конкретную вершину, определяют ее как корень дерева и рассматривают особо – в эту вершину не заходит ни одно ребро. В этом случае дерево становится ориентированным. Ориентация обычно определяется от корня. Корневое дерево как ориентированный граф можно определить следующим образом: – имеется единственная особая вершина, называемая корнем, в которую не заходит ни одно ребро; – во все остальные вершины заходит только одно ребро, а исходит произвольное количество ребер; – нет циклов. Иерархическая древовидная структура, ориентированная от корня, удовлетворяет следующим условиям: – иерархия всегда начинается с корневого узла; – на первом уровне иерархии может находиться только корневой узел; – на нижних уровнях находятся порожденные (зависимые) узлы; – каждый порожденный узел, находящийся на уровне L, связан только с одним непосредственно исходным узлом (непосредственно родительским узлом), находящимся на более верхнем (L – 1)-м уровне иерархии дерева; – каждый исходный узел может иметь один или несколько непосредственно порожденных узлов, называемых подобными; – доступ к каждому порожденному узлу выполняется через его непосредственно исходный узел; – существует единственный иерархический путь доступа к узлу начиная от корня дерева (рис. 4).
Рис. 4. Иерархический путь доступа к узлу Другими словами, иерархическая модель представления знаний (или дерево) – структура данных, в которой каждый узел имеет только одного “родителя”, т.е. господствующий узел (кроме самого верхнего узла) и неограниченное количество “потомков”, т.е. узлов, над которыми данный узел господствует. Сетевые модели данных также базируются на использовании графовой формы представления данных. Вершины графа используются для интерпретации типов сущностей, а дуги – типов связей. Сетевая модель представления знаний – структура данных, в которой каждый объект, в отличие от иерархического представления, может иметь более одного господствующего узла (рис. 5).
Модель «Сущность -связь» (Entity-Relatonship) Модель «сущность-связь» представляет собой высокоуровневую концептуальную модель данных, которая была разработана Питером Ченом (Chen) в 1976 г. с целью упрощения задачи проектирования БД. Данная модель представляет собой набор концепций, которые описывают структуру БД и связанные с ней транзакции обновления и извлечения данных. Основная цель разработки высокоуровневой модели данных заключается в создании модели пользовательского восприятия данных и согласования большого количества технических аспектов, связанных с проектированием БД. Концептуальная схема предметной области - это непротиворечивая совокупность высказываний, истинных для данной ПО, включая возможные состояния, классификации, законы, правила. Модель Сущность-связь использует три основных конструктивных элемента: - Сущность - Атрибут - Связь Сущность – это некоторая абстракция реально существующего объекта, процесса или явления, о котором необходимо хранить информацию в системе. Сущности –это и объекты внешнего мира, и объекты мышления, и средства представления объектов и взаимосвязи между сущностями. Сущность – это любой конкретный или абстрактный объект, включая связи между объектами. Для того, чтобы внести порядок в этот клубок сущностей вводится понятие типа сущности (имени сущности), как концептуальный идентификатор некоторого множества сущностей. Например, КНИГА – это может быть множество всех книг вообще, книг в данной библиотеке, книг у отдельного читателя и т.д. Определение множества сущностей, имеющих данный тип зависит от конкретной предметной области. Однако будем считать, что про каждый объект, который принадлежит или будет принадлежать данной предметной области можно выяснить, имеет он данный тип или нет. Отсюда следует, что: Тип сущности (entity type) - это некоторый предикат, позволяющий проверить, имеет ли некоторая сущность данный тип. Причем область определения предиката меняется со временем и не может быть задана для любых моментов времени сразу (например, нельзя определить количество работников фирмы в 2030 г.) Экземпляром сущности называется конкретный объект данного типа сущности. Например, для типа сущности КНИГА, экземпляром является книга Л.Толстого «Война и мир» Тип сущности характеризуется независимым существованием и может быть объектом с физическим (или реальным) существованием, или объектом с концептуальным (или абстрактным) существованием.
|