Классика баз данных - статьи

       

Отображение агрегатов


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

В отношении способов представления вложенных типов данных, в том числе основанных на предопределенных конструкциях, паттерны отображения селективных и агрегатных типов довольно близки. Паттерны ClassAggregate и HierarchyAggregate предназначены для использования с паттернами отображения классов OneClass–OneTable, OneInheritancePath–OneTable и OneInheritanceHierarchy–OneTable в рамках СЗ стратегии. Паттерн GenericAggregate применяется вместе с паттерном AllClasses–OneTable, соответствуя СН стратегии отображения.



Содержание  Назад  Вперед