База данных (БД) — именованная совокупность данных, отражающая состояние объектов и их отношений в рассматриваемой предметной области, или иначе БД — это совокупность взаимосвязанных данных при такой минимальной избыточности, которая допускает их использование оптимальным образом для одного или нескольких приложений в определенной предметной области. БД состоит из множества связанных файлов.
Система управления базами данных (СУБД) — совокупность языковых и программных средств, предназначенных для создания, ведения и совместного использования БД многими пользователями.
Автоматизированная информационная система (АИС) — это система, реализующая автоматизированный сбор, обработку, манипулирование данными, функционирующая на основе ЭВМ и других технических средств и включающая соответствующее программное обеспечение (ПО) и персонал. В дальнейшем в этом качестве будет использоваться термин информаци-I онная система (ИС), который подразумевает понятие автоматизированная.
ИС может функционировать самостоятельно или служить компонентом более сложной системы.
Модель данных — это некоторая абстракция, в которой отражаются самые важные аспекты функционирования выделенной предметной области, а второстепенные — игнорируются. Модель данных включает в себя набор понятий для описания данных, связей между ними и ограничений, накладываемых на данные. В модели данных различают три главные составляющие:
1) структурную часть, определяющую правила порождения допустимых для данной СУБД видов структур данных;
2) управляющую часть, определяющую возможные операции над такими структурами;
3)классы ограничений целостности данных, которые могут быть реализованы средствами этой системы.
Могут спросить :
4.1. Классификация моделей данных
В настоящее время описано много разнообразных моделей, построение которых преследует разные цели. Из множества опубликованных моделей данных можно выделить три категории:
□ объектные модели данных;
□ модели данных на основе записей;
□ физические модели данных.
Применительно к трехуровневой архитектуре баз данных следует отметить, что первые две категории используются для описания данных на внешнем и концептуальном уровнях, а последняя категория — на внутреннем уровне.
4.1.1. Объектные модели данных
Среди объектных моделей следует выделить ER-модель, которая наиболее часто используется в методологии проектирования баз данных (подробно рассматривалась в предыдущей главе), а также объектно-ориентированную модель, последнее время широко используемую в технологиях баз данных. Объектно-ориентированная модель расширяет понятие объекта, используемое в главе 3, включая в него не только атрибуты, характеризующие состояние объект, но и связанные с ним действия. Объектно-ориентированной модели посвящен целый раздел главы 11.
4.1.2. Модели данных на основе записей
В модели данных на основе записей база данных состоит из нескольких записей фиксированного формата, которые могут иметь разные типы.
В большинстве коммерческих СУБД используются ставшие классическими два типа такого рода моделей данных: теоретико-графовые (ТГ) и теоретико-множественные (ТМ) модели данных.
К теоретико-графовым моделям относятся две разновидности:
□ сетевые модели;
□ иерархические модели.
В таких моделях данных предусматриваются характерные для подобного рода структур операции навигации и манипулирования данными.
4.2. Сетевая модель
Сети — естественный способ представления отношений между объектами, всевозможных их взаимосвязей. Сетевая модель опирается на математическую структуру, которая называется направленным графом. Направленный граф состоит из узлов, соединенных ребрами. В контексте моделей данных узлы представляют собой объекты в виде типов записей данных, а ребра — связи между объектами со степенью кардинальности "один к одному" или "один ко многим". Если говорить более точно, сетевая БД состоит из набора экземпляров каждого типа из заданного в схеме БД набора типов записей и набора экземпляров каждого типа из заданного набора типов связи.
Основное отличие графовых форм представления данных в сетевой структуре данных от иерархической структуры данных состоит в том, что потомок в графе может иметь любое число предков. Таким образом, сетевая модель данных, снимая основное ограничение уже использующейся к тому времени иерархической структуры данных, является результатом действий по обобщению ситуаций моделирования существующих реалий и попыток установления подробных стандартов в этой области.
Хотя знакомство с теоретико-графовыми моделями начато с рассмотрения сетевой модели данных, следует подчеркнуть, что ей предшествовала во времени иерархическая модель данных. Первой же в книге сетевая модель данных представляется потому, что, как будет показано позже, иерархическая модель данных является частным случаем сетевой и основные ее положения проще объяснить с точки зрения общего представления.
Сетевая модель имеет богатую историю и является основой нескольких удачных СУБД. Если говорить о практической реализации сетевой модели данных, то в первую очередь необходимо упомянуть одну из самых первых СУБД — Integrated Data Store (IDS), созданную компанией General Electric. Именно архитектура этой СУБД легла в основу деятельности группы Database Task Group (DTBG), которой конференция по языкам систем данных (CODASYL) в конце 60-х годов поручила разработать стандарты систем управления базами данных. Отчет по этой работе, рекомендовавший к использованию сетевую модель данных, был представлен в Американский национальный институт стандартов в 1971 году для возможного принятия в качестве национального стандарта СУБД. Этот документ в дальнейшем послужил основой при разработке других сетевых систем управления базами данных и сейчас остается главной формулировкой сетевой модели.
Разработанная сетевая модель DTBG имеет трехуровневую архитектуру, соответствующую рекомендациям ANSI/SPARC следующим образом. Концептуальный уровень, определяющий глобальную структуру базы данных, называется схемой.
Реляционная модель данных.
В настоящее время реляционный подход к построению информационных систем является наиболее распространенным. К числу достоинств реляционного подхода можно отнести:
□ наличие небольшого набора абстракций, которые позволяют сравнительно просто моделировать большую часть распространенных предметных областей и допускают точные формальные определения, оставаясь интуитивно понятными;
□ наличие простого и в то же время мощного математического аппарата, опирающегося главным образом на теорию множеств и математическую логику и обеспечивающего теоретический базис реляционного подхода к организации БД;
□ возможность ненавигационного манипулирования данными без необходимости знания конкретной физической организации баз данных во внешней памяти.