Уровни представления данных
Существует три уровня представления данных: уровень пользователя (предметная область), логический и физический.
Каждый объект предметной области характеризуется своими атрибутами, каждый атрибут имеет имя и значение. Например, объект осциллограф. Имена его атрибутов — частота повторения, чувствительность, полоса пропускания; значения атрибутов — соответствующие значения параметров. Или объект транзистор, имена его атрибутов — наименования параметров, значения атрибутов — значения параметров и т. д.
Логический (концептуальный) уровень — это абстрактное представление (абстрактный уровень) данных, независимое от представления в ЭВМ.
Физический уровень — это практическая реализация базы данных на том или ином носителе в ЭВМ. Сюда входят и программные средства управления этими носителями.
Связь между этими тремя уровнями представления данных показана в таблице 10.1.
Таблица 10.1. Предметная область Логический уровень Физический уровень
Вся предметная область Библиотека База данных
Подмножество объектов предметной области Запись Список
Атрибут имя Поля имя поля Элемент (сегмент)
значение значение поля
Вся совокупность информации, описывающей один объект предметной области на логическом уровне, называется записью. Запись полностью характеризует объект и все его атрибуты.
Совокупность записей об одной и той же категории объектов образует файл. Запись состоит из полей, каждое поле соответствует одному из атрибутов. Содержание поля описывает имя и значение соответствующего атрибута.
На физическом уровне каждой записи соответствует одна ячейка — область памяти на том или ином носителе, размер которой должен быть достаточен для хранения записи. Каждому полю, описывающему атрибут объекта, соответствует элемент на конкретном носителе; элемент может быть разделен на сегменты.
Совокупность ячеек образует список, соответствующий одному файлу на логическом уровне. Каждая ячейка имеет ключевое поле; если номера ячеек возрастают, то файл называют ранжированным. Бывают пустые ячейки; тогда список называют неплотным.
Совокупность файлов на логическом уровне называют библиотекой, соответствующей конкретной рассматриваемой предметной области. На физическом уровне библиотеке соответствует база данных.
На логическом уровне данные могут быть представлены тремя способами. В настоящее время существует три модели данных: реляционная, сетевая и иерархическая.
В основу реляционной модели положено понятие теоретико-множественного отношения (реляции), которое представляется в виде таблицы. Она является наиболее удобным инженерным представлением для пользователя (рис. 10.3а). Каждый столбец ее соответствует атрибуту объекта, и ему присваивается соответствующее имя. В столбцах таблицы (отношения) вводятся значения атрибутов. Используя отношения связи и язык реляционной алгебры, можно осуществлять выбор любого подмножества информации: по строкам, столбцам или другим признакам. Применяя операции "разрезания" и "склеивания" отношений, можно получить разнообразные файлы в нужной форме (рис. 10.3б).
При использовании реляционной модели атрибут объекта может сам выступать как объект другой предметной области, т.е. задействуется относительность (отсюда — отношение) понятий объекта и его атрибутов.
Иерархическая модель данных — это некоторая их совокупность, состоящая из отдельных деревьев, в которых все связи направлены от одного сегмента, называемого исходным, к нескольким порожденным, т. е. реализуются связи типа "один ко многим" (рис. 10.4а). Сегмент — это одно или несколько полей, являющихся основной единицей обмена между прикладной программой и языком описания данных. При реализации иерархической системы каждое дерево описывается в виде отдельного файла данных.
Сетевая модель данных является более общей структурой по сравнению с иерархической. Каждый отдельный сегмент (ячейка) может иметь произвольное число непосредственных исходных (старших) сегментов, а также и произвольное число порожденных (младших) (рис. 10.4б).
Рис. 10.3. Пример (а) и общий вид (б) реляционной модели данных
Это обеспечивает представление отношения "многие к многим". Сетевые структуры могут быть описаны с помощью раскрашенных файлов.
Рис. 10.4. Иерархическая (а) и сетевая (б) модели данных
Модели данных необходимо сравнивать по следующим показателям: легкость применения для программиста и пользователя, эффективность реализации по объему памяти и времени поиска информации.
Наиболее легка в использовании реляционная модель; сетевая требует от программиста и пользователя понимания типов записей, связей и их отношений. В то же время сетевая и иерархическая модели возникли исторически раньше и реализованы на языках низкого уровня (Ассемблер, Макрокод и др.). Примеры сетевых БД — КОДАСИЛ — ADABAS, Квант и др.; иерархической — IMS.
Реляционные базы данных реализованы на языках высокого уровня и в ряде стран приняты в качестве национального стандарта. К ним относятся ALPHA, QBE, RISS, SEQVEI, dBASE, FRAMEWORK.
Дата добавления: 2015-01-29; просмотров: 2041;