УДК 004.652
ИЛ Убалехт, I.P. Ubaleht, e-mail: [email protected]
Омский государственный техническийуниверситет г. Омск, Россия
Omsk State Technical University, Omsk, Russia
СЕМАНТИЧЕСКИЙ Л1ЕТОД АВТОМАТИЗИРОВАННОГО ПОСТРОЕНИЯ СХЕМ РЕЛЯЦИОННЫХ EAi ДАННЫХ
SEMANTIC METHOD OF AUTOMATIC CREATION OF SC HEME OF RELATIONAL DATABASES
В данной работе предлагается метод построения нензбыточных и непротиворечивых схем реляционных баз данных, использующий семантическую информацию. Предлагаемый метод сочетает в себе элементы проектирования сяем баз данных методом синтеза (проектирование от атрибутов и функциональных зависимостей к отношениям) н элементы проектирования от сущностей предметной ооластн. В статье предлагается на мифологическом уровне использовать семантически расширенные аналоги функциональных зависимостей и предлагается способ формализации процесса получения функциональных заЕнснмостей.
Tliis paper proposes a method for creating nou-redundant and consistent scheme of relational databases using semantic information. The proposed method combines elements of the database schema design method of synthesis [design from attributes and functional dependencies to relations) and design elements from the domain entities. This piper proposes as follows: to use semantically extended analogues of functional dependencies on Infological level; a method for definition of functional dependencies.
Ключевые слова: функционатьные зависимости, нормализация отношений реляционной модели, схемы реляционных баз данных, модели данных, ER-модель
Keywords: functional dependencies, normalization of relations of relational databases, schemes of relational databases, data models, ER-model
Формализация процесса формирования схем реляционных баз данных (БД) остаётся важной задачей теории реляционных баз данных [1]. Помимо этого актуальной является задача разработки методов формирования схем реляционных БД. обладающих: высокой автоматизацией процесса построения схем; развитыми средствами, обеспечивающими наглядность и удобство управления процессом построения схем БД.
В данной работе предлагается метод построения схем БД. Цель метода - получение схемы реляционной БД, находящейся, как минимум в третьей нормальной форме (ЗНФ). Ключевые свойства метода, предлагаемого в данной работе: высокая формализация процесса получения схем БД: наличие выразительных средств обеспечивающих наглядность и удобство построения схем БД для конечного пользователя; высокий уровень автоматизации построения схем БД.
Формализуем основные понятия модели положенной в основу метода.
Определение 1. Элементом области связанности или просто элементом связанности будем называть тройку КАК A Mt ,А , RS>. где A , А ж oni s А, А с U; RS е RS.
А - множество атрибутов входящих в область связанности; U - множество всех атрибутов заданной ПрО; RS - множество состоянии бинарной связи между атрибутами A i , A f а,
где г, j любые целые числа от 1 до л, л - арность множества.
В данной работе множество RS имеет следующий вид: RS = {один к одному, многие-х-одному, о дин-ко-многим, многие-ко-многим}. Множество AS в дальнейшем можно расширить. неопределённые значения атрибутов (null) также не учитываются.
произвольное множество атрибутов е U; £ - множество U~ А ^ Л е -4. Областью связанности AI будем
Определение 2. Пусть А всех атрибутов заданной ПрО;
называть такое множество троек ЕМ< A , А г AS > (множество элементов связанности), что: А ^. А ^^ каждой тройки EAI является элементом декартова произведения А
хА Количество троек EAI е AJ равно количеству элементов множества А хл.
Данная модель учитывает связанность между отдельными атрибутами, связанность между группами атрибутов в данной работе детально не проработана, частично переход к группам атрибутов можно осуществлять через правила вывода.
Рассмотрим по шагам предлагаемый метод получения неизбьггочных и непротиворечивых схем БД. На шаге 1 производится определение первоначальной схемы областей связанности Al(S.;arl). На шаге 2 производится установка связей между атрибутами внутри элементов связанности (выявление аналогов функциональных зависимостей (ФЗ) на инфологическом уровне). На шаге 3 - запуск алгоритма распределения: элементов связанности по областям связанности. Шаг 2 и 3 выполняются итеративно до тех пор. пока не сработают условия, определяющие, что исходная схема эквивалентна состоянию как минимум ЗНФ. На шаге 4 осуществляется перевод конечной нормализованной схемы областей связанности AI(S ) с инфо логического уровня в схему реляционных отношений на датал огнческом
уровне. На даталогическом уровне схема отношений будет как минимум в ЗНФ.
В определённых на шаге 1 областях связанности, между атрибутами внутри всех элементов связанности устанавливаем типы связей. Для определения типов связей между атрибутами внутри элементов связанности используется формальная модель. Эта модель включает: интерактивный граф1гческий язык, близкий по возможностям языку Query-By-Example (QBE), логику двухстрочных отношений [2, стр. 478 - 4SO] и реляционное исчисление. Работу этой модели продемонстрируем на примере, см. рис. 1.
Схема БД на
мифологическом
уровне
Дпж-остн
ооласть связанности Элемент области связанности,
_ через примеры
реальных данных определяется тип связи
Согрданшн
М:1
Тгй_ном ер М:1
М:1 Имя
Фамилия 1:М Тлб_нсмер
М:М Должность
М:М Имя
Тай_но«ер роллжмгь
101 Инженер 1 кагт.
102 Инженер 1 ют.
а)
б)
В)
Рис. 1 Определение свяш между атрибутами Та6_Но.шр и Должность через использование двухстрочного отношения: а) схема БД на ннфологнческом уровне; 6) детализирована область связанности Сотрудники: в) детализирован элемент связанности Таб_Номер -Должность области связанности Сотрудники
Модель должна осуществлять следующее: на инфо логическом уровне используя семантическую информацию позволять пользователю задавать элементы связанности внутри облас-
239
тей связанности; поддерживать удобную графическую нотацию; строго формализовать переход ог элементов связанности на инфологическом уровне к ФЗ на даггалогическон уровне.
Покажем корректность перехода от элементов связанности на инфо логическом уровне к ФЗ на диалогическим уровне. Каждый элемент связанности можно представить как двухстрочное отношение. Опираясь на [2] определим понятие двухстрочного логического отношения.
Определение 3. Пусть г - отношение со схемой Я, А — атрибут в R, отношение г будем называть двухстрочным логическим отношением., если оно содержит в точности два кортежа í, Hf2ii если с отношением г ассоциировано ¥г - присваивание истинностных значений атрибутам из г. ¥г - является функцией из R в {истина, ложь}, такой что
I истина, если t, (A) = t. (А).
ЩА) =
[ложь, если tj (А)ф t2 (А).
Таким образом, элемент связанности можно представить как двухстрочное логическое отношение. В качестве значений в строках этого отношения могут быть данные, соответствующие семантике ПрО. Далее нужно формализовать переход от двухстройного логического отношения к ФЗ в прои звольных конечных отношениях.
В соответствии с [2] приведём теорему об эквивалентности ФЗ в отношениях с произвольным (конечным) множеством кортежей, ФЗ в двухстрочных логических отношениях и импликацией, доказательство см. в [2].
Теорема. Пусть F - множество ФЗ над схемой R и А —»В есть зависимость над R. Тогда следующие утверждения эквивалентны: из F следует А —» В для произвольных (конечных) отношений; из F следует А —» В для двухстрочных логических отношений; из F следует А > В как логическая формула (импликация).
Таким образом, используя графическую нотацию с удобным графическим языком, через определение связей на инфо логическом уровне формализуем эти связи и опираясь на теорему и определение 3 преобразуем связи в ФЗ на датапогнческом уровне. Далее осуществляется переход к шагу 3 и 4 данного метода, но эти шага в данной статье не рассматриваются.
В статье рассмотрен метод построения неизбыточных и непротиворечивых схем реляционных. БД. использующий семантическую информацию. Новизна представленного метода заключается в следующем:
- метод сочетает элементы проектирования схем БД через синтез отношений (проектирование от атрибутов и ФЗ к отношениям) и элементы проектирования через декомпозицию (проектирование ог сущностей предметной области);
- представленный метод можно отчасти рассматривать как семантическое расширение метода синтеза. В проанализированных современных источниках [3-7] при практическом использовании метода синтеза довольно слабо формалнзовывался процесс получения исходного множества ФЗ.
Библиографический список
1. Дейт К. Дж. Введение в системы баз данных / К. Дж. Дейт : пер. с англ. - М. : Вильяме, 2001 - 1072 с.
2_ Мей ер Д. Теория реляционных баз данных / Д. Мейер : пер. с англ. - М. : Мир, 1987 - 608 с.
3. Doiigare Y.V. RDBNomia: - A semi-automated tool for relational database schema normalization up to tliird normal form / Y.V Dongare, P.S Dhabe, S V Deshmukh i! International Journal of Database Management Systems ( LTDMS ). - 2011. - Vol. 3; №. 1. - P. 133-154.
4 Du H. Micro: A normaliza tion tool for relational database designers / H. Du. L. Wery // Journal of Network and Computer Application. - 1999. - VoL 22; №. 4. - P. 215-232
5. Yazici A. JMathNornL A database normalization tool using mathematics / A. Yazici. K. Ziya H International Conference on Computational Science 2007 (ICCS 2007); China. - Beijing, 2007.
6. Georgiev N. A web based environment for learning normalization of relational database schemata. Masters thesis / N. Georgiev. - Umea: Umea university, 2008.
7. Bahmam A. Automatic database normalization ami primary key generation ! A. Bahmani. M. Naghibzadeh. B. Bahmani // 21th Canadian Conference on Electrical and Computer Engineering; Canada. - Niagara Falls, 2008.