الانتقال إلى المحتوى الرئيسي
تساعدك أداة Profiler في DataStore على قياس زمن التنفيذ وتحديد مواضع اختناق الأداء.

البدء السريع

تمكين التنميط


واجهة برمجة التطبيقات لـ Profiler

استرجاع Profiler

report()

يعرض تقريرًا عن الأداء.
المعلمات: ناتج المثال:
يعرض التقرير ما يلي:
  • المدة بالمللي ثانية لكل خطوة
  • النسبة المئوية من وقت الخطوة الأب/إجمالي الوقت
  • التداخل الهرمي للعمليات
  • البيانات الوصفية لكل خطوة (مثلًا، ops_count وops)

step()

قِس مدة تنفيذ كتلة تعليمات برمجية يدويًا.

clear()

امسح جميع بيانات تحليل الأداء.

summary()

يعيد قاموسًا يربط أسماء الخطوات بالمدد (مللي ثانية).
ناتج المثال:

فهم التقرير

أسماء الخطوات

المدة

  • خطوات التخطيط (تخطيط الاستعلام): تكون عادةً سريعة
  • خطوات التنفيذ (تنفيذ SQL): حيث يتم العمل الفعلي
  • خطوات النقل (من النتيجة إلى DataFrame): تحويل البيانات إلى pandas

تحديد مواطن الاختناق


أنماط التنميط

حلّل استعلامًا واحدًا

حلّل عدة استعلامات

مقارنة بين الأساليب


نصائح لتحسين الأداء

1. تحقّق من وقت تنفيذ SQL

إذا كان SQL execution هو موضع الاختناق:
  • أضف المزيد من عوامل التصفية لتقليل حجم البيانات
  • استخدم Parquet بدلًا من CSV
  • تحقّق من وجود فهارس مناسبة (لمصادر البيانات المعتمدة على قواعد البيانات)

2. تحقّق من زمن I/O

إذا كان read_csv أو read_parquet هو موضع الاختناق:
  • استخدم Parquet (تنسيق عمودي ومضغوط)
  • اقرأ الأعمدة المطلوبة فقط
  • طبّق التصفية عند المصدر إن أمكن

3. تحقّق من نقل البيانات

إذا كان to_df بطيئًا:
  • قد تكون مجموعة النتائج كبيرة جدًا
  • أضف المزيد من عوامل التصفية أو ضع حدًا
  • استخدم head() للمعاينة

4. مقارنة المحركات


أفضل الممارسات

1. حلّل الأداء قبل التحسين

2. نظِّف بين الاختبارات

3. استخدم min_duration_ms للتركيز

4. حلّل البيانات النموذجية

5. التعطيل في بيئة الإنتاج


مثال: جلسة التنميط الكاملة

آخر تعديل في ٢ يوليو ٢٠٢٦