Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

книги2 / монография 31

.pdf
Скачиваний:
0
Добавлен:
10.05.2024
Размер:
3.71 Mб
Скачать

Таблица 4.11. Кортеж NQ(k) с количеством запросов, генерируемых в узлах системы

Номер узла системы

0

1

2

3

4

5

Количество

 

 

 

 

 

 

генерируемых

2 186

1 414

2 837

2 243

2 735

2 121

в узле запросов

 

 

 

 

 

 

Аналогично рассчитываются значения матрицы NQM(k,m) (таблица 4.12), которые содержат количество всех запросов, генерируемых в узлах системы к каждому фрагменту таблиц, используемых в системе.

Таблица 4.12. Матрица NQM(k,m) с количеством запросов, генерируемых к фрагментам таблиц

 

Узел

 

 

Фрагменты таблиц

 

 

 

 

 

 

 

 

 

 

 

 

F1

 

 

F2

 

 

F3

 

 

F4

 

 

F5

 

 

F6

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

N1

 

369

 

338

 

376

 

231

 

615

 

257

 

 

N2

 

230

 

176

 

369

 

191

 

214

 

234

 

 

N3

 

297

 

279

 

495

 

635

 

305

 

826

 

 

N4

 

223

 

203

 

950

 

314

 

225

 

328

 

 

N5

 

752

 

423

 

272

 

252

 

674

 

362

 

 

N6

 

258

 

670

 

305

 

182

 

219

 

487

 

 

Итого

 

2 129

 

2 089

2 767

1 805

2 252

 

2 494

Шаг 1. На этом шаге алгоритма вычисляем значения элементов кортежа FQ(m), каждый из которых содержит общее количество запросов (информационных и на модификацию данных) к фрагментам данных, генерируемых процессами, выполняемыми во всех узлах системы. Значения элементов кортежа FQ рассчитываются на основе матриц PF, PQE и PQU. Кортеж FQ представлен в таблице, расположенной ниже.

129

Таблица 4.13. Кортеж FQ с общим количеством запросов к фрагментам

 

Фрагмент

 

 

F1

 

 

F2

 

 

F3

 

 

F4

 

 

F5

 

 

F6

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Частота запросов

 

2 129

2 089

2 767

1 805

 

2 252

2 494

 

к фрагменту

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Шаг 2. В соответствии с описанием алгоритма на шаге 2 производится заполнение элементов кортежа FDS номерами фрагментов, отсортированных в порядке убывания количества запросов к этим фрагментам. Элементы FDS заполняются на основе данных кортежа FQ.

Заполняем элементы кортежа FDS таким образом:

­В первый элемент кортежа FDS записываем номер фрагмента из FQ с наибольшим количеством генерируемых к нему запросов.

­Во второй элемент записываем номер фрагмента, количество запросов к которому равно или меньше количества запросов у предыдущего фрагмента.

­Процесс заканчивается после просмотра последнего элемента кортежа FQ.

В итоге кортеж FDS содержит номера фрагментов, отсортированные в порядке убывания количества запросов к этим фрагментам. В этом порядке фрагменты и будут размещаться в узлах системы. В нашем примере кортеж FDS заполняется следующим образом:

Таблица 4.14. Кортеж FDS с номерами фрагментов, упорядоченных для последующего размещения в узлах

 

Номер

 

 

F2

 

 

F5

 

 

F4

 

 

F6

 

 

F1

 

 

F3

 

 

фрагмента

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Всего запросов

 

2 767

2 494

2 252

2 129

 

2 089

1 805

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Шаг 3. Вычисляем веса для всех фрагментов и заполняем матрицу FW полученными значениями. Вычисление весов

130

происходит в цикле по всем узлам и по всем фрагментам в соответствии с алгоритмом. Результат представлен в таблице 4.15.

Таблица 4.15. Матрица FW с весами фрагментов

Узел

 

 

Фрагмент

 

 

Nk

F1

F6

F2

F4

F5

F3

N1

134 583

187 558

140 490

96 875

199 595

103 591

N2

75 660

92 920

140 555

83 154

75 300

93 459

N3

109 818

156 172

186 711

251 430

108 905

307 183

N4

66 071

99 936

393 638

135 896

70 413

127 983

N5

