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

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

CC BY
145
37
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
БАЗЫ ДАННЫХ / ОТНОШЕНИЯ КАТЕГОРИЗАЦИИ / ВРЕМЯ ДОСТУПА / АНАЛИТИЧЕСКАЯ МОДЕЛЬ / DATABASES / SUPERTYPE-SUBTYPE RELATIONS / ACCESS TIME / ANALYTICAL MODEL

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

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

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

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

УДК 004.652

О. А. Бистерфельд

АНАЛИТИКО-ИМИТАЦИОННЫЙ МЕТОД ОЦЕНКИ ВРЕМЕННЫХ ХАРАКТЕРИСТИК ДЛЯ РАЗЛИЧНЫХ ВАРИАНТОВ ПРЕДСТАВЛЕНИЯ ОТНОШЕНИЙ КАТЕГОРИЗАЦИИ В РЕЛЯЦИОННЫХ БАЗАХ ДАННЫХ

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

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

Abstract. The article analyzes information access procedures for various variants of the supertype-subtype relations representation. The author has developed a set of analytical models to estimate the fragment access time in databases with categorized data.

Key words: databases, supertype-subtype relations, access time, analytical model.

Введение

Распоряжением Правительства Российской Федерации от 20 октября 2010 г. утверждена Государственная программа Российской Федерации «Информационное общество (2011-2020 годы)» [1]. В Программе указано: «повышение эффективности государственного управления предусматривает: ...создание и развитие государственных межведомственных информационных систем, предназначенных для принятия решений в реальном времени.».

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

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

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

1. Способы представления категорированных отношений

Наиболее развиты способы реализации категорированных отношений в СУБД Oracle. Варианты СУБД Oracle охватывают практически все возможные варианты других СУБД, поэтому они приняты за основу при разработке аналитического метода оценки объемов памяти, необходимых для реализации категорированных отношений в реляционных БД. В многотомном описании методологии проектирования Oracle [2] приведены только словесные описания вариантов реализации с кратким перечнем достоинств и недостатков каждого.

На рис. 1 показана модель отношения категоризации по нотации Баркера («супертип» - «тип»).

Рис. 1. Базовая БЯ-диаграмма

Категорированные данные могут быть представлены (рис. 2):

- в одной таблице (вариант а);

- в нескольких (по количеству категорий) таблицах (вариант б);

- в нескольких (по количеству категорий + одна) таблицах (варианты в, г).

Вариант а

Вариант б

AÍ#) В(#) С т

#*А1 #*А1 #*А1

OÁ2 *В1 *С1

оА2 оС2

оВ2 ■ ■ ■ оА2

Вариант в

Рис. 2. Варианты реализации категорированных отношений

#*В1 оВ2

і мт

#*А1 оА2

... о В_В1 о С_С1

-< ■

#*С1

оС2

Вариант г Рис. 2. Окончание

Для проектирования фрагментов баз с категорированными данными предлагается использовать оценки времени исполнения запроса (Т) к таким фрагментам.

2. Проверка гипотезы о зависимости времени доступа от числа колонок и числа записей таблицы

Сложные процессы, реализуемые в СУБД, операционных системах и в телекоммуникациях системы, постоянно меняющееся количество записей в таблицах БД приводят к тому, что время исполнения запроса имеет характер сложной функции от системы случайных величин [3, 4].

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

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

Под временем доступа здесь понимается астрономическое время выполнения запроса типа

SELECT * FROM TEST_TBL. (1)

В созданной имитационной программе время рассчитывалось при помощи функции пакета DBMS_UTILITY - GET_TIME, позволяющей делать оценки времени с точностью до 0,01 с.

Имитационная программа использовалась для определения зависимостей времени доступа к таблице данных СУБД Oracle 8. Для получения зави-

симостей времени доступа от числа колонок и числа записей тестовых таблиц использовались запросы вида (1) к таблице TEST_TBL вида

CREATE TABLE TEST_TBL (nm number (38),

nm1 number (38), nm2 number (38) ...), (2)

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

По второму варианту для получения зависимостей использовались запросы вида (1) к таблице TEST_TBL вида

CREATE TABLE TEST_TBL (nm varchar2(100)), (3)

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

Таблицы (2), (3) не индексировались и не входили в состав кластера, так что для выполнения запроса типа (1) оптимизатор ORACLE выбирал всегда режим полного поиска (FULL) в таблицах (2), (3).

Измерения проводились путем запуска файлов-процедур в SQL*Plus, причем вывод результатов запроса на экран подавлялся установкой переменной среды termout в FALSE, что позволяло исключить время вывода на экран из результатов измерений.

При построении графиков зависимостей вычисленное время усреднялось по нескольким (до десяти) значениям для получения каждой точки графиков.

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

