قاعدة بيانات أوراكل / دليل حلول تحريري

تشخيص تقرير شحن بطيء أو متضخم

افحص تفصيل العلاقات وأنواع الشروط وأدلة الخطة قبل تعديل الفهارس أو الإحصاءات.

وقت القراءة التقريبي: 3 دقيقةتاريخ مراجعة المحتوى

قاعدة معرفة للقراءة فقط · بلا تعليقات عامة

تعرّف على الأعراض

يبطؤ التقرير بعد إضافة المسوح أو ترتفع المجاميع أو يكون عميل سريعاً وآخر بطيئاً. تعرض الخطة فهرساً مع استمرار انتظار المستخدم. احتفظ بشكل SQL وأنواع المعلمات والتفصيل المتوقع وموضع قياس الزمن.

افهم الأسباب المحتملة

  • قد تتضاعف مجموعات الأبناء المستقلة قبل التجميع. وقد يغير التحويل الضمني أو دالة العمود المسارات المتاحة. يضلل التفاوت والترابط التقديرات، وقد يهيمن جلب العميل أو النقل على الوقت خارج حساب القاعدة.

أثبت معنى الصف أولاً

اكتب «صف لكل شحنة» أو الوحدة المطلوبة بجوار كل مرحلة. قارن شحنة بثلاثة مسوح وسطرَي فاتورة؛ ينتج الربط الخام ستة تراكيب. إذا جُمِع رسم الشحنة فيها فلن يصلح الفهرس التضخم. جمّع الأبناء المستقلين إلى مفتاح الربط أو استخدم EXISTS لسؤال الوجود. احتفظ بشحنة بلا أبناء لكشف شروط الربط الخارجي التي تحذف الآباء.

افحص الأنواع والحدود

قارن أنواع الربط بالأعمدة وافحص التحويلات الضمنية في شروط الخطة المعتمدة. السلسلة المنسقة كتاريخ ليست ربط تاريخ. يختار المثال يوماً تشغيلياً لعمود DATE بنطاق نصف مفتوح دون تنسيق العمود. تحتاج بيانات المنطقة الزمنية حدود لحظات متفقاً عليها. لا تعِد الكتابة قبل فهم NULL والمنطقة.

sql مثال تقني توضيحي؛ النتائج المنطقية مستنتجة ولم تُختبر على المحرك.
SELECT shipment_id, charge FROM shipments
WHERE customer_id = :customer_id
 AND booked_at >= DATE '2026-10-01'
 AND booked_at < DATE '2026-10-02'
ORDER BY booked_at, shipment_id;

هيئة مرشحة انتقائية وليست دليلاً لخطة مختارة أو زمن مقاس.

حدّد مصدر الخطة محل النقاش

EXPLAIN PLAN تقدير في بيئة الشرح ولا ينفذ التقرير. قد يعكس دليل المؤشر أنواع الربط وبيئة المحسّن الفعلية لكن إحصاءات الصفوف لا توجد إلا إذا جُمعت بمسار مصرح به. سمِّ المصدر قبل المقارنة. المسح الكامل ليس خاطئاً تلقائياً لمجتمع واسع. يقرأ المثال مدخلاً موجوداً ولا يدّعي قياساً.

sql مثال تقني توضيحي؛ النتائج المنطقية مستنتجة ولم تُختبر على المحرك.
SELECT plan_table_output
FROM TABLE(DBMS_XPLAN.DISPLAY(NULL, NULL, 'BASIC +PREDICATE'));

فسّر التقديرات والشروط ضمن نطاق الخطة المشروحة الموجودة فقط.

اختبر فرضية مبررة واحدة

إذا اختار الاستعلام الصحيح عميلاً ونطاق وقت مراراً، راجع فهرساً مركباً يناسب الحمل. إذا أخطأت التقديرات فافحص التفاوت والترابط ومصدر الإحصاءات. قد يؤثر التغيير في الكتابة وخطط أخرى، فقيّم عملاء صغاراً وكباراً وتكلفة الكتابة في مختبر مستقل. تحقق من استحقاقات الحزم قبل AWR وASH والمستشارين؛ ظهور الأداة لا يثبت الإذن.

تحقق من نجاح الإصلاح

طابق أعداد الشحنات والمجاميع قبل التعديل وبعده. قِس المعلمات الممثلة عند حد القياس نفسه مع وقت الجلب حيث يلزم. سجّل مصدر الخطة وافتراضات الذاكرة وحدود التزامن غير المختبرة؛ لم ينفذ الدليل قياس قاعدة.

امنع تكرار المشكلة

  • احتفظ بتفصيل الصفوف وبيانات الأبناء الغائبة وعقود أنواع الربط ومعلمات ممثلة في المراجعات. اعتمد الفهارس بأدلة الحمل وتحقق من الصحة والتكلفة التشغيلية الكلية.

المراجع الرسمية