bigpo.ru
добавить свой файл
  1 ... 18 19 20 21 22 23


Таблица П.2.4

Характеристики созданных историй запросов ИР

Количество ИР (шт.)

Моделируемое время

Кол-во описанных «событий»

Реальный объём

(БД в MySQL)

Продолжительность

создания

100000

8640000 ед.

200156


6878660 байт или

~ 6 Мб

453 секунды или

~ 7 минут

5105191


175290771 байт или

~ 175 Мб

20871 секунда или

~ 347 минут

10099721


346859021 байт или

~ 346 Мб

83130 секунд или

~ 1385 минут (23 ч.)

17280000 ед.

299945


10295597 байт или

~ 10 Мб

648 секунд или

~ 10 минут

10100606


346505982 байт или

~ 346 Мб

70388 секунд или

~ 1173 минуты (19 ч.)

20104530


690176706 байт или

~ 690 Мб

239908 секунд или

~ 3998 минут (66 ч.)

200000

8640000 ед.

399053


13653505 байт или

~ 13 Мб

914 секунд или

~ 15 минут

10196540


350241444 байт или

~ 350 Мб

74206 секунд или

~ 1236 минут (20 ч.)

20201536


693397720 байт или

~ 693 Мб

216046 секунд или

~ 3600 минут (60 ч.)


Продолжение таблицы П.2.4

Количество ИР (шт.)

Моделируемое время

Кол-во описанных «событий»

Реальный объём

(БД в MySQL)

Продолжительность

создания

200000

17280000 ед.

599738


20616458 байт или

~ 20 Мб

1344 секунды или

~ 22 минуты

20204182


694164278 байт или

~ 694 Мб

215690 секунд или

~ 3594 минуты (59 ч.)

40199464


1379180704 байт или

~ 1379 Мб

580264 секунды или

~ 9671 минута (161 ч.)

300000

8640000 ед.

600431


20577339 байт или

~ 20 Мб

1376 секунд или

~ 22 минуты

15303706


525940458 байт или

~ 525 Мб

144098 секунд или

~ 2401 минута (40 ч.)

30302978


1041321138 байт или

~ 1041 Мб

383024 секунды или

~6383 минуты (106 ч.)

17280000 ед.

900162


30986482 байт или

~ 30 Мб

2115 секунд или

~ 35 минут


Продолжение таблицы П.2.4

Количество ИР (шт.)

Моделируемое время

Кол-во описанных «событий»

Реальный объём

(БД в MySQL)

Продолжительность

создания

300000

17280000 ед.

30285732


1040959724 байт или

~ 1040 Мб

405302 секунды или

~ 6755 минут (112 ч.)

60286358


2071821878 байт или

~ 2071 Мб

1343127 секунд или

~ 22385 минут (373 ч.)


Таким образом, после анализа приведённых таблиц становиться очевидным то, что большая длительность этапа моделирования сенсорного варианта (№7) обусловлена большим количеством событий, которые необходимо имитировать.


Приложение 3.


Значения критериев эффективности

Комментарии к таблицам:

  • Значения параметра Freshness указано в процентах (%), Needfresh в штуках, а Sumsize в мегабайтах (Мб).

  • В третьем столбце («Ситуация») таблиц указывается одно из девяти возможных сочетаний (с использованием “/”) факторов 2.3 (интенсивность изменений) и 2.4 (интенсивность запросов).



Приложение 4.


Значения переменной MaxProcessing


В табл. П.4.1 приведены замеренные в последний момент модельного времени значения переменной MaxProcessing (фиксирует максимальное количество одновременно скачиваемых ИР). Эти значения позволяют убедиться в росте потребляемых сенсорной системой мониторинга вычислительных мощностях при росте рабочей нагрузки.

Таблица П.4.1

Значения переменной MaxProcessing (по ситуациям)

Номер ситуации

Значение




Номер ситуации

Значение




Номер ситуации

Значение

1

3




19

4




37

5

2

4




20

6




38

7

3

4




21

5




39

5

4

5




22

6




40

5

5

8




23

12




41

10

6

