Методика тестирования результатов вертикальной кластеризации отношений реляционных баз данных

УДК 004.65

МЕТОДИКА ТЕСТИРОВАНИЯ РЕЗУЛЬТАТОВ ВЕРТИКАЛЬНОЙ КЛАСТЕРИЗАЦИИ ОТНОШЕНИЙ РЕЛЯЦИОННЫХ БАЗ ДАННЫХ

М.В. ГРАН КОВ, А.И. ЖУКОВ

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

Ключевые слова: методы структурной оптимизации, вертикальная кластеризация, HBVP, декомпозиция отношений.

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

Наиболее известными классами методов повышения эффективности ИС, использующих реляционные БД (РБД) являются методы кэширования информации и методы структурной оптимизации. Методы первого класса заключаются в комбинировании двух видов памяти (основной и кэш-памяти) и повышении скорости доступа к информации за счет сохранения в кэш-памяти наиболее востребованных объектов ИС. Методы второго класса основаны на различных вариантах декомпозиции отношений РБД.

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

Одним из методов структурной оптимизации является метод вертикальной кластеризации (секционирования) отношений РБД. На базе этого метода в ДГТУ аспирантом кафедры «ПОВТ и АС» Нго Т.Х. был разработан эвристический алгоритм вертикальной кластеризации HBVP [1], который заключается в получении декомпозиции исходного отношения, приводящего к повышению вероятности кэш-попадания при заданном распределении запросов к БД в независимости от эффективности используемого алгоритма кэширования. При обосновании данного метода была выдвинута гипотеза о том, что при практических и теоретических исследованиях методов структурной оптимизации необходимо использовать поток запросов с равномерным распределением объектов ИС [1]. Целью настоящей статьи является теоретическое доказательство данной гипотезы. Постановка задачи. Рассмотрим модель информационной системы для проведения исследований методов структурной оптимизации. Пусть данная ИС реализует в своем составе некоторый алгоритм замещения объектов в кэш-памяти, определим ее основные понятия:

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

- трасса - это последовательность обращений к объектам информационной системы, соответствующая некоторому потоку запросов к БД. Трасса формируется на основании пользовательских запросов, каждый из которых может подразумевать запрос в источнике данных (база

данных или файловое хранилище) некоторого числа объектов. Таким образом, трасса может быть представлена как последовательность идентификаторов объектов ИС;

- дистанция - участок трассы для объекта а, который начинается и заканчивается обращением к объекту а и внутри себя не содержит обращений к этому объекту.

Необходимо доказать, что использование трасс с равномерным распределением объектов позволяет нивелировать влияние кэш-системы на эффективность информационной системы в целом, таким образом, объективно оценить эффективность проведения структурной оптимизации. Доказательство. Величина временного интервала между двумя соседними вызовами объектов в исследованиях методов структурной оптимизации не играет роли и обычно принимается равной 1 [2,3]. Таким образом, позиция объекта в трассе может быть интерпретирована как момент времени, в который данный объект был запрошен пользователем ИС (рис.1).

~У Т -длина

Объекты трассы дистанция размером к трассы

Рис.1. Схема трассы потока объектов кэш-системы

Будем считать, что понятию «объект ИС» в реляционных системах соответствует понятие «кортеж». Рассмотрим отношение, состоящее из N кортежей и только те отношения, в которых

N>>1.

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

Р = 1 N

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

q = 1 - р = 1 -1/ N = (N -1)1 N

Обозначим £, - дискретную случайную величину, равную дистанции для некоторого объекта и изменяющуюся в диапазоне (1, ю). Пусть в момент времени i в трассе появляется объект а. Тогда с вероятностью (^ -1)/N он может появиться в (7 + 1)-ой позиции, с вероятностью

VN((N -1)/N)2 - в (7+2)-ой позиции и в (7+£-1)-ой позиции с вероятностью:

Рг+к -і = VN((N -1)1 N)к -

где г = 1,2,...

Введем в рассмотрение ЕК:

Ек = £УN((N -1)/N)-1 • I

I=1

Выполнив преобразования в соответствии с (2), получаем:

Ек = V N ^-1 • 1

1 =1

Тогда математическое ожидание случайной величины £ :

Е 00 = НшЕ

Введем дополнительное обозначение для суммы: Sk =^q11 • 1 и рассчитаем несколько

і=1

первых значений для определения закономерности: ^ = 1, S2 = 2q, Sз = 3q2. Тогда, очевидно: 5к = S1 + S2 + S3 +... + 5т, при т=к. Представим полученные значения в виде квадратной матрицы, в которой на каждой /-ой строке расположим составные части ,-ого значения для 8], у = 1,т . При этом, 5, - сумма элементов в,-ом столбце:

51 Г 1 0 0 0 0 0 л

52 ч ч 0 0 0 0

