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

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

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

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Григорьев Ю. А., Гасов В. М.

В статье анализируются существующие архитектуры параллельных систем баз данных. Приводятся выражения для среднего времени соединения двух таблиц методами NLJ и HJ, а также рассматриваются соответствующие математические ожидания для архитектур SE, SD, SN параллельных систем баз данных.. Рассматриваются параметры обработки запросов в следующих ресурсах: дисковом массиве, оперативной памяти, соединительной шине, процессоре. Отмечается, что при наличии «узкого места» обработка в соответствующем ресурсе может быть промоделирована с помощью СМО М/М/1. Оцениваются параметры этой СМО. Рассмотрен практический пример расчёта, позволивший сделать рад нетривиальных выводов.

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

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

электронное научно-техническое издание

НАУКА и ОБРАЗОВАНИЕ

Эл № ФС 77 - 305&9. Государственная регистрация №0421100025. 1994-0408

Оценка среднего времени выполнения соединения таблиц методами NLJ и HJ в параллельной системе баз данных 77-30569/380603

# 04, апрель 2012 Григорьев Ю. А., Гасов В. М.

УДК 004.657

МГТУ им. Н.Э. Баумана [email protected]

Введение

В настоящее время не существует научно обоснованного метода оценки и выбора архитектуры параллельной системы баз данных [2]. В предыдущих статьях [4, 15] рассмотрен математический метод анализа времени выполнения запроса к одной и двум таблицам параллельной системы баз данных (ПСБД). В данной работе демонстрируется применение математического аппарата производящих функций и преобразования Лапласа-Стилтьеса для оценки моментов времени выполнения соединения таблиц в ПСБД.

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

Варианты реализация параллельных систем баз данных

Наиболее распространенной системой классификации параллельных систем баз данных является система, предложенная Майклом Стоунбрейкером [2]. В соответствии с этой классификацией архитектуры подразделяются на следующие типы: SE (Shared-Everything) - архитектура с разделяемыми памятью и дисками; SD (Shared-Disks) - архитектура с разделяемыми дисками и соединительной сетью; SN (Shared-Nothing) - архитектура с разделяемой сетью.

Копеланд (Copeland) и Келлер (Keller) предложили расширение классификации Стоунбрейкера путем введения двух дополнительных классов архитектур параллельных машин баз данных: CE (Clustered-Everything) - архитектура с SE кластерами, объединенными по принципу SN; CD (Clustered-Disk) - архитектура с SD кластерами, объединенными по принципу SN.

На текущий момент наиболее часто применяемыми типами архитектур при построении высокопроизводительных параллельных систем является архитектура SE. Реже используются архитектуры SD, SN и CE. Реализаций архитектуры CD не известно. Приведем более подробное описание средств реализации архитектурных решений.

SE-архитектура представляет систему баз данных, в которой все диски напрямую доступны всем процессорам и все процессоры разделяют общую оперативную память. Доступ к дискам в системах SE обычно осуществляется через общий буферный пул. При этом следует отметить, что каждый процессор в системе SE имеет собственную кэш-память. Чаще всего эта архитектура реализуется на промышленных SMP-серверах, построенных на процессорах RISC. Примером реализации архитектуры SE может служить комплекс, состоящий из сервера Sun Enterprise M9000, системы хранения данных EMC Symmetrix DMX-4 и инфраструктуры сети хранения данных SAN [5].

SD-архитектура представляет систему баз данных, в которой любой процессор имеет доступ к любому диску, однако каждый процессор имеет свою приватную оперативную память. Процессоры в таких системах соединены посредством некоторой высокоскоростной сети. Системы SD чаще всего реализуется на промышленных серверах с процессорной архитектурой z/Architecture. Хотя по своему строению эти системы близки к архитектуре SMP-сервера, общая архитектура системы может изменяться с помощью программно-аппаратных средств Parallel Sysplex, позволяющих множеству узлов работать с единой высокопроизводительной внешней системой хранения данных. Примером реализации архитектуры SD может служить комплекс, состоящий из двух серверов IBM z10, системы хранения данных IBM DS8800 и инфраструктуры FICON [6].

