Симулационни модели за изследване и оценка на характеристиките на сървъри за данни работещи в разпределена среда



Дата15.04.2017
Размер115.52 Kb.

ГОДИШНИК НА ТЕХНИЧЕСКИ УНИВЕРСИТЕТ – ВАРНА, 2007 г.


СИМУЛАЦИОННИ МОДЕЛИ ЗА ИЗСЛЕДВАНЕ И ОЦЕНКА НА ХАРАКТЕРИСТИКИТЕ НА СЪРВЪРИ ЗА ДАННИ РАБОТЕЩИ В РАЗПРЕДЕЛЕНА СРЕДА

Стефан Габровски*, Надежда Узунова, Филип Филипов и Любомир Карагяуров

*Висше училище–колеж “Телематика”, гр. Стара Загора, България, ул. “Петър Парчевич” № 26, Е-mail: s.gabrovski@gmail.com

Резюме. В доклада “Симулационни модели за изследване и оценка на характеристиките на сървъри за данни работещи в разпределена среда” е представена една възможност за оптимален избор на сървъри за данни за информационни системи работещи, както в хомогенна, така и в разпределена среда. За целта са използвани средствата на симулационното моделиране и симулационната система GPSS. Разгледани са конкретен симулационен модел и проведените с него симулационни експерименти.

Ключови думи: Данни, моделиране, симулиране, сървър.

УВОД

Проектирането и внедряването на информационни системи в световен мащаб е процес, който впечатлява с изключително бързите си темпове. При това няма никакви изгледи в близко бъдеще тази тенденция да бъде променена. Ядрото на всяка информационна система, независимо от това дали тя е WEB или Desktop базирана, независимо дали е предназначена да работи в хомогенна или хетерогенна среда, е нейният сървър за данни. В този смисъл изборът на конкретен сървър за данни е от особено значение за нормалното и успешно функциониране на цялата информационна система. От правилният му избор зависят важни характеристики и параметри на информационната система като: обща производителност, брой едновременно работещи потребители, съхраняване на данните, устойчивост на откази и много други.

ЕДНА ВЪЗМОЖНОСТ ЗА ИЗСЛЕДВАНЕ И ОЦЕНКА НА ХАРАКТЕРИСТИКИТЕ НА СЪРВЪРИ ЗА ДАННИ

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

Съществува голямо разнообразие от видове модели и изборът на един от тях естествено трябва да е обвързан със специфичните особености на симулираната система. Най-важните от тях са:

да притежава средства за паралелна обработка на заявки и събития;

да притежава възможности за моделиране на системи за масово обслужване;

да има добре разработен и лесен за използване програмен апарат;

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

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

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

ИЗБОР НА СИМУЛАЦИОННА СИСТЕМА

За програмната реализация на симулационните модели могат да бъдат използвани както езици от високо ниво като C++, Visual Basic или Java, така и специализирани симулационни езици като GPSS, SLAM, SIMSCRIPT, GASP, Simula и други. По-разумно е използването на специализирани езици за симулиране, тъй като те разполагат с много по-добре развити стандартизирани и универсализирани средства за изграждане на модели и провеждане на симулационни експерименти. От тази група, симулационните езици GPSS и SIMSCRIPT са двата най-често използвани представители, съответно на процесно-ориентираните и събитийно-ориентираните симулационни езици. Ясно се забелязва контрастта между силно структурираният GPSS и значително по-гъвкавият SIMSCRIPT. Относителната негъвкавост на GPSS често довежда до това, съответните симулационни модели да изискват по-голямо количество памет в сравнение с тези написани на SIMSCRIPT. Това е особено значимо при по-големите модели. От друга страна обаче при използване на GPSS в значителна степен се опростява процеса на програмиране. Благодарение на строго типизираната структура на GPSS процесът на обучение за работа с този език преминава по-леко и по-бързо. Освен това GPSS е още по-приложим за специализирани модели където е нужно максимално точно съответствие между реалната и моделираната системи.

