Научная статья на тему 'Методика построения оптимального репозитория схем реляционных баз данных'

Методика построения оптимального репозитория схем реляционных баз данных Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
323
23
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
СИСТЕМЫ УПРАВЛЕНИЯ БАЗАМИ ДАННЫХ / ОПТИМИЗАЦИЯ / РЕПОЗИТОРИЙ / СХЕМА / МЕТОДИКА

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Попов Сергей Геннадьевич

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

i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

The paper proposeda methodof constructing the subsystem integration of independent databases basedrepository schemes. The methodenables to ensure the optimalrepository on the access time anddata volume

Текст научной работы на тему «Методика построения оптимального репозитория схем реляционных баз данных»

Вычислительные машины и программное обеспечение

УДК 004.514, 004.655.3, 004.652.42

С.Г. Попов

МЕТОДИКА ПОСТРОЕНИЯ ОПТИМАЛЬНОГО РЕПОЗИТОРИЯ СХЕМ РЕЛЯЦИОННЫХ БАЗ ДАННЫХ

Обзор существующих реализаций репозиториев баз данных

Основной способ совместного использования баз данных - интеграция на основе реляционного репозитория - хранилища описаний схем. Управление схемами осуществляется пользователями при помощи операторов языка управления данными конкретной системы управления базами данных, в ходе исполнения которых происходит изменение содержимого репозитория.

Исследование методов интеграции данных организованных на различных моделях данных (реляционной, сетевой, иерархической), показало [3, 4], что под моделью данных М подразумевается четверка вида ^ск ,01 М° , где Бск . - все возможные схемы модели М , отображаемые ЯОД; О . - все возможные операторы ЯМД М; Мя -семантическая функция ЯОД М; а М° - семантическая функция ЯМД М.

Отображением/модели данных М в модель М

J 1

называется совокупность отображений пространства состояний баз данных М,, в пространство состояний М - V; схем баз данных состояний М в схемы баз данных М - ° : $ск. ^ ^ск р операторов ЯМД М . в последовательность ЯМД М ф : О. ^ Р, где- процедура на ЯМДМ.

На практике в СУБД применяются реляционные операторы, реализованные в форме алгоритмических процедур: в качестве операторов используются логические операторы объединения (г^я), пересечения (г о я) и реляционные операторы выбора (ол=а(г)), проецирования (пх(г)), соединения (гХ$) и деления отношений (г я) в нотации Гарсиа-Молина.

Учитывая, что в современных СУБД репо-зитории реализованы в форме реляционных баз

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

Выберем в качестве критериев сравнения репозиториев современных СУБД следующие:

возможности интеграции - обеспечение прозрачного объединения данных в нескольких СУБД;

методы доступа - описание средств управления схемами в репозитории;

способ хранения - способ внутреннего представления данных пользователю;

средства оптимизации - наличие средств оптимизации внутреннего представления репо-зитория.

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

закрытости внутренних форматов репозито-риев;

отсутствия прямого доступа к структурам ре-позиториев;

наличия диалектов ЯОД конкретной СУБД; отсутствия средств интеграции РСУБД разных производителей;

отсутствия высокоуровневого средства управления схемами;

отсутствия средств оптимизации объема ре-позитория и фрагментарное развитие средств оптимизации времени доступа к репозиторию.

Таблица 1

Интеграционные возможности репозиториев СУБД

СУБД Возможности интеграции Метод доступа Способ хранения Средства оптимизации

Oracle В рамках одной СУБД Средствами ЯОД и ЯМД и управления пользователями (схемами) Доступ на чтение через системный словарь Отсутствуют

DB2 Тоже Средствами управления схемами Объектная модель экземпляра «

MSSql « Средствами управления схемами Завфытая объектная модель «

MySQL « Средствами ЯОД и ЯМД РБД метаданных «

PostGreeSQL « Средствами управления схемами Тоже «

Вышеизложенные ограничения препятствуют эффективному обмену данными между СУБД разных производителей и затрудняют интеграционные процессы между СУБД.

Постановка задачи интеграции баз данных

Дополнив модель интеграции данных дополнительными ограничениями (модель данных единственна; реляционная МКе1; схемы базы данных выбираются из одного множества реляционных схем $сЪш, операторы 0Ее1 ЯОД модели МКе1 - разномощностные реализации диалектов языков структурированных запросов, основанных на реляционной алгебре), задача интеграции реляционных баз данных сводится к обеспечению

биэктивности отображения у.

