Недостаточное быстродействие процессора
Высокая нагрузка на процессор может привести к медленному выполнению запросов и увеличению задержек. В условиях ограниченного ресурса процессора база данных может с трудом справляться со сложными запросами или высоконагруженными транзакционными сценариями использования.
Узлы YDB в основном используют ресурсы процессора на выполнение акторов. На каждом узле акторы выполняются с использованием ресурсов одного из пулов акторной системы. Потребление ресурсов каждого пула измеряется отдельно, что позволяет точнее отслеживать изменения в потреблении ресурсов.
Диагностика
-
Используйте вкладку Diagnostics во встроенном UI для анализа загрузки процессора во всех пулах ресурсов:
-
Откройте встроенный UI, перейдите на вкладку Databases и нажмите на требуемую базу данных.
-
На вкладке Navigation убедитесь, что требуемая база данных выбрана.
-
Откройте вкладку Diagnostics.
-
На вкладке Info нажмите на кнопку CPU и проверьте уровни загрузки процессора во всех пулах ресурсов.
-
-
Проанализируйте загрузку процессора во всех пулах ресурсов на графиках Grafana:
-
Откройте панель мониторинга CPU в Grafana.
-
Проверьте наличие скачков на следующих графиках:
-
CPU by execution pool
-
User pool - CPU by host
-
System pool - CPU by host
-
Batch pool - CPU by host
-
IC pool - CPU by host
-
IO pool - CPU by host
-
-
-
Если скачки потребления ресурсов процессора обнаружены в пользовательском пуле ресурсов (user pool), проанализируйте изменения пользовательской нагрузки, которые могли бы вызвать недостаток ресурсов процессора. Проверьте следующие графики на панели мониторинга DB overview в Grafana:
-
Requests
-
Request size
-
Response size
Также проверьте все графики в секции Operations на панели мониторинга DataShard.
-
-
Если скачки потребления ресурсов процессора обнаружены в пакетном пуле ресурсов (batch pool), проверьте, не запущены ли процессы резервного копирования (backups).
Рекомендации
Добавьте дополнительные узлы базы данных в кластер или выделите больше процессорных ядер существующим узлам. Если это невозможно, рассмотрите возможность перераспределения ядер процессора между пулами ресурсов.