РПЗ_2 (954223), страница 8
Текст из файла (страница 8)
Таблица 23 показывает использование предметных баз данных обрабатывающими процессами (приложениями) и среднее число обращений обрабатывающих процессов к базам данных за рассматриваемый интервал времени:
Таблица 23. Исходные данные
Пр\БД | БД1 | БД2 | БД3 | БД4 | БД5 | БД6 | БД7 | БД8 | БД9 | БД10 |
П1 | 100 | 60 | 150 | 140 | ||||||
П4 | 300 | 150 | 100 | |||||||
П5 | 85 | 300 | 30 | |||||||
П9 | 350 | 300 | 100 | 400 | ||||||
П10 | 240 | 90 | 40 |
Таблица 24. Распределение обрабатывающих процессов по узлам: распределенной сети
У\П | П1 | П4 | П5 | П9 | П10 |
У2 | 1,2 | 0,95 | |||
У3 | 1,3 | 0,8 | 0,8 | 0,55 | 0,7 |
У4 | 0,87 | 1,1 | 0,5 | 0,8 | |
У6 | 1,3 | 0,6 | 0,7 | ||
У7 | 0,9 | 1,2 | 0,9 |
Коэффициенты, приведенные в таблице 26, используются для получения количества обращений к базе данных в исходном варианте задания по формуле:
N1=N*k,
где: N - значение количества обращений к БД, приведенное в таблице 23;
k - значение коэффициента, приведенное в таблице 24;
N1 - результирующее значение количества обращений к БД для исходного варианта задания
На основании данных из таблиц 23 и 24 для исходного варианта была сформирована сводная таблица исходных данных, т.е. таблица 25 . Каждое значение этой таблицы есть среднее количество обращений к базе данных (БДi) определенного процесса (Пj) из определенного узла сети (Уk).
Таблица 25. Сводная таблица исходных данных
Узел | Коэф | Проц. | БД1 | БД2 | БД3 | БД4 | БД5 | БД6 | БД7 | БД8 | БД9 | БД10 |
У2 | 1,2 | П4 | 360 | 180 | 120 | |||||||
0,96 | П10 | 230 | 86 | 38 | ||||||||
У3 | 1,3 | П1 | 130 | 78 | 195 | 182 | ||||||
0,8 | П4 | 240 | 120 | 80 | ||||||||
0,8 | П5 | 68 | 240 | 24 | ||||||||
0,55 | П9 | 193 | 165 | 55 | 220 | |||||||
0,7 | П10 | 168 | 63 | 28 | ||||||||
У4 | 0,87 | П1 | 87 | 52 | 130 | 121 | ||||||
1,1 | П4 | 330 | 165 | 110 | ||||||||
0,5 | П9 | 175 | 150 | 50 | 200 | |||||||
0,8 | П10 | 192 | 72 | 32 | ||||||||
У6 | 1,3 | П1 | 130 | 78 | 195 | 182 | ||||||
0,6 | П9 | 210 | 180 | 60 | 240 | |||||||
0,7 | П10 | 168 | 63 | 28 | ||||||||
У7 | 0,9 | П4 | 270 | 135 | 90 | |||||||
1,2 | П5 | 102 | 360 | 36 | ||||||||
0,9 | П10 | 216 | 81 | 36 |
Оценка варианта.
Выполним оценку на примере варианта:
{БД1/ у1, БД4/у1, БД5/у1, БД7/у5, БД8/у5, БД9/у1}
Количественное значение оценки i-го варианта обозначим через Si.
В нашем примере - “S1”:
S1= S1.у2 + S1.у3 + S1.у4 + S1.у5 + S1.у6 + S1.у7 = 12067
где:
--------------------------------------------------------------------------------------------------------------------------------
S1.у2 = S1.у2.п2+ S1.у2.п4+ S1.у2.п10 = 475 + 660 + 522.5 = 1486,5;
S1.у2.п2 = S1.у2.п2.БД2 + S1.у2.п2.БД3 + S1.у2.п2.БД8 = 400 * 0,5 + 300 * 0,5 + 250 * 0,5 = 475;
S1.у2.п4 = S1.у2.п4.БД2 + S1.у2.п4.БД3 + S1.у2.п4.БД6 = 300 * 1,2 + 150 * 1,2 + 100 * 1,2 = 660;
S1.у2.п10 = S1.у2.п10.БД3 + S1.у2.п10.БД5 + S1.у2.п10.БД9 = 240 * 0,95 + 90 * 0,95 + 40 * 0,95 = 522.5;
---------------------------------------------------------------------------------------------------------------------------------
S1.у3 = S1.у3.п1 + S1.у3.п3 + S1.у3.п4 + S1.у3.п10 = 585+ 1060.5 + 440 + 259 = 2344.5;
S1.у3.п1 = S1.у3.п1.БД1 + S1.у3.п1.БД4 + S1.у3.п1.БД6 + S1.у3.п1.БД10 =
= 100 * 1,3 + 60 * 1,3 + 150* 1,3 + 140 * 1,3 = 585;
S1.у3.п3 = S1.у3.п3.БД1+S1.у3.п3.БД3+S1.у3.п4.БД5+S1.у3.п4.БД7 + S1.у3.п4.БД9 + S1.у3.п4.БД10 =
= 30 * 1,05 + 300 * 1,05 + 80 * 1,05 + 400 * 1,05 + 20 * 1,05 + 180 * 1,05 = 1060.5;
S1.у3.п4 = S1.у3.п4.БД2 + S1.у3.п4.БД3 + S1.у3.п4.БД6 =
= 300 * 0,8 + 150 * 0,8 + 100 * 0,8 = 440;
S1.у3.п10 = S1.у3.п10.БД3 + S1.у3.п10.БД5 + S1.у3.п10.БД9 =
=240 * 0,7 + 90 * 0,7 + 40 * 0,7 = 259;
--------------------------------------------------------------------------------------------------------------------------------
S1.у4 = S1.у4.п1 + S1.у4.п2 + S1.у4.п3 + S1.у4.п4 + S1.у4.п10 = 391.5 + 600 + 909 + 605 + 296 = 2961.5;
S1.у4.п1 = S1.у4.п1.БД1 + S1.у4.п1.БД4 + S1.у4.п1.БД6 + S1.у4.п1.БД10 =
= 100 * 0,87 + 60 * 0,87 + 150 * 0,87 + 140 * 0,87 = 391.5
S1.у4.п2 = S1.у4.п2.БД2 + S1.у4.п2.БД3 + S1.у4.п2.БД8 =
= 400 * 0,8 + 300 * 0,8 + 250 * 0,8 = 600
S1.у4.п3= S1.у4.п3.БД1+S1.у4.п3.БД3 + S1.у4.п3.БД5 + S1.у4.п3.БД7 + S1.у4.п3.БД9 + S1.у4.п3.БД10=
= 30 * 0,9 + 300 * 0,9 + 80 * 0,9 + 400 * 0,9 + 20 * 0,9 + 180 * 0,9 = 909
S1.у4.п4 = S1.у4.п4.БД2 + S1.у4.п4.БД3 + S1.у4.п4.БД6 =
= 300 * 1,1 + 150 * 1,1 + 100 * 1,1 = 605
S1.у4.п10 = S1.у4.п10.БД3 + S1.у4.п10.БД5 + S1.у4.п10.БД9 =
= 240 * 0,8 + 90 * 0,8 + 40 * 0,8 = 296
------------------------------------------------------------------------------------------------------------------------------------
S1.у5 = S1.у5.п3 = 1313;
S1.у5.п3 = S1.у5.п3.БД1 + S1.у5.п3.БД3 + S1.у5.п3.БД5 + S1.у5.п3.БД7+S1.у5.п3.БД9+S1.у5.п3.БД10 =
= 30 *1,3 + 300 *1,3 + 80 *1,3 + 400 *1,3 + 20 *1,3 + 180 *1,3 = 1313
S1.у6 = S1.у6.п1 + S1.у6.п2 + S1.у6.п10=1604
S1.у6.п1 = S1.у6.п1.БД1 + S1.у6.п1.БД4 + S1.у6.п1.БД6 + S1.у6.п1.БД10 =
= 100 *1,3 + 60 *1,3 + 150 *1,3 + 140 *1,3 = 585
S1.у6.п2 = S1.у6.п2.БД2 + S1.у6.п2.БД3 + S1.у6.п2.БД8 =
= 400 *0,8 + 300 *0,8 + 250 *0,8 = 760
S1.у6.п10 = S1.у6.п2.БД3 + S1.у6.п2.БД5 + S1.у6.п2.БД9 =
240 *0,7 + 90 *0,7 + 40 *0,7 =259
-------------------------------------------------------------------------------------------------------------------------------
S1.у7 = S1.у7.п2 + S1.у7.п3 + S1.у7.п4 + S1.у7.п10 = 2357,5
S1.у7.п2 = S1.у7.п2.БД2 + S1.у7.п2.БД3 + S1.у7.п2.БД8 =
= 400 *0,6 + 300 *0,6 + 250 *0,6 =570
S1.у7.п3 = S1.у7.п3.БД1 + S1.у7.п3.БД3 + S1.у7.п3.БД5+S1.у7.п3.БД7+S1.у7.п3.БД9 + S1.у7.п3.БД10 =
= 30 *0,95 + 300 *0,95 + 80 *0,95 + 400 *0,95 + 20 *0,95 + 180 *0,95 = 959,5
S1.у7.п4 = S1.у7.п4.БД2 + S1.у7.п4.БД3 + S1.у7.п4.БД6 =
= 300 *0,9 + 150 *0,9 + 100 *0,9 = 495
S1.у7.п10 = S1.у7.п10.БД3 + S1.у7.п10.БД5 + S1.у7.п10.БД9 =
= 240*0,9 + 90 *0,9 + 40 *0,9 = 333
Таким образом оценочная функция варианта распределения баз данных по узлам носит аддитивный характер.
Выбор метода решения:
Данная задача нахождения оптимального варианта является комбинаторной задачей распределения, однако учитывая аддитивный характер оценочной функции ее можно рашить не только методом полного перебора (что практически крайне затруднительно), но также методом динамического программирования, например методом ветвей и границ:
минимизировать S=f(x) при условиях x (- G, где G - полное (конечное) множество вариантов.