SN-архитектура характеризуется наличием у каждого процессора собственной оперативной памяти и собственной дисковой системы. Как и в системах SD , процессорные узлы соединены некоторой высокоскоростной сетью. К настоящему моменту создано большое количество исследовательских прототипов и несколько коммерческих систем с архитектурой SN , использующих фрагмент-ный параллелизм на MPP-системах. Примером реализации архитектуры SN может служить комплекс Teradata Database [7, 8], который представляет собой совокупность SMP-систем (или простых однопроцессорных систем), построенных

на базе процессоров Intel x86_64 и связанных между собой высокоскоростной внутренней сетью BYNET. Каждый узел имеет свою собственную оперативную память и дисковую систему. Так как сеть BYNET реализует межузловой обмен данными по технологии точка-точка, то в данной конфигурации нет разделяемых ресурсов. В этом комплексе в качестве СУБД может функционировать только СУБД Teradata.

В архитектуре CD каждый узел представляет собой SD-систему. Используется дополнительное программное обеспечение, позволяющее осуществлять обмен метаданными между системами и арбитраж глобальных блокировок в СУБД и преобразующее весь комплекс к архитектуре CD. Примером реализации CD-архитектуры может служить комплекс из 4-серверов IBM SystemX 3950M2 и системы хранения данных Hitachi Universal Storage Platform V [9].

Выполнение запросов в параллельной системе баз данных

Процесс выполнения SQL-запроса в параллельной системе баз данных можно представить в виде следующих шагов [2]:

• генерация последовательного плана выполнения запроса,

• тиражирование плана выполнения запроса на все узлы системы,

• обработка запроса над фрагментированными таблицами (распределение фрагментов таблиц БД по узлам системы выполняется заранее и один раз),

• слияние полученных данных.

Рассмотрим процесс параллельной обработки запроса, где выполняется соединение таблиц R и S базы данных (рис. 1). Q = R х S - это логическая операция соединения (join) двух отношений (таблиц) R и S по некоторому общему атрибуту Y. В данном примере таблица R фрагментирована произвольным образом, а таблица S - по атрибуту соединения Y. На рис. 1 показано, что логический план выполнения соединения двух отношений тиражируется на 'n' процессоров в параллельной системе баз данных (на рисунке показаны 2 процессора). Далее происходит параллельная обработка на каждом процессоре соответствующих фрагментов таблиц R и S. Вследствие того, что таблица R не фрагментирована по атрибуту соединения, при последовательном чтении записей этой таблицы происходит их обработка в операторе exchange, осуществляющем разбор записи и её межпроцессорный обмен. Таблица S фрагментирована по атрибуту соединения и записи читаемые из фрагментов этой таблицы обрабатываются на каждом процессоре локально.

Оператор exchange является составным оператором и включает в себя четыре оператора: gather, scatter, split и merge. Оператор split - это оператор, который осуществляет разбиение кортежей (записей), поступающих из входного потока, на две группы: свои и чужие. Свои кортежи - это кортежи, которые должны быть обработаны на данном процессорном узле. Эти кортежи направляются в выходной буфер оператора split (стрелка вверх). Чужие кортежи, то есть кортежи, которые должны быть обработаны на процессорных узлах, отличных от данного, помещаются оператором split во входной буфер правого дочернего узла, в качестве которого фигурирует оператор scatter. Нульарный оператор scatter извлекает кортежи из своего входного буфера и пересылает их на соответствующие процессорные узлы. Нульарный оператор gather выполняет перманентное чтение кортежей из указанного порта со всех процессорных узлов, отличных от данного. Оператор merge, реализующий логическую операцию join, определяется как бинарный оператор, который забирает кортежи из выходных буферов своих дочерних узлов, соединяет их и помещает результат в собственный выходной буфер. Таким образом, с помощью рассмотренных операций оператор exchange реализует полноценный межпроцессорный обмен записями в параллельной системе баз данных при обработке запроса методом фрагментарного параллелизма.

Последовательный

план

\

\

Q

n- количество процессоров (фрагментов таблиц R и S)

Рис. 1. Обработка запроса Q = R х S в параллельной системе баз данных.

Оценка математического ожидания времени соединения таблиц

В работе [15] получены преобразования Лапласа-Стилтьеса (ПЛС) времени соединения таблиц A и B методами NLJ и HJ (алгоритм Grace):

