Синонимия в ERM-модели и проблемы обеспечения непротиворечивости и пополнения ERM-схем

2012

ВЕСТНИК ТОМСКОГО ГОСУДАРСТВЕННОГО УНИВЕРСИТЕТА Управление, вычислительная техника и информатика

№ 3

ИНФОРМАТИКА И ПРОГРАММИРОВАНИЕ

УДК 004.652.8

А.М. Бабанов, А.С. Скачкова

СИНОНИМИЯ В ERM-МОДЕЛИ и проблемы обеспечения НЕПРОТИВОРЕЧИВОСТИ И ПОПОЛНЕНИЯ ERM-СХЕМ

В статье выявляются истоки синонимии в ERM-схемах, формулируются возникающие при этом проблемы обеспечения их непротиворечивости и пополнения, а также предлагаются способы их решения.

Ключевые слова: семантическая модель данных, ERM-модель, ERM-схема, синонимия, непротиворечивость схемы, пополнение схемы.

В подавляющем большинстве моделей данных каждое типичное явление моделируемого мира представлено в схеме БД лишь однажды, либо в виде структурного элемента, либо в виде ограничения целостности. В таком случае человек сам должен заботиться о корректности и полноте описания предметной области (ПрО). Модель «Сущность - Связь - Отображение» или, сокращённо, ERM-модель (от английского «Entity - Relationship - Mapping») [1] позволяет проектировщику схемы работать с одними и теми же фактами ПрО на разных уровнях детализации и в разных представлениях. Подобный подход даёт возможность проектировщику не следовать жёстким требованиям модели, используя единственно возможные формы данных и самостоятельно контролируя правильность своих действий. Вместо этого он может фиксировать все представляющие интерес понятия, взаимосвязи между ними и закономерности этих взаимосвязей в подходящий момент в любой удобной для него форме, не задумываясь о возможной противоречивости и неполноте получающейся схемы.

Это приводит к тому, что в модели одному и тому же явлению ПрО могут соответствовать различные формы и, часто, некоторые из них могут присутствовать в ERM-схеме одновременно. Такое положение дел неизбежно влечет за собой необходимость решения проблемы, касающейся обеспечения непротиворечивости различных форм выражения в схеме одного и того же явления ПрО. Второй проблемой, сопутствующей синонимии, является редукция ERM-схемы - доведение её до базовых понятий модели, необходимых для автоматической генерации СУБД-ориентированной схемы БД. Подобная «нормализация» схемы позволяет минимизировать набор правил её трансляции на язык СУБД.

1. Базовые и производные понятия ERM-модели и ТСЗО

Поскольку ERM-модель является преемницей модели «Сущность - Связь» (ER-модели) [2], её язык сохраняет все традиционные понятия модели Чена - множество сущностей, множество связей, роль, атрибут, множество значений. Однако в ERM-модели эти структурные понятия не играют роли базовых концепций.

Таковыми в ней являются новые понятия «класс» и «отображение», которые существенно расширяют выразительные возможности модели по сравнению с ER-моделью. Они также обеспечивают должный уровень абстракции, доведённой в теории семантически значимых отображений (ТСЗО) до формальной системы [3-5]. К тому же, базовые концепции ERM-модели фигурируют в правилах трансформации схем в СУБД-ориентированные модели данных.

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

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

Моделируемый мир могут составлять объекты любого вида (как эмпирические, так и теоретические). Основной информационной (мыслительной) единицей представления ПрО в голове человека является суждение, которое может быть выражено в языковой форме - высказывании. Главную роль играют единичные атрибутивные суждения и единичные суждения об отношениях, утверждающие наличие у конкретного объекта определенного свойства, характеристики или отношения к другим объектам.

Характерным для единичных суждений является использование в качестве логических подлежащих их высказываний единичных имен, предметными значениями которых являются отдельные предметы или объекты. Таким образом, имеем одну из основных семантических концепций ERM-модели - объект. Совокупность объектов, соответствующих одному определённому понятию, образует класс объектов.

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

Введённые базовые понятия ERM-модели - объект и экземпляр отображения (для знаков), класс и отображение (для типов), обеспечивают всю выразительную мощь модели. Однако человек не всегда использует этот обобщённый уровень мышления и общения. Для простоты выделяются частные виды объектов, классов и отображений, образующие множество производных понятий модели.