В реляционной модели МДе/ с сигнатурой алгебры Яе1(Т), множеством всех схем 8скЯеР и множеством 0Ее1 -операторов, которые могут быть сконструированы средствами диалектов ЯМД реляционной модели, определено конечное число баз данных со множеством схем 8ск'ш так, что $сЪ'ш = {5СЙ(1), sch(2\ ..., 8сЫи)} сЗсН^, причем каждая выбранная схема реализуется на своем остове Т(г), из множества остовов 0stn,:

Яе1

08?м = {Т(1), Т(2), ..., Т(и)} с так, что

Т« сV« где г = {1, 2, ..., и}, №г) - множество атрибутов, а Vм - множество значений атрибутов в каждой схеме. Каждая схема зсИ^ определяется набором функциональных отношений Я('):

*1

(1)

4(1) Д(1) д(1) h ' h ' ' '(i

(i)

R

4(1) 4(1) Л2, > ¿2 '

4(1) 4d)

А'ц "V

А(1)

V») 2 у

А(1)

1

ki У

(2)

4® 4P) 4(2)

г\л , /Ii , . . . , /X,

12 \(2)

W

(2)

Я

2

4(2) 4(2) Л2, ' '

¿W 4^

21 '12

"1 У

, а(2)

42) у

4(2) "' "%(2) 2

4 (") 4 (") 4 (")

12 '(п)

Л

(я)

R

(") 4 (п)

2о ' '

Aj" , А

4 (п) 4 (")

А'г, '¡2 '

/ >\

Л00 4П).

д(л) ' %<»>

t У

(1)

где - ^-е функциональное отношение в схеме базы данных &й(я); . - к]я) атрибут t,-го

функционального отношения в схеме базы данных 8сЫ"\

Обозначим наборы атрибутов каждой схемы

и "

at(DBm)=[](Rf\at(DBm) =

h i=1

и конечные множества доменов каждой базы данных

Я(1) = {№> , Ж? , ..., ^(1и)1 },

Я(2) = {Я(2> , Я(2> , ..., }, (3)

т = {да , да , ..., £(и) },

I. 1' 2 ' ' тп

так, что для каждого О^} существует А(1) , такое,

(\ ' 'к

А(1)).

Тогда под задачей интеграции независимых реляционных баз данных будем понимать построение базы данных БП(и"') со схемой Scк(Un^), содержащей функциональные отношения

R (Uni ) i с (Uni) C <Un')

1 I h ' Ь '

с (Uni) C1

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

R (Uni) i с (Uni) с (Uni) с (Uni)

2 2 2

(4)

R (Uni) I с (Uni) с (Uni) с (

(Uni)

и с языком манипулирования данными 0(ип1), основанным на реляционной алгебре Яе!(Т).

Методика интеграции реляционных баз данных

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

Интегрируемость - формирование правильного биективного отображения с : Scк, ^ Scкi, определяющего возможность отображения, и, как следствие, объединения реляционных схем независимых баз данных.

Открытость - формирование набора отображений семантических функций диалектов ЯОД модели М„, Мя1: Scki ^ В1, что обеспечивает

Ке1 1 1 1

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

Полнофункциональность - формирование полного набора семантических функций подсистемы интеграции Мя1Пп{, аналогично предоставлению универсального интерфейса к функциям управления схемами и средствам интеграции.

Оптимальность - минимизация занимаемого объема данных в репозитории SckUn¡ и времени доступа в процессе реализации функций интеграции баз данных.

Функциональные отношения интегрированной базы данных можно формировать дву-

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

Представим схему интегрируемых баз данных в форме направленного псевдографа G(V, N, L), где V - множество атрибутов отношений схемы s; N - множество ребер, маркированных идентификатором отношения включения атрибута в отношение; L - множество троек вида (X, r, Yr), маркированных идентификатором функциональных зависимостей исходных баз данных s ; Xr -множество атрибутов детерминантов; F - множество атрибутов, функционально зависящих от детерминанта; r - маркер функционального отношения. Тогда доопределение связей в базе данных состоит в формировании графа G'(V, N, L'), такого, что L' = (Lи {X, r', Y'}|X'с s, YjС s, i ф j.

Определим объем данных интегрированной схемы VUn¡ базы данных BD-Uni) как сумму объемов данных, входящих в набор функциональных отношений схемы Sch<Uni\ Определив способ хранения схем в форме реляционной базы данных, получим набор эквивалентных схем репозитория Sheme. Тогда объем схемы данных интегрированной БД определяется как объем данных в БД репозито-рия, который зависит от представления схемы ре-позитория Sheme = {sheme 1, ..., sheme} и от числа и содержания схем независимых интегрируемых баз данных S = {s1, s2, ..., sn}, а среднее время выполнения запросов к репозиторию зависит от частот появления операций управления схемами

разнЬ1х типов aQ = {"■SelecP ^'MserP «Deta* aintegray} Ш

этапе исполнения приложения.

Тогда задача оптимизации подсистемы интеграции баз данных на основе репозитория определяется как

пцп minV{Scheme}, (5)

где ' - время исполнения запроса определенного типа из множества а^; V - функция определения объема данных репозитория на схеме sheme. из множества схем репозитория Sкeme, при условии заданного на этапе эксплуатации распределения вероятности запросов а^ .

Методика оптимизации репозитория и оценки времени отклика подсистемы интеграции на этапе эксплуатации, основана на:

2

1) фиксации времен выполнения операций добавления, удаления и выборки данных в конкретной СУБД, на которой функционирует репозиторий;

2) определении объемов схем интегрируемых баз данных в каждом из вариантов реализации схемы репозитория;

3) фиксации начального распределения частот выполнения операций добавления, удаления и выборки схем внешних баз данных из репози-тория схем;

4) вычислении времени отклика системы на каждый из типов запросов на каждом варианте схемы репозитория;