VNLJ (5) = нAi (s,GBI (фв (sWl WP (S)(1 - PBnAB (1 - ф,N (S))))), (1)

VH (S) = HAi (S, ф (5)ФММ (s)fA ) X

GBf^D(s^.2(s^p(sX1 - Pb (1 - WD(sWlt(syfB ))) X , (2)

WAi (GBi(1 - PB + PB (1-+ -фР (s))(1 - nAB + Плвфи (s))))

r r

где

1 i-1 i i +1 n

HAi (s,z) = VAi (s.ф (s),•••, фМ (s) ^ф {s\-4n (s)) X

X П VAj (05115 -,1/-1, Z,1i +1,...,1n )

j=1,j ^

(3)

VAi(^ z1 v- zn ) = GAi (фБ Шм (s)фP (s)(1 - PA (1 - qAin (zn )))), (4)

GAi (1 - PA (1 - z)) - это производящая функция числа записей, удовлетворяющих условию поиска по таблице A (с вероятностью PA),

qAin (zb_, zn) определяется следующими рекуррентными формулами:

qAin (z1 ’•••’ zn ) = (1 РAin )qAin-1 (z1,—5 zn-1) + РAinzn , qAin-1(z1 ,•••, zn-1) = (1 - pAin-1)qAin-2(z1> — > zn-2) + pAin-1zn-1

••• (5)

qAi1(z1) =(1 - Pah ) + PAi1z1, PAi1 =1, pAij - это вероятность, что запись передаётся из i-го узла в j-й узел при условии, что она не была передана в узлы n„j+1,

GBi (1 - Рвплв (1 - z))- производящая функция числа записей таблицы B, удовлетворяющих условию поиска по таблице B (вероятность PB) и условию соединения (вероятность nAB ),

WAi (z) = nVAj (0,1I,•••,1І-1,z,1i+„•••,!„), (6)

j=1

r - число разделов (хеш-групп) в хеш-таблице,

показатели степени u>A < 2 и u>B < 2 определяют число чтений/записей на диск хеш-групп.

В приведённых выше формулах встречаются ПЛС фб(б), фм(я), фр(э) и Ф^б). Они имеют следующий смысл [4]:

Фв(б) - ПЛС времени чтения записи БД из подсистемы ввода/вывода,

2

фм (я) - ПЛС времени записи и последующего чтения записи БД из ОП, Фр(б) - ПЛС времени обработки записи БД в процессоре,

Фм(б) - ПЛС времени передачи записи БД по высокоскоростной шине, связывающей процессоры системы.

В табл. 1 приведены выражения для указанных преобразований для различных архитектурных решений [15].

Таблица 1

ББ SN

фБ (я) 1 1 + 1 И0 п^Б Ь Ь /ив - пЛо + Ья 1 - 1 + 1 И Ь Ь и о + Ья

фм(я) Им - п^м Им - п^м + я (обмен между процессорами осуществляется через ОП) Им Им + я

Фм (я) Им - п^м Им - п^м + я

фр (я) Ир ИР + я

Здесь п - процессоров (узлов) в параллельной системе баз данных, X и ^ -интенсивности поступления записей от одного процессора и их обработки в соответствующем ресурсе (Б - внешней памяти, М - ОП, Р - процессоре, N - шине), Ь

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

Наличие произведения 'пХ' в ПЛС означает, что ресурс является разделяемым в соответствующей архитектуре (т.е. к нему возможна очередь). Хотя поведение параллельной системы баз данных при выполнении запроса описывается в виде замкнутой системы массового обслуживания (СМО), но, как видно из табл.

1, здесь в качестве модели разделяемого ресурса используется разомкнутая СМО М/М/1.

Дифференцируя выражения (1) и (2) как сложные функции по б в нуле, можно получить моменты случайного времени (£) обработки запроса в параллельной системе баз данных (ПСБД) для различных способов соединения таблиц (N0 и Ш):

М 2 = ¥"(0) = М 2 -м1

М^=-Ч '(0), ^ # ^ (7)

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

MSE = —°&--------+ 0м + 0ы + 0р , (8)

цв - пЛв ^ - п^м Иг

MSD = —^--------+ 0М_ + _0Ы-------+ 0Р> (9)

- п^ Им Иы - п^ы Ир

Мы = 0^ + Ом + ——------------------------------------+ —. (10)

ИD Им Иы - п^Ы ИР

Здесь и далее индекс £ будем опускать. Выражения для Об, Ом, Ои, Ор для методов соединения ЫЫ и Ш приведены в табл. 2 [15]. При получении формул для Щ предполагалось, что хэш-таблица создающей таблицы А полностью сохраняется в оперативной памяти. Это сделано только для того, чтобы упростить выражения (в этом случае юА=юв=0).

Таблица 2

ыы ш

Об — ' р V Л 1 + РлУв п ; ^ ) п

Ор п 1 V + Vв + ) п гп

Ом 2Уа п Г1 + рл^ К п , 2 -V + Vв) п

Оы V Р ((п -1) + VвPвnлв) п

Параметры, используемые в формулах табл.2, определены ранее. Прямой расчёт по формулам (8) и (9) затруднён, так как достаточно сложно одновременно оценить параметры и Хм разделяемых ресурсов (диска и ОП). Но в системе из двух таких ресурсов, как правило, только один из них является "узким местом" (обычно это диск). Т. е. в среднем в нём накапливается требований намного больше, чем в другом разделяемом ресурсе. Наличие "узкого места" легко определить (табл. 3). В этом случае другой разделяемый ресурс можно считать неразделяемым. Тогда замкнутая модель ПСБД сводится к модели "ремонтника", которая при достаточно больших 'п' близка по характеристикам к СМО М/М/1 с ин-

тенсивностью входного потока пХ. Параметр Х легко рассчитывается (см. табл. 3 [15]). Расчётные формулы для математического ожидания представлены в последней колонке табл. 3. Эти формулы отличаются от выражений (8) и (9) тем, что для некритического разделяемого ресурса отсутствует произведение пХ, т.е. этот ресурс считается неразделяемым.

Таблица 3

Условие наличия "узкого места" "Узкое место" Определяемый параметр X Формула для оценки Х Формула для оценки математического ожидания (МО) времени выполнения соединения двух таблиц

ББ Об >> 0м + 0м Диск ХБ 0о 0В . 0м + 0м . 0Р Мо — пХс Мм мр

Мв Мм 0м + 0м . 0Р Мм МР

0в << Ом + Ом Мв Мм Память ХМ 0м + 0м 0В . 0Р Мв Мр 0м + 0м . 0Б . 0Р Мм — п^м МБ мР

Об >> Ом Диск ХБ 0о 0м . 0м . 0Р Мм Мм МР 0в . 0м . 0м . 0Р

Мо Мм Мв пЛв Мм Мм Мр

Об << 0м Мо Мм Сеть Хк 0м 0Б . 0м . 0Р МБ Мм МР 0в . 0м . 0м . 0Р Мв Мм Мм — пЯм МР

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

БЫ нет Сеть Хы

Расчёты по формулам, приведённым в табл.3, следует выполнять в следующей последовательности ]15]:

1. Выбрать требуемую архитектуру - колонка 1.

2. Выявить "узкое место" системы (оно, как правило, присутствует, так как загрузки ресурсов невозможно сбалансировать) - колонки 2, 3.

3. Рассчитать параметр X для "узкого места" - колонки 4, 5.

4. Если для "узкого места" выполняется неравенство (пХ/^)>1, то уменьшить число процессоров п и повторить пункт 4. Если это неравенство выполняется и для п=1, то считать данное архитектурное решение неудачным, так как в этом случае все требования будут ждать обслуживания в разделяемом ресурсе ("узкое место" очень медленное) и процессоры будут простаивать. Иначе перейти к пункту 5.

5. Рассчитать математическое ожидание времени выполнения запроса в ПСБД - колонка 6.

Пример расчёта среднего времени соединения таблиц

Расчёт математического ожидания (среднего) времени соединения таблиц в ПСБД [15] был выполнен при следующих значениях характеристик ресурсов.

1. Процессор - Intel Xeon 5160. СУБД - Oracle 9i. В [3, стр. 347] приведены результаты автотрассировки простого запроса соединения: число обработанных записей в двух таблицах - 640, число процессорных циклов - 7 106. В [14] для выбранного процессора приведено измеренное значение числа процессорных циклов, выполняемых Oracle в секунду (CPUSPEED) - 1.5-109. Поэтому для интенсивности обработки записей в процессоре имеем - ^P= 640/(7-106/1.5 -109)=1,3 -105.

