В работе рассматриваются базы данных не первой нормальной формы (non–first normal form или NFNF), часто называемые NFNF-базами данных (DB NFNF).
В отличие от реляционных баз данных в NFNF-базах данных в качестве значений атрибутов допускаются составные элементы. Так, например, на рисунке 1 представлена модель данных в не первой нормальной форме.
Рис. 1. Модель данных в не первой нормальной форме
В качестве значений атрибутов в этой таблице используются соответственно строка, кортеж и таблица (множество кортежей).
В 1991 году в работе [1] одного из авторов были введены понятия схемы NFNF-базы данных, функциональной зависимости NFNF-базы данных и доказана теорема о полноте системы аксиом функциональных зависимостей для NFNF-баз данных.
Для описания схемы NFNF-базы данных было предложено несколько способов, подробное описание которых изложено в [2]. Проиллюстрируем их на примере NFNF-модели данных (рис. 2).
Рис. 2. NFNF-модель данных
В приведенной модели большими латинскими буквами обозначены имена атрибутов, а малыми – значения.
Для записи схемы NFNF-модели данных можно воспользоваться следующими способами:
1) описание схемы Sh с помощью множества цепей имен данных
Sh = {В3.В2.В1.В01, В3.В2.В1.В03, В3.В2.В03, В3.В01, В3.В02, В2.В03, В2.В1.В01, В2.В1.В03, В2.В03, В01, В02};
2) описание Sh с помощью функциональной схемы:
Sh = (В3(В2(В1(В01, В03), В03), В01, В02), В2(В1(В01, В03), В03), В01,В02);
3) графическое описание схемы с помощью с помощью специальным образом размеченного графа – N-дерева:
Рис. 3. N-дерево
Графическое описание схемы базы данных позволяет наглядно представить подходы к выбору схемы базы данных в зависимости от типичных запросов пользователей.
Для формирования ответа на запрос к базе данных требуются значения определенных атрибутов. Мы можем выделить на N-дереве Sh1 имена соответствующих атрибутов и определить время доступа t1 ко всем выделенным атрибутам, то есть время ответа на запрос при фиксированной схеме Sh1 базы данных.
Аналогично, выбрав другую схему Sh2 базы данных, мы можем получить время доступа t2 ко всем выделенным атрибутам, то есть время ответа на запрос при фиксированной схеме Sh2 базы данных.
Таким образом, выбор оптимальной схемы базы данных для определенной предметной области с фиксированным набором запросов сводится к построению N-дерева Sh с минимальным временем доступа к выделенному множеству атрибутов.
Библиографический список
- Yemelchenkov Ye. P., Tsalenko M. Sh. Functional dependencies in hierarchical Structures of Data. Lect. notes in Computer Science. Berlin: 1991. V. 495. P. 258-275.
- Емельченков Е. П. БД. Базы данных. Современный подход. Монография. Смоленск: ВА ВПВО ВС РФ, 2010. 60 с.