всему массиву экспериментальных данных. Отклонения получаемых оценок

не превышали нескольких процентов от средних значений.

Полученные зависимости (для СУБД Oracle) представлены на рис. 3.

Экспериментальные данные характеризуются линейными зависимостями времени доступа к таблице:

T = f1 {N); (4)

T = f2 {k), (5)

где N - число записей в БД; k - число полей в записях.

Оценки достоверности аппроксимации с помощью R2 (для семейства зависимостей (4): 0,9986-0,9996; для семейства (5): 0,9897-0,9925) достаточны для выявления зависимости времени доступа от числа записей и от числа колонок таблиц баз данных.

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

111.4

106.4

101.4

96.4

91.4 о 86,4 Я 31,4 ° 76,4

І 66,4 | 61,4

К 56,4

ш

(и 51,4 щ 1 5: 46,4 'І'

& 41,4

36.4

31.4

26.4

21.4

16.4

11.4

о

о

—■— 1 колонка —Т— 3 колонки —ж— 5 колонок —□— 7 колонок —*— 2 колонки —I— 4 колонки —■— 6 колонок

Рис. 3. Зависимости времени доступа к таблице от числа колонок и числа записей

3. Анализ данных имитационной программы

Зависимости коэффициентов т и Ь линейных уравнений (у = тх + Ь) семейства регрессий (4) от числа колонок таблицы представлены на рис. 4. На полученные зависимости т = /3 (к) и Ь = / (к) также построены линейные регрессии. Коэффициенты последних двух регрессий вида у = тх + Ь обозначим соответственно тт; Ьт; тЬ; ЬЬ.

4. Модель времени доступа к таблице

Предлагается использовать в качестве аналитической модели времени доступа к таблице данных функцию двух переменных N и к (число записей и число колонок таблицы):

Т = (ттк + Ьт) N + (тЬк + Ьь ). (6)

Адекватность линейной модели регрессии экспериментальным результатам подтверждена с помощью критерия отношения дисперсий.

Построенная на данных имитационной программы модель может также трактоваться как модель производительности СУБД и технических средств.

Число записей в таблице

число колонок

Рис. 4. Зависимости коэффициентов т и Ь семейства регрессий на экспериментальные данные Т = /к (N) от числа колонок таблиц баз данных

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

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

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

Введем обозначения:

N - число записей в БД;

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

N - число записей категории /;

кк - число категорий;

коа - число общих атрибутов;

кга - число частных атрибутов (для категории /).

Вариант а. Для выборки данных по конкретной записи достаточно выполнения одного запроса к единственной таблице.

Вариант б. Для выборки данных по конкретной записи достаточно выполнения одного запроса к одной из кк таблиц.

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

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

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

Справедливо и замечание к варианту б.

Вариант г. Для выборки данных по конкретной записи в полном объеме необходимо выполнение двух запросов: к одной из kk таблиц категорий и к таблице супертипа.

Для выборки данных по конкретной записи в объеме частных атрибутов необходимо выполнение запроса: к одной из kk таблиц категорий.

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

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

6. Аналитические модели времени доступа для различных вариантов представления категорированных отношений

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

Та, Тб, Тв, Тг - арифметическое среднее время доступа (АСВД) для вариантов организации а, б, в, г соответственно;

Таос, Тбос, Твос, Тгос - АСВД при условии полного выбора данных (общие и частные атрибуты записей);

Тао, Тбо, Тво, Тго - АСВД при выборе общих атрибутов записей;

Тас, Тбс, Твс, Тгс - АСВД при выборе частных атрибутов;

Таг-, Тбг, Твг, Тгг - АСВД к данным категории i;

Тшос, Тбшс, Твгос, Тггос - время доступа к данным категории i (ВДК) при условии выборе общих и частных атрибутов;

Таю, Тбо, Тво, ТпЪ - ВДК при выборе общих атрибутов;

Таге, Тбгс, Твгс, Тпс - ВДК при выборе частных атрибутов.

Вариант а:

T ■ — T ■ — T ■ — T ■ =

Jm 1moc 1rno 1 агс

f kk > f kk >

m rnm koa + ^ kia bm N + mb koa + ^ kia + bb

v i=l ) v i=1 )

Замечание. В СУБД возможна несущественная зависимость времени доступа от числа выбираемых атрибутов (время доступа к таблице зависит не

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

Вариант б:

Тб1 = Тб^ = Тбю = Т бгс = [тт (koa + ^ ) + Ьт ] ^I + тЬ ( + kia ) + ЬЬ . (8)

Вариант в:

Tвioc = Т вic = [тт (koa + kia ) Ьт ] Ni + тЬ (koa + kia ) ЬЬ ; (9)

Твю = {ттКа + Ьт ) ) + тЬ^а + ЬЬ . (10)