5) выборе оптимальной конфигурации репо-зитория и фиксации оценок времени выполнения запроса на декомпозицию в худшем случае;

6) фиксации события добавления, удаления, реинтеграции или изменения частотного соотношения запросов, требующих реконфигурации системы;

7) принятии решения о реконфигурации и повторении выполнения предыдущих этапов методики.

Для определения времен исполнения запросов на управление интеграционными данными в репозитории предложены пять алгоритмов управления схемами.

Объектами управления в информационной подсистеме репозитория являются схемы баз данных S = {K(A, db, T, F), Lf, f | Vf, j F, i Ф j} из множества схем S, операции управления схемами реп°зит°рия Z(S) = {zSelJs), Z^js^ ^М zintegrates)} и консолидированные запросы на выборку данных q = {q1, q2, ..., qn} к данным из объединенного репозитория.

Алгоритмы управления репозиторием

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

1. Добавление новой схемы в репозиторий zlnsrrf

Require: s,; {схема базы для добавления}

Ensure: DBUm + s,;

1: for all DBUrti e scheme, do

2: for all Г е i do

3:

4:foraU Fses,do

5: Fs^FUm-

2. Доопределение семантических связей zlntegraty. Require: Xr ; {набор доопределяемых связей}

Ensure: DBUnl+X,

1: for all F,eXr

•i-i do

2:

F.^X,,

3. Удаление схемы из репозитория с удалением доопределенных связей zDekt.

Require: s„Xr ;{схема базы для удаления

ч-Ч

и набор доопределяемых связей} Ensure: DBUm - s,; 1: for all DBVni e scheme, do

2: 3:

for all Ts e sdo

t_L

J > ' 1 TTn

4: for all Fe s, do

5:

->F

6: for all F. 6 X.

Uni '

do

7:

.¡..j

->x„

4. Декомпозиция схемы zSelecf

Require: qi(atrl,atr2,...,atrn)\ {запрос на декомпозицию данных}

Ensure: F(s1,s2,...,si); {набор атрибутов

из разных схем баз данных}

for all т в q. do

for all DBUni e scheme, do for all tUn. ><tUn,<

К <- atrk;

i scheme, do

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

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

Таблица 2

Характеристики классов схем репозиториев

Класс схемы Оценка объема, V Добавление, Удаление, % Декомпозиция, Зеке!

1 отношение 6сЛ г 5 с,ЧЧ

2 отношения, 1 зависимость г* 2 су 4 cttr+tf 2гг + 4 с,ЧЧ+'/

3 отношения 2 зависимости г, 3 с. 6 с%гг + 2гу Ъгг + 2?/ 3 с, + 2*/

4 отношения 3 зависимости Ч 8 с£г + Зtf 4^+3^ 2с, ЧЧ+З',

5 отношений 4 зависимости 5с V \Qcttr + 4tf 51 г + /,4+4*,

присутствуют 1-5 функциональных отношений с нулем, 1-4 нетривиальными внешними функциональными отношениями соответственно.

Пусть в тестовой схеме внешней базы данных определены: г - число атрибутов в схеме 5.; су-коэффициент увеличения объема данных при отсутствии нормализации; 1г - время управления отношением; время управления зависимостью; ¡^ -число отношений в запросе; с - коэффициент времени на формирование избыточности в отношении. Получим аналитические оценки времени