Объекты, мыслимые в высказываниях как предметы, представляют собой сущности, а классы таких объектов есть не что иное, как множества сущностей. Идеальные объекты, такие, как числа, даты, строки символов, являются значениями. Они не обладают свойствами, характеристиками и не вступают в отношения с другими объектами, кроме того, что являются значениями характеристик этих объектов. Значения объединяют во множества значений по синтаксическим особенностям. Объекты, соответствующие конкретным понятиям об n-ках предметов, представляют собой связи, а классы объектов, составляющих объемы таких понятий, есть не что иное, как множества связей. Каждый объект в n-ке связи играет определённую роль, характеризующую его функцию в этой связи.

Отображения, определяемые множествами связей, которые в качестве областей определения и значений имеют одиночные множества сущностей или их декартовы произведения, называются реляционными. Общее количество реляционных отображений, определяемых одним множеством связей степени п, равно 2п-2. Отображение, ставящее в соответствие объекту или связи истинностное значение, называется отображением-свойством. Если в качестве области значений в отображении используется произвольное множество значений, такое отображение будем называть отображением-характеристикой. Отображения-свойства представляют собой частный случай отображений-характеристик. Отображения-характеристики (в том числе и отображения-свойства) являются не чем иным, как атрибутными отображениями, или просто атрибутами.

Таким образом, нам удалось связать фундаментальные понятия логики с основными структурными понятиями ER-модели, сохранив при этом базовые понятия - объект, класс и отображение. Все вместе они составляют понятийный базис ERM-модели.

2. Графическая нотация ERM-модели и примеры синонимии элементов ERM-схем

Для демонстрации синонимии в ERM-схеме воспользуемся наиболее наглядной формой её представления - графической ERM-диаграммой.

Поскольку ERM-модель является преемницей ER-модели, её графический язык сохраняет многие традиционные конструкции нотаций Чена и Баркера, а также вводит новые, специфические именно для модели «Сущность - Связь -Отображение» графические элементы.

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

Основное нововведение модели «Сущность - Связь - Отображение» - понятие «отображение». Для его обозначения добавляется новый вид вершин графа -стрелка. Имя отображения пишется внутри стрелки, под ним в скобках указываются количественные характеристики отображения (минимальное кардинальное

число, максимальное кардинальное число). Множества, составляющие область определения отображения, соединяются ребрами с началом стрелки, а множества, составляющие область значений отображения, - с концом стрелки. Рёбра помечаются именами ролей образов и прообразов.

Продемонстрируем синонимию в ЕКМ-схемах на примере диаграмм предметной области, связанной с ближайшими родственниками. На рис. 1 показан фрагмент диаграммы множеств сущностей и множеств связей.

Рис. 1. Фрагмент диаграммы множеств сущностей и множеств связей

Для уточнения схемы можно создать диаграммы других видов. На рис. 2 показана диаграмма, демонстрирующая все реляционные отображения, определяемые тернарным множеством связей РОЖДЕНИЕ.