В основни линии симулационните модели написани на GPSS се състоят от набор от макрокоманди, които се изпълняват в режим на интерпретация, докато тези написани на SIMSCRIPT се изпълняват в компилиран вид. В резултат на това моделите написани на GPSS работят по-бавно от тези написани на SIMSCRIPT. От друга страна обаче времето за изпълнение на симулационните програми не е определящо, тъй като по начало симулационните експерименти не се изпълняват в реално време и за тях определящи са качествените резултати, а не скоростта, с която се достигат.

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



СИМУЛАЦИОНЕН МОДЕЛ И РЕЗУЛТАТИ

Идеята да се използва симулационен модел за изследване и оценка на сървъри за данни е илюстрирана с GPSS модел на информационна система с разпределен сървър, изграден съгласно архитектурата ”клиент/сървър”. В структурен вид моделът е показана на фиг. 1.





Фигура 1. Структура на модела

В таблица 1 е показан в обобщен вид програмният симулационенен модел и с оглед на поставените цели, а именно да се наблегне на предложения подход, в него е симулиарана само част от информационната система, като връзката между клиента и сървъра е прeдставена единствено чрез два блока ADVANCE (4) и ADVANCE (13).




Таблица 1. Програмен симулационен модел

1 GENERATE FN$INPUT

2 SPLIT xхх,FN$LABEL

3 ASSIGN 1,FN$CLIENT

4 ADVANCE FN$RANDOM

5 ADVANCE FN$SERVER1

6 SELECT 2,FN$SERVER

7 QUEUE SERVER (P2)

8 SEIZE SERVER (P2)

9 DEPART SERVER (P2)

10 ADVANCE FN$DATA

11 ADVANCE FN$REPORT

12 RELEASE SERVER (P2)

13 ADVANCE FN$SERVER2

14 TERMINATE



Освен това в модела не са включени блокове за събиране на статистическа информация и за управление на процеса на симулиране, а част от операндите на блоковете или не са показани, или са зададени непълно. Симулирането е проведено със студентска версия на симулационната система GPSS, която е напълно функционална и предлага необходимите условия за провеждане на напълно коректни симулационни експерименти. Използваните в модела блокове и функции имат описаните в таблици 1 и 2 предназначение.



Таблица 2. Използвани блокове

Блок

Действие

GENERATE

Генерира транзакции (заявки) в модела.

SPLIT

Генерира необходимия брой заявки.

ASSIGN

Записва в зададения параметър на текущата транзакция номера (идентификатора) на съответния клиент.

ADVANCE (4)

Осигурява на постъпващите към сървъра заявки случаен характер.

ADVANCE (5)

Симулира времето необходимо за разпределяне на заявките между сървърите за случая на информационна система с разпределен сървър.




SELECT

Разпределя заявките между сървърите за случая на информационна система с разпределен сървър.

QUEUE

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

DEPART

Събира статистическа информация за чакащите пред съответния сървър заявки, като намалява техния брой с единица.

SEIZE

Симулира заемане на съответния сървър.

RELEASE

Симулира освобождаване на съответния сървър.

ADVANCE (10)

Симулира времето за търсене на данните в разпределената среда и времето необходимо за тяхната обработка.

ADVANCE (11)

Симулира времето необходимо за генериране на търсената справка.

ADVANCE (13)

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

TERMINATE

Извежда от модела постъпилите в него транзакции (заявки).

Таблица 3. Използвани функции

Функция

Действие

INPUT

Дефинира различни видове входни потоци.

CLIENT

Задава идентификационните номера на клиентите.

RANDOM

Задава на постъпващите към сървъра заявки случаен характер.

SERVER1

Задава времето необходимо за разпределяне на заявките между сървърите в случая на информационна система с разпределен сървър.

SERVER

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

DATA

Задава времето за търсене на данните в разпределената среда и времето необходимо за тяхната обработка.

REPORT

Задава времето необходимо за генериране на търсената справка.

SERVER2

Задава времето необходимо за изпращане на поисканите данни до клиентите.

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