Вариант г:

= {mmkia + Ьт ) + тЬ^а + ЬЬ +

+ [тт ( + % ) + Ьт ]^ + тЬ (koa + % ) + ЬЬ ; (11)

Тгю = [тт ( + кк ) + Ьт ]^ + тЬ ( + кк ) + ЬЬ '; (12)

Тгк = {mmkia ^ Ьт )) ^ mbki& ^ ЬЬ . (13)

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

Введем обозначения: Ро - вероятности обращения к категории /;

P P P

Bp, ГК, гб'с

- распределение вероятностей типов обращений для категории

i, где Бр - обращение к категории i с запросом полных данных; Blo - обращение к категории i с запросом только общих атрибутов; Б1С - обращение к категории i с запросом только частных атрибутов;

кк

Ta = Taoc = Tao = Tac = ^ POi Taioc ; (14)

i=1

кк

Тб = T6oc = T6o = T6c = ^POíT6íoc ; (15)

/=1

к

к

(PBi + РБ )?Bioc + РБг Твго

Тв = Z р0,

i=1

С учетом теоремы гипотез (формулы Бейеса) [3] получили:

(16)

кк

Z ъРб'Т

1 i Up кк

ТроА

Tвoc = ^------------------------; (17)

■ 1 БР

i=1

кк

2 Р0іРвіТвіс 2 Р0іРвСТвіос і=1_____________= і=1

кк кк

2Ро,Р„- 2ро,\

і=1 і=1

кк

2 Р0,Рв1Тч

і=1_

кк

2 Р0,РЕ-і=1

Ты = (РВ + РВ )Твюс + РВ Твю . (20)

^ р ^С О

Для варианта в возможны два способа доступа к общим атрибутам. Оценка Тво при выполнении запроса к таблицам категорий должна выполняться по формуле (17), к таблице супертипа - по формуле (19):

i=кк

Тг = 2 Р0/ (РВ Тгюс + Рв- Тгк + РВ Тгю ) ; (21)

1 ^ р ^с О

/'

кк

2 Р0,РВ' Тгюс . ! 7 Р

Тгос = ^----------------; (22)

Кк

2 Р0/РвР

І =1

кк

2 Р°РВТгС І=1_

кк

2 Р0,РВ1

i=1

кк

2 Р(01РВоТ™

Тго = ^-----------------■ <24)

2 гь,Рв1

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

І=1

Т = Р ■ Т + Р Т + Р - Т ■ (25)

-'г/ в^ г/ос 1 вм г/С 1 Вм г/О-

^р с о

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

7. Анализ результатов моделирования

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

приведена на рис. 5. Варианты организации могут отличаться по времени доступа более чем в 5 раз.

500 1000 1500 2000

Число записей

♦ Вариант а А Вариант в

■ Вариант б X Вариант г

Рис. 5. Зависимости среднего времени доступа от числа записей фрагментов с различными вариантами организации (равномерное распределение вероятностей типа обращений и числа записей по категориям; koa = 2; kia = 3; kk = 4)

Заключение

Оценки времени доступа к фрагментам баз с категорированными данными показывают их зависимость от большого числа факторов:

- параметров процессов выборки данных (распределения вероятностей обращений к категориям данных и типов запросов);

- структуры категорированных данных (числа общих и частных атрибутов, числа категорий и т.д.);

- вариантов организации категорированных данных;

- принимаемых мер по повышению производительности БД (например, индексирования записей).

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

Список литературы

1. Государственная программа Российской Федерации «Информационное общество (2011-2020 годы)», утверждена распоряжением Правительства Российской Федерации от 20 октября 2010 г. № 1815-р.

2. CDM - метод разработки информационных систем фирмы Oracle // Oracle Magazine. Russian Edition. - 1997. - № 2. - С. 31-49.

3. Вентцель, Е. С. Теория вероятностей / Е. С. Вентцель. - М. : Гос. изд-во физ.-мат. лит-ры, 1962. - 576 с.

4. Феллер, В. Введение в теорию вероятностей и ее приложения : в 2 т. ; пер. с англ. / В. Феллер. - М. : Мир, 1984. - Т. 2. - 738 с.

Бистерфельд Ольга Александровна

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

Bisterfeld Olga Alexandrovna Candidate of engineering sciences, associate professor, sub-department of informatics and computer engineering, Ryazan State Radio Engineering University

E-mail: bist19@yandex.ru

УДК 004.652 Бистерфельд, О. А.

Аналитико-имитационный метод оценки временных характеристик для различных вариантов представления отношений категоризации в реляционных базах данных / О. А. Бистерфельд // Известия высших учебных заведений. Поволжский регион. Технические науки. - 2011. - № 4 (20). -С.95-105.

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