Налицо синонимия элементов схемы: роли образов и прообразов реляционных отображений дублируют роли сущностей во множестве связей (структурная си-

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

3. Проблема обеспечения непротиворечивости и задача пополнения ЕКМ-схем

Особенности языка ЕИМ-модели и сформулированные ранее принципы построения ЕКМ-диаграмм, ориентированные на удобство для проектировщика, влекут за собой возможность синонимии и создания некорректной схемы за счёт задания противоречивых свойств элементам-синонимам. Поэтому ТСЗО должна обеспечить соответствующие проверки на непротиворечивость схем.

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

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

Кроме правил обеспечения корректности схемы ТСЗО должна предоставить правила автоматической редукции схемы, предусматривающие построение соответствующих базовых элементов (отображений) из явно указанных человеком производных элементов (множеств связей, атрибутов).

Правила пополнения схемы необходимы по двум причинам. Во-первых, отображения, полученные автоматически из множеств связей, открывают перед проектировщиком дополнительные возможности для совершенствования схемы, в частности, для более полного выражения особенностей и законов ПрО. А, во-вторых, правила генерации СУБД-ориентированных схем строятся с использованием именно базовых элементов ЕКМ-схемы. Поэтому необходимо хотя бы к моменту генерации получить базовые элементы из всех производных элементов.

4. Теоретическая основа проверок ЕКМ-схем на непротиворечивость

Обсудим подробнее проверки, основанные на гипотезах и теоремах формальной системы ЕИМ-модели. Новые гипотезы и теоремы строятся на основе аксиом и ранее доказанных теорем формальной системы ТСЗО. В статьях [3, 4] предложены первоначальные варианты формальной системы, а в [5] приведена её последняя версия и методика доказательства новых теорем.

К настоящему моменту исследователями ЕИМ-модели накоплен значительный банк гипотез ТСЗО, ожидающих своего доказательства. Одним из источников этих гипотез является непрекращающийся анализ закономерностей во взаимоотношениях между понятиями ЕИМ-модели и ТСЗО. Другим важным источником гипотез является теория реляционных БД, теоремы которой часто отражают такие закономерности данных, которые можно выразить в терминах ТСЗО.

Одним из важнейших понятий реляционной модели является понятие функциональной зависимости (ФЗ). Оно играет основную роль в процессе нормализа-

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

Во всех этих случаях используются аксиомы Армстронга, определяющие взаимоотношения между ФЗ. Для удобства также используются три правила, являющиеся следствием этих аксиом. В ЕИМ-модели есть понятие, очень близкое понятию «функциональная зависимость», - «функциональное отображение». Взаимно-однозначное соответствие этих понятий позволяет получать гипотезы и теоремы ТСЗО на основе аксиом Армстронга и правил вывода ФЗ.

Аксиома пополнения. Пусть А, В и С являются произвольными подмножествами множества атрибутов отношения Я. Тогда, если имеется ФЗ А -> В, то справедливы ФЗ А, С -> В, С и А, С -> В.

Гипотеза пополнения. Пусть имеем функциональное отображение А -> В, где ООО (А ) и ОЗО (В) составляют произвольные совокупности классов. Тогда, если некоторое другое отображение включает в ООО и ОЗО те же совокупности классов (А и В соответственно) и справедливо хотя бы одно из двух высказываний:

1) в ООО и ОЗО этого отображения кроме упомянутых А и В одновременно входит только одна и та же совокупность классов С;

2) ОЗО этого отображения состоит только из В, а ООО кроме А может включать в себя дополнительные классы,

то это отображение функционально.

Аксиома транзитивности. Пусть А, В и С являются произвольными подмножествами множества атрибутов отношения Я. Тогда, если имеются ФЗ А -> В и В -> С, то справедлива ФЗ А -> С.

Гипотеза транзитивности. Композиция двух функциональных отображений функциональна.

Правило декомпозиции. Пусть А, В и С являются произвольными подмножествами множества атрибутов отношения Я. Тогда, если имеется ФЗ А -> В, С, то справедливы ФЗ А -> В и А -> С.

Теорема декомпозиции. Если отображение со сложным образом функционально, функциональны и все его проекции на любые роли образов и их совокупности.

Правило объединения. Пусть А, В и С являются произвольными подмножествами множества атрибутов отношения Я. Тогда, если имеются ФЗ А -> В и А -> С, то справедлива ФЗ А -> В, С.

Теорема объединения. Агрегат двух функциональных отображений функционален.

Правило псевдотранзитивности. Пусть А, В, С и Б являются произвольными подмножествами множества атрибутов отношения Я. Тогда, если имеются ФЗ А -> В и В, С ->Б, то справедлива ФЗ А, С -> Б.

Гипотеза псевдотранзитивности. Пусть имеем функциональное отображение А -> В, где ООО (А) и ОЗО (В) составляют произвольные совокупности классов. Есть также функциональное отображение, ООО которого полностью включает ОЗО первого (В) и дополнительно некоторую совокупность классов С. Тогда отображение, ООО которого состоит из ООО первого (А ) и дополнения ООО второго (С), а ОЗО совпадает с ОЗО второго отображения, функционально.

Кроме приведенных выше гипотез и теорем, навеянных теорией реляционных БД, есть ряд гипотез и теорем собственно ТСЗО, также касающихся функциональных отображений.

Гипотеза о функциональности проекций. Если проекции отображения на все роли образов функциональны, функционально и само отображение.

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

