شرح أسباب بطء استعلامات SQL

coding · Claude Code · free

هذا الاستعلام بطيء. اشرح خطة التنفيذ وأخبرني بالضبط أين يضيع الوقت. الاستعلام: ناتج EXPLAIN (ANALYZE, BUFFERS) (Postgres) أو ما يعادله: المخطط + عدد الصفوف في الجداول التي تم الوصول إليها: [PASTE] محرك قاعدة البيانات + الإصدار: [Postgres X / MySQL X] فئة الخادم: [CPU / RAM / نوع القرص] اشرح لي الخطوات التالية: 1. اقرأ الخطة بدءًا من العقدة الأعمق — ما هي العقدة التي تمثل نقطة الازدحام الفعلية (أعلى «وقت فعلي» × عدد الحلقات) 2. أين يختلف تقدير عدد الصفوف عن الواقع بأكثر من 10 أضعاف — إحصائيات قديمة، ارتباط، إحصائيات موسعة مفقودة 3. أي عقدة مسح تقوم بعمل خاطئ (مسح تسلسلي على جدول كبير قابل للتصفية؟ مسح فهرس على فهرس منخفض الانتقائية؟) 4. عمليات الفرز والتجزئة التي تصل إلى القرص — مؤشر «طريقة الفرز: دمج خارجي» 5. ترتيب عمليات الانضمام — هل يقوم المخطط بضم الجداول الأكبر أولاً بسبب خطأ في تقدير الكاردينالية؟ 6. التغييرات التي يجب إجراؤها، مرتبة حسب التأثير المتوقع: التحليل / التنظيف إضافة / حذف فهرس إعادة كتابة الاستعلام (إلغاء تطبيع عامل التصفية، وتجنب OR، والتقسيم إلى UNION) عرض مادي أو جدول ملخص 7. إعادة…

#sql #performance #debugging