СУБД – это пакет программ, позволяющий

- обеспечить пользователей языковыми средствами описания и манипулирования данными;

- обеспечить поддержку логических моделей данных;

- обеспечить операции создания и манипулирования логическими данными и одновременное отображение этих операций над физическими данными;

- обеспечить защиту и целостность данных, поскольку при коллективном режиме работы возможно использование общих физических данных; при этом необходимо обеспечить защиту от некорректных обновлений пользователями, защиту от несанкционированного доступа, защиту данных от разрушений при сбоях оборудования.

 

Модели данных.

Для обеспечения эффективности информационных процессов необходима соответствующая организация данных (таблицы, списки, формы и так далее). Проблематика моделирования данных связана с таким представлением данных, которое наиболее естественно отражает реальный мир и может поддерживаться компьютерными средствами. При этом эти два требования часто противоречат друг другу. Для того, чтобы определить наилучшую организацию данных (с точки зрения конкретного приложения), необходимо установить, какие характеристики данных важны для выражения сущности их значения. Это позволяет сформировать непротиворечивый набор общих формальных утверждений, характеризующих организацию и обработку данных, который и определяет модель данных. Таким образом модель данных – это интеллектуальное средство, позволяющее реализовывать интерпретацию данных в соответствии с указанными требованиями.

Способ отображения сущностей, атрибутов и связей на структуры данных определяется моделью данных. С этой точки зрения принято выделять иерархическую, сетевую и реляционную модели данных. Соответственно говорят о иерархических, сетевых и реляционных СУБД, поддерживающих соответствующие модели данных.

Иерархическая модель позволяет строить базы данных с иерархической древовидной структурой. Эта структура определяется как дерево, образованное попарными связями. На самом верхнем уровне дерева имеется один узел, называемый корнем. Все другие узлы, кроме корня, связываются только с одним узлом на более высоком по отношению к ним самим уровне Например, на рис.5 объект “Организация” - предок для объектов “Отделы” и “Филиалы”. Основное достоинство таких моделей – простота описания иерархических структур реального мира.

 

Если в модели каждый порожденный элемент может иметь более одного исходного, то такая модель называется сетевой. В ней элемент может быть связан с любым другим, без каких либо ограничений. Сетевая БД состоит из набора записей, соответствующих каждому экземпляру объекта предметной области, и набора связей между ними. Например, информация об участии сотрудников в проектах организации может быть представлена в виде сетевой БД (рис.6). В данном примере сетевая модель отражает то, что в проекте могут участвовать разные сотрудники и в то же время сотрудник может участвовать в разных проектах.

Концепция реляционной модели была предложена Коддом в 1970 году. В основе реляционной модели данных лежит понятие отношение (relation). Отношение удобно представляется в виде двумерной таблицы при соблюдении определенных ограничивающих условий. Таблица понятна, обозрима и привычна для использования. Строки таблицы представляют собой отдельные записи – перечень элементов сущности. Столбцы – свойства сущности или атрибуты. При этом одни таблицы служат для описания объектов (объектные отношения), другие – для описания связей между ними (связные отношения).

Оригинальность подхода Кодда состояла в том, что он предложил применять к отношениям стройную систему операций, позволяющих получать одни отношения из других и тем самым разделить информацию на хранимую и вычисляемую. Такой подход не только упрощал представление информации, но и позволял экономить память: в случае необходимости часть информации можно было получать путем вычислений.

Например, для хранения сущности “студент” используется объектное отношение СТУДЕНТ, в котором свойства сущности располагаются в столбцах таблицы:

СТУДЕНТ

Ф. И. О. Дата рождения Курс Специальность
Иванов И.И. 12.03.80 История
Петров П.П. 23.08.81 Физика
Сидоров С.С. 02.10.82 Педагогика

Столбцы отношения называют атрибутамии присваивают им имена. Значения конкретного атрибута выбираются из домена – множества всех возможных значений атрибутов объекта.

В объектном отношении один или несколько атрибутов однозначно идентифицируют отдельный объект. Такой атрибут или совокупность атрибутов называют ключом отношения. В объектном отношении не должно быть строк с одинаковыми ключами. Это одно из требований целостности данных.