промяна на вида и параметрите на входните потоци;

промяна в броя на разпределените сървъри;

промяна в броя на клиентите;

симулиране на хомогенна среда;

симулиране на разпределена среда;

промяна на времето за търсене на данните;

промяна на времето за генериране на справките;

промяна на времето за изпращане на данните до клиентите и др.

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

min, max и среден брой обработени заявки;

min, max и среден брой чакащи заявки в даден момент от време;

интегрален коефициент на използване на сървъра;

коефициент на използване (натоварване) на сървъра;

min, max и среден брой обслужени клиенти;

брой едновременно обслужвани клиенти и др.

В таблица 4 са показани само част от получените изходни данни от проведените симулационни експерименти със симулационният модел показан на фиг.1 и в таблица 1. При изследването е използвана информационна система „Ученици”, внедрена частично или изцяло в над 50 училища в България.



Таблица 4. Изходни данни




S

S1

S2

Q

Q1

Q2

k

k1

k2

R

0.8

0.4

0.3

20

9

8

5

3

2

P

0.6

0.2

0.19

19

3

2

5

3

2

N

0.7

0.3

0.4

19

3

2

5

3

2

Показаните в таблица 4 изходни данни имат следното значение: R – равномерно случайно разпределение, P – разпределение на Пуасон, N – нормално разпределение, S – коефициент на използване на сървър Server, S1 – коефициент на използване на сървър Server1, S2 – коефициент на използване на сървър Server2, Q – среден брой чакащи за обслужване заявки от сървър Server, Q1 – среден брой чакащи за обслужване заявки от сървър Server1, Q2 – среден брой чакащи за обслужване заявки от сървър Server2, k – среден брой едновременно обслужвани клиенти от сървър Server, k1 – среден брой едновременно обслужвани клиенти от сървър Server1 и k2 – среден брой едновременно обслужвани клиенти от сървър Server2.

ЗАКЛЮЧЕНИЕ

Докладът “Симулационни модели за изследване и оценка на характеристиките на сървъри за данни работещи в разпределена среда” е посветен на актуална в момента тема, свързана с проектиране и разработване на информационни системи работещи, както в хомогенна, така и в разпределена среда. По-същественото от представеното в доклада изглежда така:

Очертани са някои проблеми възникващи при избора на оптимален сървър за данни в процеса на проектиране на информацонните системи.

Представена е една възможност за моделиране на сървъри за данни, а именно чрез използване на симулационни модели, разработени чрез симулационната система GPSS.



Показан е конкретен симулационен модел на сървър за данни, като е извършен анализ на проведени с него симулационни експерименти.

ЛИТЕРАТУРА

[1] Connolly T., Begg C. Database Systems, Addison-Wesley, 2003.

[2] http://depts.washington.edu/gpss/

[3] Kostadinov K., Nakov O. An Opportunity for the Studying and Optimization of the Structure of Data in Distributed Medium, International Scientific Conference Computer Science’2004, Bulgaria, Sofia, December 7, 2004, Technical University-Sofia, Bulgaria.

[4] Kostadinov K., Nakov O. Metodology for the Structuring of the Input Information by Modeling of Structures of Data in a Distributed Medium, International Scientific Conference Computer Science’2004, Bulgaria, Sofia, December 7, 2004, Technical University-Sofia, Bulgaria.

[5] Kostadinov K., Nakov O. An Automated System for Generation of Simulation Models of the Structure of data in a Distributed Medium, Second International Scientific Conference Computer Science, Chalkidiki, Greece, 30th September – 2th October 2005.

[6] MCSE Microsoft SQL Server 2000, Microsoft Corporation 2001, Microsoft Press, Washington USA.

[7] Moder J., Elmaghraby S. Handbook of Operations Research, Van Nostrand Reinhold Company, 2001.

[8] http://www.minutemansoftware.com/
Научен ръководител: Константин Костадинов





База данных защищена авторским правом ©obuch.info 2016
отнасят до администрацията

    Начална страница