286 610

217 938

112 720

93 772

234 693

159 182

N6

117 946

354 778

126 760

72 948

72 358

201 676

Шаг 4. Последовательно, в цикле по отсортированным номерам фрагментов из кортежа FDS распределяем эти фрагменты по узлам системы.

В итоге работы алгоритма получено следующее перераспределение фрагментов по узлам системы:

Таблица 4.16. Новое распределение фрагментов по узлам системы №2

Nk

F1

F2

F3

F4

F5

F6

N1

0

0

0

0

0

0

N2

0

0

0

0

0

0

N3

0

0

0

1

0

1

N4

0

0

1

0

0

0

N5

1

0

0

0

1

0

N6

0

1

0

0

0

0

Всего

1

1

1

1

1

1

131

Рис. 4.3. Распределение №2 фрагментов по узлам системы

В результате работы алгоритма получено новое распределение фрагментов, при котором распределенная система имеет следующие значения основных характеристик работы системы:

­Сумма затрат на функционирование системы равна 10 443единиц.

­Среднее время обработки запроса в системе равно 3 единицам.

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

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

132

Таблица 4.17. Характеристики распределенной системы

 

Затраты на

Среднее время

Распределение

функционирование

обработки

 

системы

запроса

Первоначальное

29 324

9

После перераспределения

10 443

3

 

 

фрагментов

 

 

 

 

 

Ухудшение / Улучшение

- 18 881

- 6

 

 

характеристики

 

 

 

 

 

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

4.8.Пример № 2 решения задачи оптимального размещения фрагментов таблиц

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

Предположим, что через некоторое время после последнего распределения фрагментов в системе произошли изменения в распределении интенсивности работы прикладных процессов в узлах системы. Эти изменения (новые значения) выделены цветом фона в соответствующих элементах матрицы PF(k,p) частот выполнения процессов в узлах системы. Матрица PF(k,p) с новыми значениями элементов показана в таблице 4.18 (левая колонка – a). Матрица

133

PF(k,p) с предыдущими значениями элементов показана в правой колонке – b.

Таблица 4.18(a,b). Матрица PF(k,p) частот выполнения процессов в узлах системы (Пример №2)

Таблица 4.18.а.

Узел

 

 

 

 

 

 

Процесс

 

 

 

 

 

 

 

Nk

 

 

 

P1

 

P2

P3

P4

 

P5

 

 

P6

 

N1

 

 

3

2

11

2

 

4

 

5

 

N2

 

 

4

2

2

3

 

2

 

3

 

N3

 

 

4

13

1

15

 

2

 

2

 

N4

 

 

12

2

1

4

 

2

 

1

 

N5

 

 

22

2

9

3

 

5

 

4

 

N6

 

 

24

1

2

8

 

2

 

1

 

 

 

 

 

 

 

Таблица 4.18.b.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Узел

 

 

 

 

Процесс

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Nk

 

P1

 

P2

P3

P4

 

P5

 

P6

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

N1

 

3

 

2

11

2

 

4

 

5

 

 

N2

 

4

 

2

2

3

 

2

 

3

 

 

N3

 

4

 

13

1

15

 

2

 

2

 

 

N4

 

12

 

2

1

4

 

2

 

1

 

 

N5

 

1

 

2

9

3

 

5

 

14

 

 

N6

 

2

 

1

2

8

 

12

 

1

 

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

134

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

Вкачестве начального распределения фрагментов для алгоритма

вэтом случае, естественно, будет использоваться распределение, полученное ранее в результате работы алгоритма в примере №1.А именно:

Таблица 4.19. Начальное распределение фрагментов (пример №2)

Nk

F1

F2

F3

F4

F5

F6

N1

0

0

0

0

0

0

N2

0

0

0

0

0

0

N3

0

0

0

1

0

1

N4

0

0

1

0

0

0

N5

1

0

0

0

1

0

N6

0

1

0

0

0

0

Всего

1

1

1

1

1

1

Поскольку параметры матрицы PF(k,p) частот выполнения процессов в узлах системы изменились, то соответствующие изменения произойдут и в следующих матрицах, значения в которых зависят от матрицы PF(k,p) и которые влияют на результат работы алгоритма:

Таблица 4.20. Кортеж NQ(k) с количеством запросов, генерируемых в узлах системы

 

Номер узла

 

 

0

 

 

1

 

 

2

 

 

3

 

 

4

 

 

5

 

 

системы

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Количество

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

генерируемых

 

2 186

 

1 414

 

2 837

 

 

3 456

 

 

4 490

 

 

4 041

 

 

в узле запросов

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

135

Соответственно будут изменены значения матрицы NQM(k,m) с количеством всех запросов, генерируемых в узлах системы к отдельным фрагментам таблиц.

Таблица 4.21. Матрица NQM(k,m) с количеством запросов, генерируемых к фрагментам таблиц

 

Узел

 

 

 

 

 

Фрагменты таблиц

 

 

 

 

 

 

F1

 

 

F2

 

 

F3

 

 

F4

 

 

F5

 

 

F6

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

N1

 

369

 

338

 

376

 

231

 

615

 

257

 

 

N2

 

230

 

176

 

369

 

191

 

214

 

234

 

 

N3

 

297

 

279

 

495

 

635

 

305

 

826

 

 

N4

 

 

1 209

 

 

312

 

 

552

 

 

339

 

 

563

 

 

481

 

 

N5

 

 

522

 

 

468

 

 

1 776

 

 

549

 

 

714

 

 

461

 

 

N6

 

 

368

 

 

290

 

 

1 863

 

 

496

 

 

409

 

 

615

 

 

Итого

 

 

2 995

 

 

1 863

 

 

5 431

 

 

2 441

 

 

2 820

 

 

2 874

 

На шаге 1 вычисляются новые значения элементов кортежа

FQ(m).

Таблица 4.22. Кортеж FQ с общим количеством запросов к фрагментам

Фрагмент

 

F1

 

 

F2

 

 

F3

 

 

F4

 

 

F5

 

 

F6

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Частота

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

запросов

2

 

1

 

5

 

2

 

2

 

2

 

к фрагменту

995

 

863

 

431

 

441

 

820

 

874

 

На шаге 2 на основе данных кортежа FQ производится заполнение элементов кортежа FDS номерами фрагментов, отсортированных в порядке убывания количества запросов к фрагментам.

136

Таблица 4.23. Кортеж FDS с номерами фрагментов, упорядоченных для последующего размещения в узлах

Номер

 

 

 

 

 

 

фрагмента

F3

F1

F6

F5

F4

F2

Всего запросов

5 431

2 995

2 874

2 820

2 441

1 863

На шаге 3 вычисляются значения элементов матрицы FW с весами всех фрагментов для всех узлов системы.

Таблица 4.24. Матрица FW с весами фрагментов

Узел

 

 

Фрагмент

 

 

Nk

F1

F6

F2

F4

F5

F3

N1

49 543

37 572

71 632

33 635

83 975

35 187

N2

26 480

21 343

65 744

28 538

27 124

31 509

N3

35 529

31 868

87 171

85 890

40 780

96 663

N4

121 960

38 480

89 432

48 065

74 058

71 307

N5

43 424

50 247

307 216

89 968

67 708

64 807

N6

33 746

25 910

361 308

82 513

45 418

82 842

На шаге 4 производится перераспределение фрагментов по узлам системы в соответствии с изменившимися параметрами функционирования распределенной системы. Перераспределение фрагментов производится последовательно, одного фрагмента за другим, в цикле по отсортированным номерам фрагментов, которые берутся из кортежа FDS (строка «Номер фрагмента»).

В итоге в результате перераспределения фрагментов, получаем новое распределение, представленное в таблице ниже:

137

Таблица 4.25. Новое распределение фрагментов по узлам системы №3

Nk

F1

F2

F3

F4

F5

F6

N1

0

0

0

0

1

0

N2

0

0

0

0

0

0

N3

0

0

0

0

0

1

N4

1

0

0

0

0

0

N5

0

1

0

1

0

0

N6

0

0

1

0

0

0

Всего

1

1

1

1

1

1

Рис. 4.4. Распределение №3 фрагментов по узлам системы

Если сравнить значения характеристик системы при первом перераспределении фрагментов, полученном в примере №1, и значения характеристик системы при новом распределении, то получим следующие итоги сравнения:

138

Соседние файлы в папке книги2