Связное отношение хранит ключи двух или более отношений, то есть по ключам устанавливаются связи между объектами отношений. Рассмотрим связное отношение ИЗУЧАЕТ (студент, предмет). При этом в базе данных имеются объектные отношения СТУДЕНТ (Ф.И.О., Курс, Специальность) и ПРЕДМЕТ (Название, Число семестров) со следующими данными:

СТУДЕНТ

Ф. И. О. Курс Специальность
Иванов И.И. История
Петров П.П. Физика
Сидоров С.С. Педагогика

 

ПРЕДМЕТ

Название Число семестров
История
Иностранный язык
Вычислительная техника
Политология

Связное отношение ИЗУЧАЕТ может содержать такие данные:

ИЗУЧАЕТ

Студент Предмет
Иванов И.И. История
Иванов И.И. Политология
Петров П.П. Вычислительная техника
Сидоров С.С. Иностранный язык

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

ИЗУЧАЕТ

Студент Предмет Оценка
Иванов И.И. История
Иванов И.И. Политология
Петров П.П. Вычислительная техника
Сидоров С.С. Иностранный язык

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

В настоящее время на рынке информационных услуг доминируют реляционные модели, что обусловлено рядом причин:

1. наличие развитой теории реляционной модели данных, которая поддерживается теоретическими исследованиями в большей степени по сравнению с другими моделями;

2. наличие аппарата сведения к реляционной других моделей данных;

3. поддержка реляционной моделью специальных средств ускоренного доступа к информации;

4. возможность манипулирования данными без необходимости знания конкретной физической организации БД во внешней памяти;

5. наличие стандартизованного высокоуровневого языка запросов к базам данных.

Предметная область

Уточним понятие предметной области. Она является базовым понятием в теории информационных систем и баз данных и не имеет строгого определения. Чтобы уточнить его смысл введем понятия объект и предмет.

Объект – то, что существует вне нас и независимо от нашего сознания, явление внешнего мира, материальной действительности.

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

Предмет – объект, ставший носителем определенной совокупности свойств и входящий в различные взаимоотношения, которые представляют интерес для потребителей информации. Один и тот же объект может восприниматься разными системами как разные предметы. Таким образом, предмет – это модель реального объекта.

Совокупность объектов, информация о которых представляет интерес для пользователя, образует объектное ядро предметной области.

Понятие “предметная область” соответствует точке зрения потребителя информации на объектное ядро, при которой выделяются только те свойства объектов и взаимосвязи между ними, которые представляют определенную прагматическую ценность и должны быть зафиксированы в базе данных. Таким образом, предметная область (ПО)представляет собой абстрактную картину реальной действительности, определенная часть которой фиксируется в качестве модели фрагмента действительности.

В каждый момент времени ПО находится в одном из состояний, которое характеризуется совокупностью объектов и их взаимосвязей. С течением времени одни объекты исчезают, другие появляются, то есть предметная область – это система, состоящая из определенной последовательности состояний.

Введем пространство состояний s0,s1,...,st, состоящее из траекторий или последовательности состояний, в которых находится ПО в моменты времени 0,1,...,t. Очевидно, что члены этой последовательности не могут быть совершенно произвольными и текущее состояние системы зависит от предшествующего состояния. Поэтому предметную область можно определить как класс всех действительно возможных последовательностей состояний. Такие последовательности называются траекториями ПО, а совокупность всех общих свойств траекторий называется семантикой ПО.

Поскольку объектное ядро ПО содержит бесконечное множество объектов, которые находятся в потенциальном множестве взаимосвязей, прямой подход к описанию ПО невозможен. В теории баз данных существуют достаточно универсальные средства описания ПО. Им присуща абстрактность системы базисных метапонятий и правил порождения новых понятий, которые допускают интерпретацию в любой ПО. В силу абстрактности средства описания стали называть концептуальными. Поэтому в теории БД принято говорить о концептуальном или информационно-логическом моделировании предметной области. Результатом процесса моделирования является концептуальная схема (модель) ПО.