إيجاد الاستعلامات البطيئة باستخدام pg_stat_statements
في هذا الدرس 4 موضوعات
هذا الدرس مخطط له. يعرض المخطط أدناه الموضوعات التي سيغطيها، ولم يُنشر الدرس الكامل بعد.
نص الدروس والتمارين باللغة الإنجليزية، بينما تبقى واجهة الموقع وعناوين الدروس بالعربية.
في هذا الدرس
find the queries that cost the most overall.
الموضوعات المخطط لها
- Enable the extension via
shared_preload_librariesandCREATE EXTENSION pg_stat_statements(restart required). - It aggregates by normalized query text: calls, total time, mean time, rows.
- Sort by total time, not only mean: a fast query called a million times can dominate.
- Reset with
pg_stat_statements_reset()before a test to measure cleanly. - Column names changed in PostgreSQL 13 (
total_exec_time); verify version before recording.
تفاصيل المخطط المبدئي
عرض عملي
SELECT calls, round(total_exec_time) AS total_ms, round(mean_exec_time::numeric, 2) AS mean_ms, query
FROM pg_stat_statements ORDER BY total_exec_time DESC LIMIT 10;اختبر فهمك
Why sort by total time?
أظهر الإجابة
Frequent cheap queries can cost more in total than rare slow ones.
التطبيق
طبّق هذا الدرس بمختبر الوحدة وتمارينها واختبارها.
تعليم الدرس كمكتمل اختياري ويمكنك التراجع عنه في أي وقت. يبقى تقدمك محفوظًا في هذا المتصفح.