9




24

11




42

10

7

4




25

7




43

6

8

10




26

15




44

13

9

10




27

16




45

14

10

4




28

4




46

5

11

6




29

5




47

6

12

5




30

5




48

6

13

5




31

4




49

6

14

11




32

7




50

11

15

9




33

8




51

13

16

6




34

4




52

9

17

13




35

9




53

16

18

14




36

10




54

17


Приложение 5.


Листинг модуля SimRobot.py

### SimRobot.py, by Ilya A. Zemskov (zemskov@univer.omsk.su)


__version__ = '$ Revision: 0.9.7 $ Date: 2003/07/24 9:53:00 $'


from __future__ import generators

from time import localtime, strftime

from random import Random, expovariate, uniform, randint, random

from SimPy.Simulation import *

from SimPy.Monitor import Monitor

import MySQLdb

from ConfigParser import *

from os import getcwd

import sys


###[ Simulation variables ]###

BadChanges = [1, 2, 3]

WasntChange = [6]

comini = "..\\ini\\common.ini"

dbini = "..\\ini\\db.ini"

taskinifile = "test.ini"


###[ Special variables ]###

try:

taskdir = sys.argv[1]

except IndexError, msg:

sys.exit("Error: missing parameter - name of task directory")


comcfg = ConfigParser()

comcfg.read(comini)

wdir = comcfg.get('Options', 'WorkDirectory')


dbcfg = ConfigParser()

dbcfg.read(dbini)


cfg = ConfigParser()

cfg.read(wdir + taskdir + '\\ini\\' + taskinifile)


flog = file(cfg.get('logOptions', 'LogDirectory') + cfg.get('logOptions', 'LogFileName'), "a+")


pdbconn = MySQLdb.Connect(dbcfg.get('dbOptions', 'Host'), dbcfg.get('dbOptions', 'Login'),

dbcfg.get('dbOptions', 'Password'), cfg.get('dbOptions', 'PagesDBName'))


chdbconn = MySQLdb.Connect(dbcfg.get('dbOptions', 'Host'), dbcfg.get('dbOptions', 'Login'),

dbcfg.get('dbOptions', 'Password'), cfg.get('dbOptions', 'ChangesDBName'))


statdbconn = MySQLdb.Connect(dbcfg.get('dbOptions', 'Host'), dbcfg.get('dbOptions', 'Login'),

dbcfg.get('dbOptions','Password'), cfg.get('dbOptions', 'StatDBName'))


routedbconn = MySQLdb.Connect(dbcfg.get('dbOptions', 'Host'), dbcfg.get('dbOptions', 'Login'),

dbcfg.get('dbOptions', 'Password'), cfg.get('dbOptions', 'RouteDBName'))


TRACETOFILE = cfg.getint('logOptions', 'LogTraceToFile')

RANDOMSEED = cfg.getint('simOptions', 'RandomSeed')


simvarsdefault = {\

'SumSizeRob' :0,\

'MinWaitCrawl' :cfg.getint('simOptions', 'ModelTime'),\

'MaxWaitCrawl' :0,\

'AvrWaitCrawl' :Monitor('AvrWaitCrawl'),\

'Cycles' :0}


statvarstime = {\

'needfresh' :5000,\

'freshness' :5000,\

'sumsizerobs':10000,\

'sumsize' :10000,\

'cycles' :0}


tmpstat = {\

'needfresh' :{},\

'freshness' :0,\

'wtime' :0}


###[ General procedures ]###

def putfile(st):

if TRACETOFILE:

flog.write(st+"\n")

flog.flush()

else: print st


###[ Simulation classes ]###

class Page:

def __init__(self, conn, pid):

self.pid = pid

self.lastch = cfg.getint('pageOptions', 'DefaultPageChange')

self.size = 0

self.changed = cfg.getint('pageOptions', 'DefaultPageChanged')

self.crawled = cfg.getint('pageOptions', 'DefaultPageCrawled')

self.wtime = cfg.getint('simOptions', 'ModelTime')

self.pload(conn)


<< предыдущая страница   следующая страница >>