Иерархией называется взаимосвязанный набор отношений «многие – к – одному», состоящий из последовательности уровней.
Другими словами, иерархия является спецификацией уровней, которые представляют взаимосвязи между различными атрибутами в иерархии.
Как правило, иерархии обогащают семантику взаимоотношений между данными в многомерной модели.
В многомерном моделировании различают три типа иерархий:
-Сбалансированные иерархии (Balanced hierarchy).
Сбалансированная иерархия – это иерархия, в которой все ветви измерения имеют одно и то же количество уровней.
-Несбалансированные иерархии (Unbalanced hierarchy).
Несбалансированная иерархия – это иерархия, в которой все ветви измерения имеют различное число уровней.
-Иерархии с пропущенными уровнями (Ragged hierarchy).
Иерархией с пропущенными уровнями называется такая иерархия, в которой допускается отсутствие одного из уровней при заполнении ее данными, т.е. различные варианты иерархии сохраняются в одной структуре данных.
Таблицы измерений могут находиться в отношении «многие–ко–многим» между собой. Например, поставщики могут поставлять товары на разные склады, а магазины получать товары с различных складов.
В многомерном моделировании ХД для разрешения отношения «многое - ко – многим» между таблицами измерений могут быть использованы два типа таких дополнительных таблиц: «пустая» таблица фактов или таблица фактов без метрик (factless fact table) и таблица-мост (bridge table).
Таблицей фактов без метрик называется таблица фактов, которая не содержит числовых параметров или метрик.
Различают два типа таблиц фактов без метрик: таблицы фактов отслеживания событий (event tracking tables) и таблицы фактов охвата событий (coverage tables).