<<
>>

Структуры данных

Структуризация данных базируется на концепциях «агрегации» и «обобщения». Например, в файловых системах, реализующих модель «плоский файл», понятийный базис состоит из четырех основных типов логических структур данных:

• поле — наименьшая поименная единица данных;

• запись — поименованная совокупность полей;

• файл — поименованная совокупность экземпляров записей одного типа;

• набор файлов (или библиотека) — поименованная совокупность файлов, обрабатываемых в системе.

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

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

Широко распространена терминология, предложенная КОДАСИЛ (CODASYL — the Conference on Data Systems Languages) — Ассоциацией по языкам систем обработки данных

Рис. 2.1. Структура данных в модели КОДАСИЛ

(рис. 2.1). Схема рисунка определяет порядок композиции структур данных этой модели.

Элемент данных — наименьшая поименованная единица данных (аналог «поля» в файловых системах), к которой СУБД может адресоваться непосредственно и с помощью которой выполняется построение всех остальных структур. Имя элемента данных используют для его идентификации в схеме структуры данных высокого уровня. Значение элемента данных может быть числового (целый, вещественный) и нечислового (символьный, логический) типа.

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

Агрегат данных — поименованная совокупность элементов данных внутри записи, которую можно рассматривать как единое целое. Агрегат данных бывает простым или составным. Различают агрегаты типа «вектор» и типа «повторяющаяся группа». Агрегат, повторяющийся компонент которого является просто элементом данных, называется вектором. Агрегат, повторяющийся компонент которого представлен совокупностью данных, называется повторяющейся группой.

Запись — поименованная совокупность элементов данных или элементов данных и агрегатов — это агрегат, не входящий в состав никакого другого агрегата. Запись может иметь сложную иерархическую структуру, поскольку допускается многократное применение агрегации.

Набор — поименованная совокупность записей, образующих двухуровневую иерархическую структуру. Каждый тип набора представляет собой отношение (связь) между двумя или несколькими типами записей. Для каждого типа набора один тип записи может быть объявлен владельцем набора, тогда остальные типы записи объявляются членами набора. Каждый экземпляр набора должен содержать только один экземпляр записи типа записи-владельца и столько экземпляров записей типа записи-члена, сколько их связано с записью-владельцем. Основное назначение набора — представление связей между записями. Если запись используется для представления сущности, то набор для представления связей между рассматриваемыми сущностями представляют записями, входящими в набор. В схеме набора задают типы составляющих его записей, определяют тип записи- владельца и типы записей-членов, присваивают имя набору. Тип набора является основным композиционным элементом, с помощью которого строится структура всей базы данных в модели КОДАСИЛ. Заметим, что в данном случае термин не является аналогом набора файлов.

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

Выше рассмотрены структуры модели данных КОДАСИЛ. Однако не во всех СУБД используют рассмотренную терминологию. Поэтому при рассмотрении МД часто бывает удобным использовать следующую терминологию: элемент данных; группа; групповое отношение; БД.

Элемент данных соответствует определению, приведенному в терминологии КОДАСИЛ.

Понятие «группа» одновременно соответствует и понятию «агрегат», и понятию «запись». Различают простую, составную и повторяющуюся группы.

Групповое отношение используют для задания связей между группами (эта структура подобна набору) в БД. Г рупповое отношение определяется как поименованное бинарное отношение, заданное на двух множествах экземпляров рассматриваемых групп. Различают групповые отношения видов 1:1, 1:М, М\ 1, М\М. В групповом отношении один тип группы назначается владельцем отношения, а второй — членом отношения. Экземпляр группового отношения представлен одним экземпляром группы типа владельца и совокупностью связанных с ним экземпляров группы типа члена отношения.

База данных — поименованная совокупность экземпляров групп и групповых отношений. В схеме БД задаются типы групп и групповых отношений.

Рассмотренные типы структур позволяют использовать различные формы представления схемы данных, включая обычное представление в виде исходного текста на ЯОД.

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

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

<< | >>
Источник: Григорьев Ю.А., Ревунков Г.И.. Банки данных. 2002

Еще по теме Структуры данных:

  1. Григорьев Ю.А., Ревунков Г.И.. Банки данных, 2002
  2. Оценка данных о личности.
  3. 18.4. Права субъекта персональных данных
  4. Банк данных
  5. 5.3. Графическое представление данных
  6. Анализ и интерпретация полученных данных
  7. Анализ и интерпретация полученных данных
  8. Подготовка исходных данных
  9. 4.5. Право изготовителя базы данных
  10. 12.4. Анализ эмпирических данных