5з ч2 ч2 ч2 0 0 0

54 чъ ч3 ч3 ч3 0 0

0

5т Ч чт1 чт-1 чт-1 чт-1 чт-1,

51 т ^?2 5з ^^4 <5 т

= 3 _ і5, , кроме того, 52 = ^ - 1, 53

]=1 ]=1

следует, что j-aя сумма по столбцам есть разность двух геометрических прогрессий:

5, = 1 ч-" -I ч'"

Для нахождения 5. из (8) воспользуемся формулой геометрической прогрессии:

5 =15=1

/=1 /=1

1 - чт 1 - ч

1 - ч 1 - ч

1

т

т (1 - чт ) - т + 1 ч3 -1

1

1 - ч

-тч +

1 - чт

1 - ч

1 - q V j=1

Случайная величина £ - целая, положительная и теоретически неограничена, поэтому ее математическое ожидание можно вычислить по формуле:

1 к

Е (5) = ІітЕк (5) = - Ііт I ч'-1 • і

кNk7=1

Учитывая выражение, полученное для , а также подставив значения для q, предельное значение для математического ожидания появления каждого объекта из рассматриваемого множества мощности N N >> 1) на дистанции неограниченной длины, равно:

Е (5) = — Ііт Бк = — Ііт

N т^да N т^да

(

1

1 - ч

тч +

1

1

N (1 -

(1 - ч )2

Ііт

( чт - чт+1 + тчт ^ 1---------------------------

1 - ч

1 - ч' 1 - ч 1

//

1

(1 - ч )2

• Ііт

1

Ґ

Ііт

1

ч

V

1-ч

чт+1 + тч

/

т Л

1-ч 1-ч 1-ч

N (1- q)2

Так как q<1, а также в связи с тем, что показательная функция растет на бесконечности быстрее любой полиномиальной, получаем:

Подставим значение для ч:

1

Е (5) = -•

N (1- ч)2 1

N

= N

2

к

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

Теорема АО Ахо доказывает [4], что оптимальной стратегией вытеснения объектов из кэшпамяти является утилизация объектов с наибольшим математическим ожиданием дистанции появления в трассе. Также доказано, что этот алгоритм уступает по эффективности только оптимальному алгоритму Биледи, для которого будущая трасса должна быть известна, что практически нереализуемо [2]. Однако, очевидно, что при равенстве математического ожидания дистанции для всех объектов трассы, оптимальный алгоритм АО неэффективен, а значит, любой другой алгоритм кэширования, кроме алгоритма Биледи, имеет эффективность меньше эффективности алгоритма АО.

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

Библиографический список

1. Нго Тхань Хунг. Метод вертикальной кластеризации отношений реляционных баз данных / Тхань Хунг Нго // Вестн. Донск. гос. техн. ун-та. - 2008. - №4.

2. Аль-Згуль Мосаб Басам. Гибридные алгоритмы в системах кэширования объектов / Мо-саб Басам Аль-Згуль // Вестн. Донск. гос. техн. ун-та. - 2008. - №4.

3. Жуков А.И. Математическая модель метода бигибридизации алгоритмов кэширования / А.И. Жуков, Мосаб Басам Аль-Згуль // «В мире научных открытий». - №4(10). - Ч.13. - Красноярск, 2010.

4. Aho A.V., Denning P.J., Ulman J.D., Principles of optimal page replacement, J. ACM, vol. 18, no. 1, 1971.

Материал поступил в редакцию 06.06.2011.

References

1. Ngo Txan' Xung. Metod vertikal'noj klasterizacii otnoshenij relyacionny'x baz danny'x / Txan' Xung Ngo // Vestn. Donsk. gos. texn. un-ta. - 2008. - #4. - In Russian.

2. Al'-Zgul' Mosab Basam. Gibridny'e algoritmy' v sistemax ke'shirovaniya ob''ektov / Mosab Basam Al'-Zgul' // Vestn. Donsk. gos. texn. un-ta. - 2008. - #4. - In Russian.

3. Zhukov A.I. Matematicheskaya model' metoda bigibridizacii algoritmov ke'shirovaniya / A.I. Zhukov, Mosab Basam Al'-Zgul' // «V mire nauchny'x otkry'tij». - #4(10). - Ch.13. - Krasnoyarsk, 2010. - In Russian.

4. Aho A.V., Denning P.J., Ulman J.D., Principles of optimal page replacement, J. ACM, vol. 18, no. 1, 1971.

RESULTS TESTING TECHNIQUE OF VERTICAL CLUSTERING RELATIONAL DATABASE M.V. GRANKOV, A.I. ZHUKOV

The results testing technique of the structural optimization of the relational databases founded on the effect leveling of the cache-system is considered. Its feasibility through the paths with object Hat sharing is proved. Keywords: structural optimization methods, vertical clustering, HBVP, relation decomposition.