بحث باسم الموضوع المطلوب

أداة مجانية لعرض/التقاط خطط تنفيذ SQL بوضوح 👇

تدعم حاليًا PostgreSQL و MySQL و MSSQL و MongoDB.


المميزات الرئيسية للأداة


· دعم قواعد بيانات متعددة: تدعم حاليًا PostgreSQL، MySQL، SQL Server (MSSQL)، و MongoDB (للاستعلامات المشابهة لـ SQL).

· تحليل بصرى سهل: تقوم بتحويل خطة التنفيذ المعقدة (EXPLAIN او EXPLAIN ANALYZE) إلى مخطط انسيابي او شجرة مرئية، مما يسهل فهم خطوات الاستعلام.

· تحديد النقاط الحرجة: تُظهر بوضوح مراحل الاستعلام الأكثر تكلفة (Cost)، وأوقات التنفيذ الطويلة، وتُسلط الضوء على العمليات البطيئة مثل Seq Scan (المسح التسلسلي الكامل) بدلاً من استخدام الفهرس.

· مقارنة الخطط: تسمح لك بتجربة تعديلات على الاستعلام او إضافة فهارس، ثم مقارنة الخطة الجديدة مع القديمة لمعرفة تأثير التحسين.

· سهلة الاستخدام ولا تتطلب حساباً: يمكنك لصق استعلامك وخطط التنفيذ مباشرة في الموقع والبدء في التحليل.


🎯 لمن هذه الأداة مفيدة؟


· مطورو البرامج وقواعد البيانات الذين يريدون تحسين أداء استعلاماتهم.

· مديرو قواعد البيانات (DBAs) لإجراء تحليل سريع لأداء الاستعلامات.

· الطلاب والمهتمون بتعلم SQL لفهم كيف تعالج قواعد البيانات الاستعلامات داخليًا.


⚙️ كيف تستخدمها؟ (طريقتان رئيسيتان)


الطريقة 1: إدخال الاستعلام والنقر على "Explain" (الأسهل)


1. اختر نوع قاعدة البيانات (مثل MySQL).

2. الصق استعلام SQL الخاص بك (مثل SELECT * FROM users WHERE age > 30;) في المربع المخصص.

3. انقر على Explain، وستقوم الأداة بتنفيذ EXPLAIN افتراضيًا وتعرض لك الخطة المرئية.


الطريقة 2: إدخال خطة التنفيذ النصية (لتحليل خطط من بيئتك)


1. من بيئة عملك، قم بتشغيل أمر مثل EXPLAIN ANALYZE على استعلامك وانسخ النتيجة النصية.

2. في الأداة، اختر "I already have a query plan".

3. الصق النص الذي نسخته في المربع المخصص وانقر على Visualize.


📊 ما الذي تبحث عنه في الخطة المرئية؟


عند تحليل الخطة، ركز على:


· العقدة الأكثر سمكاً أو تكلفة (Highest Cost): هذه هي الخطوة الأبطأ في الاستعلام وهدفك الرئيسي للتحسين.

· نوع المسح (Scan Type):

  · Seq Scan (مسح تسلسلي) على جدول كبير → مؤشر خطر لأداء سيء.

  · Index Scan أو Index Only Scan → أفضل عادةً.

· عمليات JOIN: انتبه للـ Nested Loop على مجموعات بيانات كبيرة فقد تكون بطيئة.

· التقديرات مقابل القيم الفعلية: في EXPLAIN ANALYZE، إذا كان الرقم الفعلي (Actual Rows) مختلفًا جدًا عن التقدير (Estimate)، فقد تحتاج قاعدة البيانات لتحديث إحصائياتها.


🔗 رابط الأداة


يمكنك الوصول إليها مباشرة من هنا: https://explain.datadoghq.com/