Теорема о функциональности разности. Разность отображений функциональна, если функционально уменьшаемое отображение.

Теорема о функциональности посылки. Отображение, являющееся посылкой функционального отображения, функционально.

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

Гипотеза о полноте объединения. Объединение двух отображений полностью определено, если хотя бы одно из отображений-операндов полностью определено.

Гипотеза о полноте следствия. Следствие полностью определённого отображения полностью определено.

Гипотеза о полноте проекции. Проекция полностью определённого отображения на любые группы ролей образов и прообразов полностью определена.

Гипотеза о полноте агрегата. Агрегат двух полностью определённых отображений полностью определён.

Гипотеза о полноте композиции. Композиция двух полностью определённых отображений полностью определена.

Заключение

Богатые выразительные возможности ЕКМ-модели обеспечивают проектировщика всем необходимым для создания максимально полного и подробного описания предметной области уже на этапе семантического моделирования. Синонимия языка модели оставляет выбор удобного способа представления информации за проектировщиком, но при этом требует осуществлять проверки схемы на непротиворечивость.

За счёт увеличения детальности информации о семантике ПрО, представленной в схеме, усложняются правила её преобразования в СУБД-ориентированную схему. Однако, благодаря теории семантически значимых отображений, предлагаемые правила трансформации не носят характер рекомендаций, строящихся на предположениях, их обоснованность подтверждается соответствующими теоремами и аксиомами. Кроме того, вся информация, внесённая проектировщиком, по возможности учитывается при генерации целевой схемы, и каждое незначитель-

ное на первый взгляд дополнение может существенно улучшить результат -СУБД-ориентированную схему.

ЛИТЕРАТУРА

1. Бабанов А.М. Семантическая модель «Сущность - Связь - Отображение» // Вестник Томского государственного университета. Управление, вычислительная техника и информатика. 2007. № 1. С. 77-91.

2. Чен П. Модель «Сущность - Связь» - шаг к единому представлению о данных // СУБД. 1995. № 3. С. 137-158.

3. Бабанов А.М. Формальная система теории семантически значимых отображений // Вестник Томского государственного университета. Математика. Кибернетика. Информатика. 2006. № 290. С. 261-263.

4. Бабанов А.М. Развитие формальной системы теории семантически значимых отображений // Вестник Томского государственного университета. Информатика. Кибернетика. Математика. 2006. № 293. С. 135-139.

5. Бабанов А.М., Скачкова А. С. Методика доказательства теорем для формальной системы ERM-модели // Вестник Томского государственного университета. Управление, вычислительная техника и информатика. 2010. № 2. С. 113-123.

Бабанов Алексей Михайлович

Скачкова Анна Сергеевна

Томский государственный университет

E-mail: babanov2000@mail2000.ru skachkova@indorsoft.ru Поступила в редакцию 7 июня 2012 г.

Babanov Aleksey. M., Skachkova Anna. S. (Tomsk State University). ERM-model’s synonymy and problems of scheme consistency and completeness ensuring.

Keywords: semantic data model, ERM-model, ERM-scheme, synonymy, scheme consistency, scheme completion.

In most semantic data models an aspect of the reality can be represented in schema only once as a structural element or as an integrity constraint. In this case man should care about scheme consistency and completeness by himself. «Entity - Relationship - Mapping» model (or ERM-model for short) gives an opportunity to describe the same aspects of the reality at different levels in different representations. This feature of the ERM-model allows reflecting any fact at any moment in any form.

As a result there can be several forms of the same fact in the scheme at the same moment. It leads to a problem of consistency between different forms of the same fact. The second problem is scheme reduction. It is a process of scheme transformations up to base concepts, which are necessary to DBMS-oriented scheme generation. This «normalization» helps to minimize the set of the rules for translation into DBMS-language.

This paper includes definitions of base and derivative concepts and a demonstration of ERM-scheme elements synonymy using graphical notation. Consistency checks can be divided into two groups: checks based on meta-scheme constraints and checks based on formal system’s hypothesis and theorems. The second group makes it possible to provide scheme consistency with all kinds of elements and synonymy between them. This paper gives the list of ERM-scheme checks and describes theorem sources and their impact on resulting scheme.