التقييم الكسول
مثال: التقييم الكسول مقابل التقييم الفوري
فوائد التقييم الكسول
- تحسين الاستعلام: تتحول عمليات متعددة إلى استعلام SQL واحد مُحسَّن
- تمرير عوامل التصفية إلى المصدر: تُطبَّق عوامل التصفية على مستوى مصدر البيانات
- تقليم الأعمدة: لا تُقرأ إلا الأعمدة المطلوبة
- القرارات المؤجلة: يمكن اختيار محرك التنفيذ في وقت التشغيل
- فحص الخطة: يمكنك عرض الاستعلام أو تصحيحه قبل تنفيذه
مشغّلات التنفيذ
المشغّلات التلقائية
أمثلة:
العمليات التي تظل مؤجّلة التنفيذ
أمثلة:
التنفيذ على ثلاث مراحل
المرحلة 1: بناء استعلام SQL (مؤجَّل)
المرحلة 2: نقطة التنفيذ
المرحلة 3: عمليات DataFrame (إن وُجدت)
عرض خطط التنفيذ
explain() لمعرفة ما سيجري تنفيذه:
Query
Response
verbose=True للحصول على مزيد من التفاصيل:
التخزين المؤقت
كيف يعمل التخزين المؤقت
إبطال صلاحية ذاكرة التخزين المؤقت
التحكم اليدوي في ذاكرة التخزين المؤقت
دمج عمليات SQL وPandas
العمليات المتوافقة مع SQL
filter(),where()select()groupby(),agg()sort(),orderby()limit(),offset()join(),union()distinct()- عمليات على الأعمدة (العمليات الحسابية، والمقارنة، ودوال السلاسل النصية)
عمليات خاصة بـ Pandas فقط
apply()مع دوال مخصّصةpivot_table()مع عمليات تجميع معقّدةstack(),unstack()- عمليات على كائنات DataFrame بعد تنفيذها
مسارات العمل الهجينة
اختيار محرّك التنفيذ
الوضع التلقائي (الافتراضي)
فرض استخدام محرك chDB
فرض استخدام محرك pandas
اعتبارات الأداء
جيد: طبّق التصفية مبكرًا
سيئ: طبّق التصفية متأخرًا
جيد: اختر الأعمدة مبكرًا
جيد: دع SQL يتولى العمل
ملخص أفضل الممارسات
- سلسِل العمليات قبل التنفيذ - ابنِ الاستعلام بالكامل، ثم شغِّله مرة واحدة
- طبّق التصفية مبكرًا - قلّل البيانات عند المصدر
- حدّد الأعمدة التي تحتاجها فقط - يحسّن تقليم الأعمدة الأداء
- استخدم
explain()لفهم آلية التنفيذ - صحّح الأخطاء قبل التشغيل - دع SQL يتولى التجميعات - ClickHouse مُحسَّن لهذا الغرض
- انتبه إلى مشغّلات التنفيذ - تجنّب التشغيل المبكر غير المقصود
- استخدم ذاكرة التخزين المؤقت بحكمة - افهم متى تُبطَل صلاحية ذاكرة التخزين المؤقت