2. Внешняя память - RAID10 с Кд=10 дисками 3.5'' Seagate Cheetah 15K.6 ST3146356FC; размер блока чередования (stripe size) - QB4=256 Кб; среднее время поиска и чтения блока чередования с диска -

tE4 ^-подвода + ^-вращения/2 + ОвЧ^чтения 4 + 4/2 + 256/200 7 мс.

Размер блока СУБД - ОБС=16 Кб; средняя длина записи таблиц А и В -1З=0.256 Кб, размер многоблочного чтения СУБД (переменная СУБД db_fi1e_mu1tib1ock_read_count) - дМБ=80. Поэтому для интенсивности чтения записей БД из массива RAID имеем -

^D= ^МБ -ОБС/1З/(ГqМБ -ОбС /ОБЧ/(КД/2)_1 ^БЧ^ °.7-106 Число 2 в этой формуле учитывает тот факт, что при чтении полосы RAID-массива (т.е. при одновременном чтении блоков чередования с разных дисков) используется половина дисков массива, так как в RAID10 каждый диск из этой половины имеет зеркальную копию.

3. Оперативная память - DDR3-1600 PC3- 12800. Расчёты показывают, что интенсивность чтения записей базы данных из ОП равна ^м= 10.4-106.

4. Высокоскоростная системная шина.: для SD - Para11e1 Sysp1ex 12x QDR, для SN - ByNet. В обоих случаях узлы соединены по схеме "точка-точка" (т.е. шина является неразделяемым ресурсом) и интенсивность передачи записей по этим шинам равна ^N= 50.3-106.

Далее приведены значения остальных параметров: число записей в таблицах A и B - VA=VB=106, вероятность фильтрации записей таблиц A и B -PA=PB=10-3 , вероятность успешного соединения двух записей - nAB= 10-4, количество хеш-групп в методе соединения HJ - r=10.

При расчётах использовались формулы из табл. 3 и 2. Для архитектур SE и SD "узким местом" является внешняя память (диск). При вычислениях величину 'nXD' необходимо разделить на 2, так как при обработке запросов на чтение от разных процессоров может быть использована не только основная, но и зеркальная половина дисков. Для архитектуры SN произведение 'nXN' необходимо исключить из формулы расчёта математического ожидания (т.е. обнулить 'nXN' в

колонке 6 табл. 3 для строки БК), так как в рассматриваемом примере шина является неразделяемым ресурсом. Графики зависимости математического ожидания времени выполнения соединения двух таблиц от числа процессоров 'п' в параллельной системе баз данных приведены на рис. 2, 3 [15].

Метод соединения 1\1Ы

Число процессоров

—♦— БЕ,БР -С^БЫ

Рис. 2. Зависимость математического ожидания времени выполнения соединения таблиц в архитектурах ББ, ББ и БЫ методом КЫ от числа процессоров.

Метод соединения Ни

Число процессоров —Ф-БЕ, БР —□—БЫ

Рис. 3. Зависимость математического ожидания времени выполнения соединения таблиц в архитектурах ББ, ББ и БЫ методом Ш от числа процессоров.

Анализ графиков позволяет сделать несколько выводов [15]:

1. Графики для архитектур SE SD практически совпали. Это объясняется высокими значениями интенсивностей и ^N.

2. При n>3 среднее время для метода соединения HJ на два порядка меньше среднего времени для NLJ (это и следовало ожидать для неиндексированной по атрибуту соединения вложенной таблицы B). Более того, MNLJ(1)~9400 с., Mhj(1)-19 с.

3. При n< 7 архитектуры SE и SD не на много хуже SN. Следует также отметить, что при n=7 загрузка диска для SE и SD равна 0,63.

4. Для SE и SD при n=11 перегружается дисковая подсистема, и дальнейший рост числа процессоров не имеет смысла. Для архитектуры SN время продолжает уменьшаться с ростом n (здесь нет разделяемых ресурсов). Однако следует иметь в виду, что для снижения времени выполнения соединения методом HJ с 2 секунд до 1 необходимо увеличить количество процессов с 10 до 20 (см. рис. 3), а это может оказаться экономически не целесообразным.

Таким образом, в работе приведены выражения для математических ожиданий времени выполнения операции соединения для методов NLJ и HJ. Рассмотрен практический пример расчёта, позволивший сделать рад нетривиальных выводов.

ЛИТЕРАТУРА

1. М. Тамер Оззу, Патрик Валдуриз. Распределенные и параллельные системы баз данных: [Электронный ресурс]. [http://citforum.ru/database/c1assics/distr_and_para1_sdb/]. Проверено 26.11.2010.

2. Соколинский Л. Б., Цымблер М. Л. Лекции по курсу "Параллельные системы баз данных”: [Электронный ресурс]. [http://pdbs.susu.ru/CourseManual.html]. Проверено

04.12.2010.

3. Дж. Льюис. Orac1e. Основы стоимостной оптимизации. - СПб: Питер, 2007. - 528 с.

4. Григорьев Ю.А., Плужников В.Л. Оценка времени выполнения запросов и выбор архитектуры параллельной системы баз данных// Информатика и системы управления. -2009. - № 3. - С. 3-12.

5. Производительность СУБД Oracle Database 11g при работе на сервере Sun SPARC Enterprise M9000: [Электронный ресурс]. [http://ru.sun.com/sunnews/press/2010/2010-05-18.jsp]. Проверено 26.11.2010

6. В.А. Варфоломеев, Э.К. Лецкий, М.И. Шамров, В.В. Яковлев. Лекции по курсу “Операционные системы и программное обеспечение на платформе zSeries”: [Электронный ресурс]. [http://www.intuit.ru/department/os/ibmzos/]. Проверено 26.11.2010.

7. Керри Болинджер. Врожденный параллелизм: [Электронный ресурс]. [http://www.osp.ru/ os/2006/02/1156526/_p1.html]. Проверено 26.11.2010.

8. Лев Левин. Teradata совершенствует хранилища данных: [Электронный ресурс]. [http://www.pcweek.ru/themes/detail.php?ID=71626]. Проверено 26.11.2010.

9. Orac1e Rea1 App1ication C1usters Administration and Dep1oyment Guide 11g Re1ease 1 (11.1): [Электронный ресурс]. [http://down1oad.orac1e.com/docs/cd/B28359_01/rac.111/ b28254/admcon.htm/]. Проверено 26.11.2010.

10. Григорьев Ю.А., Плутенко А.Д. Теоретические основы анализа процессов доступа к распределённым базам данных. - Новосибирск: Наука, 2002. - 180 с.

11. Жожикашвили В.А, Вишневский В.М. Сети массового обслуживания. Теория и применение к сетям ЭВМ. - М.: Радио и связь, 1988. - 192 с.

12. Клейнрок Л. Теория массового обслуживания. - М.: Машиностроение, 1979. - 432 с.

13. Бронштейн О.И., Духовный И.М. Модели приоритетного обслуживания в информационно-вычислительных системах. - М.: Наука, 1976. - 220 с.

14. Форум/Использование СУБД/Orade/CPUSPEED на Inte1Xeon 5500 (Neha1em): [Электронный ресурс]. [http://www.sq1.ru]. Проверено 02.12.2010.

15. Григорьев Ю.А., Плужников В.Л. Оценка времени соединения таблиц в параллельной системе баз данных// Информатика и системы управления. - 2011. - № 1. - С. 3-16

electronic scientific and technical periodical

SCIENCE and EDUCATION

__________El. .Vs KS 77 - 30569. -V«042l 100025. ISSN 1994-0408_

Estimation of mean time of tables connection by NLJ and HJ methods in parallel database system 77-30569/380603

# 04, April 2012 Grigor’ev Yu.A., Gasov V.M.

Bauman Moscow State Technical University

chernen@bmstu. ru

Known architectures of parallel database systems are analyzed in this article. The authors also consider expressions for evaluating the mean time of connection of two tables by NLJ and HJ methods; relevant mathematical expectations for SE, SD, SN architectures of parallel database systems are also considered. The authors provide examples of query processing in the following resources: disk array, RAM, connecting bus and processor. If there is a bottleneck in the resource, processing in that resource can be simulated by using the M/M/1 queue system. Parameters of that queue system are evaluated. The example of calculation which allowed to make several non-trivial conclusions is considered in the article.

Publications with keywords: average of distribution time for query execution, parallel system of database, Laplase-Stieltjes transformation, connection of tables, SE, SD, SN architectures, NLJ and HJ methods of connection of tables

Publications with words: average of distribution time for query execution, parallel system of database, Laplase-Stieltjes transformation, connection of tables, SE, SD, SN architectures, NLJ and HJ methods of connection of tables

References

1. Tamer Ozsu M., Patrick Valduriez. Distributed and parallel database systems. (Russ. version: Tamer Ozzu M., Patrik Valduriz. Raspredelennye i parallel'nye sistemy baz dannykh. Available at: http://citforum.ru/database/classics/distr and paral sdb/ , accessed 26.11.2010.).

2. Sokolinskii L. B., Tsymbler M. L. Lektsii po kursu «Parallel'nye sistemy baz dannykh” [Lectures on the course “Parallel database systems”]. Available at: http://pdbs.susu.ru/CourseManual.html, accessed 04.12.2010.

3. Lewis J. Cost-Based Oracle Fundamentals (Expert's Voice in Oracle). Apress, 2005. 520 p. (Russ. ed.: Dzh. L'iuis. Oracle. Osnovy stoimostnoi optimizatsii. SPb., Piter, 2007. 528 p.).

4. Grigor'ev Iu.A., Pluzhnikov V.L. Otsenka vremeni vypolneniia zaprosov i vybor arkhitektury parallel'noi sistemy baz dannykh [Score a run-time of query and selection of architecture of the parallel database systems]. Informatika i sistemy upravleniia, 2009, no. 3, pp. 3-12.

5. Proizvoditel'nost' SUBD Oracle Database 11g pri rabote na servere Sun SPARC Enterprise M9000 [Performance of Oracle Database 11g database while working on the server Sun SPARC Enterprise M9000]. Available at: http://ru.sun.com/sunnews/press/2010/2010-05-18.jsp, accessed

26.11.2010.

6. Varfolomeev V.A., Letskii E.K., Shamrov M.I., Iakovlev V.V. Lektsii po kursu “Oper-atsionnye sistemy iprogrammnoe obespechenie naplatforme zSeries” [Lectures on the course “Operating systems and software on zSeries platform”]. Available at: http://www.intuit.ru/department/os/ibmzos/, accessed 26.11.2010.

7. Carrie Ballinger. Born To Be Parallel (Russ. version: Kerri Bolindzher. Vrozhdennyi par-allelizm. Available at: http://www.osp.ru/os/2006/02/1156526/, accessed 04.05.2012.).

8. Levin L. Teradata sovershenstvuet khranilishcha dannykh [Teradata improves data warehouse]. Available at: http://www.pcweek.ru/themes/detail.php?ID=71626, accessed 04.05.2012.

9. Oracle Real Application Clusters Administration and Deployment Guide 11g Release 1 (11.1). Available at: http://download.oracle.com/docs/cd/B28359_01/rac.111/ b28254/admcon.htm, accessed 26.11.2010.

10. Grigor'ev Iu.A., Plutenko A.D. Teoreticheskie osnovy analiza protsessov dostupa k raspredelennym bazam dannykh [Theoretical basis of analysis of the processes of access to distributed databases]. Novosibirsk, Nauka, 2002. 180 p.

11. Zhozhikashvili V.A, Vishnevskii V.M. Seti massovogo obsluzhivaniia. Teoriia i prime-nenie k setiam EVM [Queueing network. Theory and application to computer networks]. Moscow, Radio i sviaz', 1988. 192 p.

12. Kleinrok L. Queueing Systems. Vol. 1. Theory. New York, John Wiley & Sons, 1975. (Russ ed.: Kleinrok L. Teoriia massovogo obsluzhivaniia. Moscow, Mashinostroenie, 1979. 432 p.).

13. Bronshtein O.I., Dukhovnyi I.M. Modeli prioritetnogo obsluzhivaniia v informatsionno-vychislitel'nykh sistemakh [Model of the priority services in the information-computing systems]. Moscow, Nauka, 1976. 220 p.

14. Forum/Ispol'zovanie SUBD/Oracle/CPUSPEED na IntelXeon 5500 (Nehalem) [Forum / Using the database/Oracle/CPUSPEED on IntelXeon 5500 (Nehalem)]. Available at: http://www.sql.ru, accessed 02.12.2010.

15. Grigor'ev Iu.A., Pluzhnikov V.L. Otsenka vremeni soedineniia tablits v parallel'noi sisteme baz dannykh [Score of the time of connection of tables in a parallel database system]. Informatika i sistemy upravleniia, 2011, no. 1, pp. 3-16.

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