Использование корреляции для мониторинга производительности СУБД

от автора

Задача эксперимента

По результатам стресс тестирования СУБД определить статистические показатели производительности , для использования в качестве стартового события мониторинга при создания инцидента.

Сценарий стресс тестирования

1.Создание нагрузки на СУБД

pgbench

2.Базовая нагрузка в течении 1 часа

pgbench каждые 5 минут : —client=200

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

pgbench каждые 10 минут : —client=N , где N = 40 * итерация.

4.Условие остановки теста

Значение коэффициента корреляции между количеством активных сессий в состоянии ожидания и значением долгой скользящей по производительности Rxy < -0.7

5.Получение значения производительности СУБД

 Производительность СУБД — расчет метрики, временной анализ, параметрическая оптимизация / Хабр (habr.com)

  • Частота замеров показаний : 1 минута.

  • Период медианного сглаживания долгой скользящей: 1 час

Конфигурация тестовой виртуальной машины

Версия и редакция СУБД

Postgres Pro (enterprise certified) 15.7.2 on x86_64-pc-linux-gnu, compiled by gcc (GCC) 11.4.1 20230605 (Red Soft 11.4.0-1), 64-bit

CPU

processor       : 0 vendor_id       : GenuineIntel cpu family      : 6 model           : 85 model name      : Intel Xeon Processor (Skylake, IBRS, no TSX) … processor       : 5 vendor_id       : GenuineIntel cpu family      : 6 model           : 85 model name      : Intel Xeon Processor (Skylake, IBRS, no TSX)

RAM

free -g                 total   Mem:              31  

Результаты эксперимента

Нагрузка на СУБД

Рис.1. Общее количество сессий и количество активных сессий в ходе теста

Рис.1. Общее количество сессий и количество активных сессий в ходе теста

Производительность СУБД

Рис.2. График изменения производительности СУБД в ходе стресс теста

Рис.2. График изменения производительности СУБД в ходе стресс теста

Корреляция между производительностью СУБД и количеством сессий в состоянии ожидания

Рис.2. График изменения корреляции в ходе стресс теста

Рис.2. График изменения корреляции в ходе стресс теста

Итоги и выводы

  1. Показателем деградации производительности СУБД может служить значение корреляции между производительностью СУБД и количеством сессий в состоянии ожидания. Рост ожиданий и снижение производительности СУБД , свидетельствует о наличии проблем и необходимости создания инцидента для анализа и решения ситуации.

  2. Приоритет инцидента устанавливается по значению коэффициента корреляции:

    -0.7 < Rxy < -0.5 : Низкий приоритет

    Rxy < -0.7 : Высокий приоритет


ссылка на оригинал статьи https://habr.com/ru/articles/853068/


Комментарии

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *