Предпосылка к исследованию

Исследование гипотезы СУБД по природе своей является стохастической, а не детерминированной системой.

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

Инструмент и сценарий тестирования

Для тестирования используется стандартный инструментарий - утилита pgbench

Параметры pgbench

  • pgbench_init_param= --no-vacuum --quiet --foreign-keys --scale=100 -i test_pgbench

  • pgbench_param= --progress=60 --protocol=extended --report-per-command --jobs=1 --client=100 --time=14400 test_pgbench

Сценарий: начальная серия эксперимента состоит из 4-х замеров статистических показателей производительности СУБД в течении 1 часа.

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

Для снижения влияния выбросов показателей производительности, используется медианное сглаживание с периодом 10 минут.

1-й час

Статистические показатели производительности СУБД

Рис.1. Статистические показатели производительности: 1-й час
Рис.1. Статистические показатели производительности: 1-й час

Распределение вероятности

Рис.2. Распределение вероятности 1-й час
Рис.2. Распределение вероятности 1-й час
Рис.3. Распределение вероятности 1-й час - график
Рис.3. Распределение вероятности 1-й час - график

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

Для простоты показаны только события с коэффициентом корреляции > 0.5 и процентом наблюдений > 50%

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

2-й час

Статистические показатели производительности СУБД

Рис.5. Статистические показатели производительности: 2-й час
Рис.5. Статистические показатели производительности: 2-й час

Распределение вероятности

Рис.6.Распределение вероятности: 2-й час
Рис.6.Распределение вероятности: 2-й час
Рис.7. Распределение вероятности: 2-й час - график
Рис.7. Распределение вероятности: 2-й час - график

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

Для простоты показаны только события с коэффициентом корреляции > 0.5 и процентом наблюдений > 50%

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

3-й час

Статистические показатели производительности СУБД

Рис.9. Статистические показатели производительности: 3-й час
Рис.9. Статистические показатели производительности: 3-й час

Распределение вероятности

Рис.10. Распределение вероятности: 3-й час
Рис.10. Распределение вероятности: 3-й час
Рис.11. Распределение вероятности: 3-й час - график
Рис.11. Распределение вероятности: 3-й час - график

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

Для простоты показаны только события с коэффициентом корреляции > 0.5 и процентом наблюдений > 50%

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

DataFileImmediateSync

Ожидание немедленной синхронизации файла данных отношения с надёжным хранилищем.

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

4-й час

Статистические показатели производительности СУБД

Рис.13. Статистические показатели производительности: 4-й час
Рис.13. Статистические показатели производительности: 4-й час

Распределение вероятности

Рис.14. Распределение вероятности: 4-й час
Рис.14. Распределение вероятности: 4-й час
Рис.15. Распределение вероятности: 4-й час - график
Рис.15. Распределение вероятности: 4-й час - график

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

Для простоты показаны только события с коэффициентом корреляции > 0.5 и процентом наблюдений > 50%

Рис.16. Коэффициент корреляции между событиями ожидания и производительности СУБД
Рис.16. Коэффициент корреляции между событиями ожидания и производительности СУБД

Итоги по 1-й части тестирования

  1. Дисперсия производительности СУБД - меняется в довольно широком диапазоне.

  2. Период сглаживания = 10 минут , слишком мал, для устранения влияния выбросов.

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

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

Комментарии (1)


  1. geotech
    20.08.2024 09:13
    +1

    Если ваша СУБД написана для стохастической операционной системы, она по дизайну является стохастической, когда такая операционная система размещена в стохастическом окружении (облако) - это не добавляет детерминированности. Мне казалось, что всё, что не real-time является стохастическим, да и в rt детерминированность указывается диапазонами.