Найти в Дзене
Postgres DBA

Как сравнить производительность/эффективность разных СУБД

Имеется одинаковый тестовый сценарий на разных СУБД расположенных на разных виртуальных машинах . Конфигурация ВМ сильно отличается: Слабая ВМ(1CPU) vs. Мощная ВМ( 24 CPU). Возможно ли оценить насколько мощная СУБД будет производительнее слабой ? Для сравнения используются показатели производительности СУБД по Режимам работы СУБД Границы по нагрузке : Слабая ВМ / Мощная ВМ Границы по производительности(среднее по долгому медианному сглаживанию) : Слабая ВМ / Мощная ВМ Возможно , найдена еще одна аномалия - показатель производительности более слабой СУБД значительно выше , чем более мощной. Данное обстоятельство не играет особой роли , если ведется наблюдение за одной СУБД , но хотелось бы сравнивать производительность разных СУБД, конечно при одном очень важном условии - сценарий нагрузки на СУБД должен быть одинаковый. При расчете метрики производительности используется понятие операционной скорости : Операционная(результативная) скорость Полезными операциями(результатами) работы
Оглавление

Архивный материал. Описанные методики или устарели или не используются.

Задача

Имеется одинаковый тестовый сценарий на разных СУБД расположенных на разных виртуальных машинах . Конфигурация ВМ сильно отличается: Слабая ВМ(1CPU) vs. Мощная ВМ( 24 CPU). Возможно ли оценить насколько мощная СУБД будет производительнее слабой ?

Возможно ли сравнить ?
Возможно ли сравнить ?

Для сравнения используются показатели производительности СУБД по Режимам работы СУБД

  • Зеленая зона(минимальное время отклика)
  • Желтая зона(увеличение время отклика до 100%)
  • Красная зона(увеличение время отклика свыше 100%)

Расчет метрики производительности

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

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

Слабая ВМ
Слабая ВМ
Мощная ВМ
Мощная ВМ

Границы по нагрузке : Слабая ВМ / Мощная ВМ

  • Зеленая зона: 5 / 60
  • Желтая зона: 8 / 91
  • Красная зона: >8 / >91

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

Слабая ВМ
Слабая ВМ
Мощная ВМ
Мощная ВМ

Границы по производительности(среднее по долгому медианному сглаживанию) : Слабая ВМ / Мощная ВМ

  • Зеленая зона: 9 217 041,94 / 2 768 184,53
  • Желтая зона: 5 248 819,48 / 1 275 114,02
  • Красная зона: 3 146 060,45 / 440 357,55

Возможно , найдена еще одна аномалия - показатель производительности более слабой СУБД значительно выше , чем более мощной.

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

Возможное решение аномалии или новая метрика

При расчете метрики производительности используется понятие операционной скорости :

Операционная(результативная) скорость
Полезными операциями(результатами) работы СУБД являются:
Количество строк выданных пользователю.
Количество запросов выполненных пользователем.
Количество зафиксированных пользователем транзакций.
Разделив количество на количество секунд (DB Time), которые потребовались на выполнения операций СУБД в изменяемый промежуток получаем - вектор , определяющий операционную(результативную) скорость:
QPS: Количество запросов в секунду.
TPS: Количество транзакций в секунду.
RPS: Количество строк в секунду.
Для того, что бы иметь одну цифру используется модуль вектора ( QPS , TPS , RPS ).
Полученное значение и будет считаться операционной скоростью.

При проведении работ по анализу стресс тестирования и построению эпюры производительности СУБД проводится расчет ожиданий СУБД .

В результате имеем :

1) График изменения операционной скорости

Слабая ВМ
Слабая ВМ
Мощная ВМ
Мощная ВМ

Никаких неожиданностей - значения операционной скорости для мощной ВМ значительно выше.

2) График изменения ожиданий СУБД

Слабая ВМ
Слабая ВМ
Мощная ВМ
Мощная ВМ

И тут наблюдается интересная деталь - значения ожиданий для мощной ВМ существенно ниже.

3) Отношение операционной скорости к ожиданиям СУБД

Слабая ВМ
Слабая ВМ
Мощная ВМ
Мощная ВМ

Слабая ВМ / Мощная ВМ

  • Зеленая зона: 0,210921223 / 34,64187711
  • Желтая зона: 0,0517522 / 4,439067167
  • Красная зона: 0,02173456 / 0,727830869

Физический смысл новой метрики еще предстоит окончательно определить , но уже сейчас можно сказать - сравнивать производительность СУБД в разных инфраструктурах - можно. В особенности, при условии - сценарий нагрузки одинаковый разница - инфраструктура и объем нагрузки.