Как выявить медленные SQL запросы

Python Middle Без компании
Как выявить медленные SQL запросы
Ответы
Для выявления медленных SQL-запросов можно использовать несколько подходов: - **Логирование медленных запросов** В PostgreSQL можно включить логирование запросов, выполняющихся дольше заданного времени: ``` -- В postgresql.conf log_min_duration_statement = 1000 -- логировать запросы >1 сек ``` - **EXPLAIN ANALYZE** Анализ плана выполнения запроса: ``` EXPLAIN ANALYZE SELECT * FROM large_table WHERE condition; ``` - **Профайлеры БД** - `pg_stat_statements` в PostgreSQL - `slow_query_log` в MySQL - `SQL Server Profiler` для MS SQL - **ORM-специфичные инструменты** Например, в Django: ``` from django.db import connection print(connection.queries) # все выполненные запросы ``` - **Мониторинг** Инструменты вроде Datadog, New Relic или Prometheus + Grafana. Ключевые метрики для анализа: время выполнения, количество обращений к диску, использование индексов, размер возвращаемых данных.