исполнения и объема данных в каждом классе схем. Результаты анализа времени, исполнения и оценки объема данных различных вариантов реализации схем репозитория приведены в табл. 2.

На основе реализованных алгоритмов для каждой схемы и внешней базы выполнена загрузка данных с последующим вычислением общего объема данных в репозитории. Зависимости объемов данных репозитория от вариантов реализации схем при числе атрибутов в каждом отношении равном 100 приведены на рис. 1.

Рис. 1. Зависимость объема репозитория от варианта реализации схемы

(-) Репозиторий 1; (- -) Репозиторий 2; (...........-) Репозиторий 3;

(-------) Репозиторий 4; (............................) Репозиторий 5

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

t = а *t + а *t + а *t . (6)

Uni Insert Insert Delete Delete Select Select

Максимальное время исполнения запроса декомпозиции tUn. = tSelect \maxlen(q), где len(q) -функция определения числа естественных соединений в схеме репозитория schemeа функция оптимизации в форме нахождения минимума на дискретном наборе значений времени и объемов данных с весовыми коэффициентами k и kV соответственно:

F kt Uni kV Vscheme'

(7)

Предложенная функция применяется в алгоритме принятия решения о необходимости изменения структуры репозитория баз данных.

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

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

На основе предложенных алгоритмов реализована подсистема интеграции реляционных баз данных.

Реализация и апробация подсистемы интеграции

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

Подсистема позволяет пользователю до исполнения запроса оценить временные затраты на

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

В ходе разработки информационной системы выделены и проанализированы информационные и управляющие потоки, а также определены распределения вероятностей событий в этих потоках. Диаграмма потоков работ в нотации Йордо-на - Де Марко приведена на рис. 2.

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

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

На основе предлолженной декомпозиции задачи реализована система управления интеграцией баз данных. Включенная в нее подсистема управления оптимальным репозиторием организована по модульному принципу и содержит следующие модули:

Интерфейса с внешними базами данных. Модуль осуществляет взаимодействие с внешними базами данных, преобразуя описание схемы с конкретного диалекта ЯМД РСУБД во внутренний формат программы.

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

Изменения схемы репозитория. Модуль принимает запрос на изменение структуры репозито-рия и формирует набор команд на языках управления ЯМД№. и ЯОД№. с целью преобразования структуры репозитория.

Декомпозиции запросов пользователя. Модуль на входе получает запрос пользователя и осуществляет выделение частей запроса, относящихся к каждой независимой базе данных.

Разработанная оптимизирующая подсистема интеграции данных на основе реляционного репозитория схем баз данных предоставляет единую форму представления репозитория для всех РБД, полнофункциональный универсальный

Изменение юепозитопия

Изменения

Рис. 2. Диаграмма потоков данных подсистемы управления интеграцией БД

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

Созданная компонента применена в подсистеме интеграции системы управления учебным

процессом Санкт-Петербургского государственного политехнического университета и электронной системе мониторинга технологических компетенцией предприятий машиностроительного комплекса Северо-Западного региона.

СПИСОК ЛИТЕРАТУРЫ

1. Курочкин, М.А. Метод интеграции независимых баз данных [Текст]/М.А. Курочкин, С.Г. Попов// Научно-технические ведомости СПбГПУ-2006.-№ 4. -С. 28-32.

2. Курочкин, М.А. Методология проектирования системы управления учебным процессом университета [Текст]/М.А. Курочкин, С.Г. Попов/Фундаментальные исследования в технических университетах: Матер. Х Всерос. конф. по проблемам высшей школы.-СПб.: Изд-во СПбГПУ, 2006.

3. Попов, С.Г. Исследование вариантов реализа-

ции схем реляционного репозитория схем баз данных [Текст]/С.Г. Попов//Высокие интеллектуальные технологии в образовании и науке: Матер. XVII Междунар. науч.-метод. конф.-СПб.: Изд-во СПбГПУ, 2010.

4. Калиниченко, Л.А. Методы и средства интеграции неоднородных баз данных [Текст]/Л.А. Калиниченко; Под ред. Л.Н. Королева.-М.: Наука, 1983. -424 с.

5. Цаленко, М.Ш. Моделирование семантики в базах данных [Текст]/М.Ш. Цаленко.-М.: Наука, 1989.-228 с.

i Надоели баннеры? Вы всегда можете отключить рекламу.