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

Утилизация CPU и снижения скорости СУБД -определение причины с использованием pg_hazel и pgpro_pwr.

Определить причину аномальной утилизации CPU и снижения производительности СУБД Аномальная утилизация CPU сервера СУБД Подробнее об индикаторе Отрицательная корреляция между снижением операционной скорости и ростом ожиданий - отсутствует. Корреляционный анализ - не применим . Причина снижения скорости СУБД - внешняя. Для дальнейшего анализа используется pgpro_pwr. Этот раздел отчёта pgpro_pwr основан на представлении pgpro_stats_totals расширения pgpro_stats, если оно было доступно в течение отчётного интервала. Каждая таблица в данном разделе предоставляет данные за отчётный интервал о распределении нагрузки для определённого типа объектов, для которых собирается агрегированная статистика, например, баз данных, приложений, узлов или пользователей. Каждая таблица содержит по одной строке для каждого из ресурсов (таких, как общее время или общее число записанных разделяемых блоков), где распределение нагрузки показано на графике в виде линейчатой диаграммы с накоплением для объекто
Оглавление
У любого события есть причина .
У любого события есть причина .

Задача

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

Симптомы

Аномальная утилизация CPU сервера СУБД

Ось X - точка времени. Ось Y - метрика утилизации CPU.
Ось X - точка времени. Ось Y - метрика утилизации CPU.

Наблюдаемая проблема

Снижение операционной скорости СУБД

Ось X - точка времени. Ось Y - операционная скорость СУБД
Ось X - точка времени. Ось Y - операционная скорость СУБД

Корреляционный анализ

-4

Ось X - точка времени. Ось Y - значение индикатора деградации скорости СУБД
Ось X - точка времени. Ось Y - значение индикатора деградации скорости СУБД

Подробнее об индикаторе

Отрицательная корреляция между снижением операционной скорости и ростом ожиданий - отсутствует.

Корреляционный анализ - не применим . Причина снижения скорости СУБД - внешняя.

Для дальнейшего анализа используется pgpro_pwr.

Отчеты pgpro_pwr

G.3.11.2. Load distribution (Распределение нагрузки)

Этот раздел отчёта pgpro_pwr основан на представлении pgpro_stats_totals расширения pgpro_stats, если оно было доступно в течение отчётного интервала. Каждая таблица в данном разделе предоставляет данные за отчётный интервал о распределении нагрузки для определённого типа объектов, для которых собирается агрегированная статистика, например, баз данных, приложений, узлов или пользователей. Каждая таблица содержит по одной строке для каждого из ресурсов (таких, как общее время или общее число записанных разделяемых блоков), где распределение нагрузки показано на графике в виде линейчатой диаграммы с накоплением для объектов с наибольшей нагрузкой по этому ресурсу. Если область диаграммы, соответствующая объекту, слишком узка для включения заголовков, наведите указатель на эту область, чтобы получить подсказку с заголовком, значением и процентом. Таблицы «Load distribution among heavily loaded databases», «Load distribution among heavily loaded applications», «Load distribution among heavily loaded hosts» и «Load distribution among heavily loaded users» показывают распределение нагрузки для соответствующих объектов.
Postgres Pro Enterprise : Документация: 15: G.3. pgpro_pwr — отчёты о нагрузке

Наибольшую нагрузку создает DB-1
Наибольшую нагрузку создает DB-1

Статистика утилизации CPU

G.3.11.4.1. rusage statistics (Статистика использования ресурсов)

Этот раздел добавляется в отчёт, только если в отчётном интервале было доступно расширение pgpro_stats или pg_stat_kcache.
Таблица отчёта «Top SQL by system and user time» показывает запросы с наибольшей суммой значений полей user_time и system_time в представлении pg_stat_kcache или pgpro_stats_totals.
Postgres Pro Enterprise : Документация: 15: G.3. pgpro_pwr — отчёты о нагрузке
SQL запрос с наибольшим потреблением CPU
SQL запрос с наибольшим потреблением CPU

Наиболее длительные SQL

Таблица отчёта «Top SQL by execution time» показывает запросы с наибольшей длительностью выполнения, определяемой по значению поля total_time представления pgpro_stats_statements или pg_stat_statements.
Postgres Pro Enterprise : Документация: 15: G.3. pgpro_pwr — отчёты о нагрузке
SQL запрос с наибольшей длительностью выполнения
SQL запрос с наибольшей длительностью выполнения

Причина инцидента и проблемный запрос

Проблемный запрос
Проблемный запрос

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