Субд – это пакет программ, позволяющий
обеспечить пользователей языковыми средствами описания и манипулирования данными;
обеспечить поддержку логических моделей данных;
обеспечить операции создания и манипулирования логическими данными и одновременное отображение этих операций над физическими данными;
обеспечить защиту и целостность данных, поскольку при коллективном режиме работы возможно использование общих физических данных; при этом необходимо обеспечить защиту от некорректных обновлений пользователями, защиту от несанкционированного доступа, защиту данных от разрушений при сбоях оборудования.
Модели данных.
Для обеспечения эффективности информационных процессов необходима соответствующая организация данных (таблицы, списки, формы и так далее). Проблематика моделирования данных связана с таким представлением данных, которое наиболее естественно отражает реальный мир и может поддерживаться компьютерными средствами. При этом эти два требования часто противоречат друг другу. Для того, чтобы определить наилучшую организацию данных (с точки зрения конкретного приложения), необходимо установить, какие характеристики данных важны для выражения сущности их значения. Это позволяет сформировать непротиворечивый набор общих формальных утверждений, характеризующих организацию и обработку данных, который и определяет модель данных. Таким образом модель данных – это интеллектуальное средство, позволяющее реализовывать интерпретацию данных в соответствии с указанными требованиями.
Способ отображения сущностей, атрибутов и связей на структуры данных определяется моделью данных. С этой точки зрения принято выделять иерархическую, сетевую и реляционную модели данных. Соответственно говорят о иерархических, сетевых и реляционных СУБД, поддерживающих соответствующие модели данных.
Иерархическая модель позволяет строить базы данных с иерархической древовидной структурой. Эта структура определяется как дерево, образованное попарными связями. На самом верхнем уровне дерева имеется один узел, называемый корнем. Все другие узлы, кроме корня, связываются только с одним узлом на более высоком по отношению к ним самим уровне Например, на рис.5 объект “Организация” - предок для объектов “Отделы” и “Филиалы”. Основное достоинство таких моделей – простота описания иерархических структур реального мира.
Если в модели каждый порожденный элемент может иметь более одного исходного, то такая модель называется сетевой. В ней элемент может быть связан с любым другим, без каких либо ограничений. Сетевая БД состоит из набора записей, соответствующих каждому экземпляру объекта предметной области, и набора связей между ними. Например, информация об участии сотрудников в проектах организации может быть представлена в виде сетевой БД (рис.6). В данном примере сетевая модель отражает то, что в проекте могут участвовать разные сотрудники и в то же время сотрудник может участвовать в разных проектах.
Концепция реляционной модели была предложена Коддом в 1970 году. В основе реляционной модели данных лежит понятие отношение (relation). Отношение удобно представляется в виде двумерной таблицы при соблюдении определенных ограничивающих условий. Таблица понятна, обозрима и привычна для использования. Строки таблицы представляют собой отдельные записи – перечень элементов сущности. Столбцы – свойства сущности или атрибуты. При этом одни таблицы служат для описания объектов (объектные отношения), другие – для описания связей между ними (связные отношения).
Оригинальность подхода Кодда состояла в том, что он предложил применять к отношениям стройную систему операций, позволяющих получать одни отношения из других и тем самым разделить информацию на хранимую и вычисляемую. Такой подход не только упрощал представление информации, но и позволял экономить память: в случае необходимости часть информации можно было получать путем вычислений.
Например, для хранения сущности “студент” используется объектное отношение СТУДЕНТ, в котором свойства сущности располагаются в столбцах таблицы:
СТУДЕНТ
Ф. И. О. |
Дата рождения |
Курс |
Специальность |
Иванов И.И. |
12.03.80 |
4 |
История |
Петров П.П. |
23.08.81 |
3 |
Физика |
Сидоров С.С. |
02.10.82 |
2 |
Педагогика |
Столбцы отношения называют атрибутами и присваивают им имена. Значения конкретного атрибута выбираются из домена – множества всех возможных значений атрибутов объекта.
В объектном отношении один или несколько атрибутов однозначно идентифицируют отдельный объект. Такой атрибут или совокупность атрибутов называют ключом отношения. В объектном отношении не должно быть строк с одинаковыми ключами. Это одно из требований целостности данных.
Связное отношение хранит ключи двух или более отношений, то есть по ключам устанавливаются связи между объектами отношений. Рассмотрим связное отношение ИЗУЧАЕТ (студент, предмет). При этом в базе данных имеются объектные отношения СТУДЕНТ (Ф.И.О., Курс, Специальность) и ПРЕДМЕТ (Название, Число семестров) со следующими данными:
СТУДЕНТ
Ф. И. О. |
Курс |
Специальность |
Иванов И.И. |
4 |
История |
Петров П.П. |
3 |
Физика |
Сидоров С.С. |
2 |
Педагогика |
ПРЕДМЕТ
Название |
Число семестров |
История |
4 |
Иностранный язык |
3 |
Вычислительная техника |
2 |
Политология |
2 |
Связное отношение ИЗУЧАЕТ может содержать такие данные:
ИЗУЧАЕТ
Студент |
Предмет |
Иванов И.И. |
История |
Иванов И.И. |
Политология |
Петров П.П. |
Вычислительная техника |
Сидоров С.С. |
Иностранный язык |
Связанное отношение кроме связываемых ключей может иметь и другие атрибуты:
ИЗУЧАЕТ
Студент |
Предмет |
Оценка |
Иванов И.И. |
История |
5 |
Иванов И.И. |
Политология |
4 |
Петров П.П. |
Вычислительная техника |
4 |
Сидоров С.С. |
Иностранный язык |
5 |
Ключи в связных отношениях называются внешними ключами, поскольку они являются первичными в других отношениях. С помощью внешних ключей поддерживается взаимосвязь таблиц в реляционной модели.
В настоящее время на рынке информационных услуг доминируют реляционные модели, что обусловлено рядом причин:
наличие развитой теории реляционной модели данных, которая поддерживается теоретическими исследованиями в большей степени по сравнению с другими моделями;
наличие аппарата сведения к реляционной других моделей данных;
поддержка реляционной моделью специальных средств ускоренного доступа к информации;
возможность манипулирования данными без необходимости знания конкретной физической организации БД во внешней памяти;
наличие стандартизованного высокоуровневого языка запросов к базам данных.
