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

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

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

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

Рассматривается проблема конструирования схемы распределенной базы при динамическом увеличении числа клиентов, подключенных к базе данных. Целью статьи является аналитический учет процесса трансформации системы и выбор решения о параметрах включаемого в систему сервера репликаций. Аналитические расчеты проводились на основе использования методов теории систем массового обслуживания. Представленная модель учитывает особенности работы сложных транзакций, обращающихся к множеству физически разделенных фрагментов баз данных. Ил. 1. Библиогр. 7 назв.

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

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

high_q_col_selectivity(que) - запрос que обладает высокой избирательностью по столбцу col.

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

Для каждой таблицы, если она дезорганизована по какому-либо столбцу и все запросы по данному столбцу обладают низкой избирательностью, - не следует создавать «¿tree-индекс» по данному столбцу:

VtabVcol (table _ disorg (tab, col) л

A^que (query _ column (col, que) л

л low _ q _ col _ selectivity (que, col

^ —btree _ index (col)).

Для каждой таблицы, если она организована по каким-либо столбцам, использующихся в запросах с высокой или средней избирательностью по этим столбцам, - следует создавать «btree-индексы» по данным столбцам:

VtabVcol (table _ org (tab, col) л ÁBque (query _ column (col, que) л л—low _ q _ col _ selectivity (que, col)) ^ ^ btree _ index (col)).

Для каждой таблицы, если она дезорганизована по каким-либо двум столбцам и все запросы, использующие эти столбцы в предикатах, объединенных логической операцией «И»/«ИЛИ», обладают высокой избирательностью, - следует создавать «btree-индексы» по данным столбцам:

VtabVcollVcol2 (table _ disorg (tab, coll) л

Atable _ disorg (tab, col2) л

лVque ((query _ columns _ and (que, coll, col2) v

v query _ columns _ or (que, coll, col2)) л

Ahigh _ q _ selectivity (que)) ^

^ btree _ index (coll) л btree _ index (col2)).

Для каждой таблицы, если она дезорганизована по каким-либо столбцам и существуют запросы, использующие эти столбцы в предикатах, объединенных логической операцией «И»/«ИЛИ», которые не обладают низкой избирательностью, - следует создавать «bit-индексы» по данным столбцам:

VtabVcollVcol2 (table _ disorg (tab, coll) л лtable _ disorg (tab, col2) л K^que ((query _ columns _ and (que, coll, col2) v v query _ columns _ or (que, coll, col2)) л л— low _ q _ selectivity (que)) ^ ^ bit _ index (coll) л bit _ index (col2)).

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

25 декабря 2006 г.

Кубанский государственный технологический университет, г. Краснодар

УДК 681.3

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

© 2007 г. Г.В. Сучков, В.Н. Кухарев

Введение

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

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

Современные работы [1-7] анализируют поэтапное моделирование процесса добавления новых узлов с локальными базами данных в систему. Однако более

актуальной представляется задача аналитического расчета перераспределения потоков заявок от пользователей к серверам.

Постановка задачи

Исходными данными являются параметры текущего клиент-серверного фрагмента, X - интенсивность поступления заявок от множества клиентов К, ц -интенсивность обслуживания заявок на сервере Р1, исходя из этих данных рассчитывается загрузка сервера и вероятность потерь заявок (которая нас не устраивает). Необходимо добавить в систему такой сервер репликаций, который бы свел вероятность потерь к допустимой величине в каждом из образованных фрагментов.

Р < р • р < р

п1 — тах1' п 2 _ тах2 •

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

(1 -р )р Nr +1 и P = t'r»'r-< p

nr N+2 — max r '

1 р r

Рассмотрим решение по репликационному серверу - приведем уравнение к нормальному виду, умножая на знаменатель, знак неравенства не изменится, поскольку

1 -р/+2 >0, так как рrN+2 = 0,1.

Таким образом, умножая на знаменатель, получаем р Nr +1(р -р P -1) + P > 0

г r VMr Mr max r ' max r _

Рассмотрим решение данного неравенства для систем с нулевыми очередями, раскрывая скобки и решая уравнение, получаем неравенство вида:

(

1 + |2Pmax - 1 У 1 - |2Pmax - 1 2 (1 - Pmax ) l|P 2 (1 - Pmax )

Л

> 0 .

Аналитический метод решения задачи

Трансформируем систему в две М/М/1/Ж При этом происходит дробление исходного множества клиентов (а соответственно и интенсивности генерации запросов от них). Исходная интенсивность поступления заявок от множества клиентов X преобразуется в две интенсивности Хг - к серверу репликаций и (X - Хг) - к прежнему серверу.

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

В новых фрагментах загрузки серверов и вероятности потерь составят соответственно:

А,

Отсюда находим варианты решения:

>1 + |2Ртах - 1 >0

1) р>—--1, р> 0;

^ 2 (1 - Ртах ) Н

2) р<1 ~12 Ртах -1 , р> 0.

2 (1 - Ртах )

Замечание: первый вариант ответа при стандартных допустимых вероятностях потерь при обработке запросов Ртах < 0,5 позволяет провести дальнейшую трансформацию:

2 Ртах - 1 < 0; 12 Ртах " 1 = 1" 2 Ртах;

P>

1+1-2P

А.

P1 =— и р r = —;

2 (1 - Pmax )

Аналогично получаем решения для случая N = 1:

Pn1 =

(1 -Р0 р"+

1 -р,N+2

и Pnr =

(1 -Рг ) р,

1 -р

N+2

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

_ (1 -Р^+1 < Р

п1 , - N+2 — тах1 1 Р1

1) р>

P + P2 + 4P

max max max

р>1;

2) р<

P - P2 + 4 P

max max m

р<1.

Дальнейшее аналитическое нахождение минимально допустимой интенсивности обработки на сервере требует решения уравнения (N+2)-И степени. В общем виде трансформация решений представлена на рисунке.

r

N.. +1

2

r

2

3,0

н о

"Ü ft ю о

2,5

2,0"

1,5

1,0"

U

ю

U £

0,5

0,35 0,30 0,25 0,20 0,15 0,10 Предельная вероятность потерь

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

0,05

Динамика требуемой интенсивности обработки запросов на сервере в зависимости от требований по допустимой вероятности потерь

Выводы

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

Литература

1. Коннолли Т., Бегг К. Базы данных. Проектирование, реализация и сопровождение. Теория и практика: 3-е изд.: Пер. с англ. М., 2003.

2. Ролланд Ф. Основные концепции баз данных: Пер. с англ. М., 2002.

3. Amir Y., Danilov C., Miskin-Amir M., Stanton J., Tutu C. On the Performance of Wide-Area Synchronous Database Replication: Technical Report CNDS-2002-4. November 18, 2002 http://www.cnds.jhu.edu.

4. Didonet M. Stage report "Adaptive Replication Models" / Université de Nice Sophia Antipolis. July,1st 2003.

5. Pitoura E. A Replication Schema to Support Weak Connectivity in Mobile Information Systems // 7th International Conference on Database and Expert Systems. Applications (DEXA), September 1996.

6. Preguwa N., Shapiro M., Martins J.L. Automating semantics-based reconciliation for mobile databases // RENPAR' 15/SympaAAA. 2003.

7. Ripeanu M., Foster I. A Decentralized, Adaptive, Replica Location Service // 11th IEEE International Symposium on High Performance Distributed Computing (HPDC-11) Edinburgh, Scotland, July 24-16, 2002.

Южно-Российский государственный технический университет (Новочеркасский политехнический институт)

10 ноября 2006 г.

0

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