هندسة البيانات / المتوسط: التغيير والزمن والتنسيق / الدرس 11
الجدولة والاعتماديات وإعادة المحاولة
نمذج الترتيب والإعادة دون اعتبار المجدول قاعدة ذرية، واربط المحاولة بفترة وأثر مقبولين.
في هذه الصفحة
أهداف الدرس
- شرح اعتماد DAG والفرق بين حالة المهمة والبيانات.
- اختيار إعادة وإعادة تشغيل محدودتين بنوع الخطأ.
ينسق المجدول العمل لا كل ثابت بيانات
يمكن للمنسق جدولة المهام وفرض الاعتماد وتسجيل المحاولات، لكنه لا يجعل آثارها الخارجية ذرية أو آمنة للتكرار تلقائياً. ينبغي أن تكشف المهمة السابقة أثراً مقبولاً ذا هوية، لا مساراً محلياً مؤقتاً لا يراه عامل آخر. افصل فترة البيانات المنطقية وهوية التشغيل ومحاولة المهمة وإصدار الخرج. Airflow تنفيذ محدد ذو API ودلالات جدولة بإصدار؛ يستخدم الدرس نماذج محلية بدلاً من تشغيله أو افتراض أن كل منسق يدير الإعادة والفترات بالطريقة نفسها.
افحص جاهزية رسم اعتماد صغير
يسمح النموذج المحلي بالنشر عند بلوغ الاستخراج والتحويل والتحقق حالات القبول المعلنة. الحالة معطى اصطناعي وليست فحص مجموعة متحققاً. يحتاج الحقيقي ربط الأثر وحالة الجودة، حتى لا يلبي نجاح مهمة لفترة أخرى اعتماد هذه المحاولة. اكشف الدورات وأسماء الاعتماد الغائبة في المجدول. قد يكون الرسم بلا دورة لكنه خاطئ دلالياً، إذا تجاوز النشر التحقق أو انتظر مهمة لا تنتج البيانات اللازمة.
required = {'extract', 'transform', 'validate'}
state = {'extract': 'accepted', 'transform': 'accepted', 'validate': 'failed'}
assert not all(state.get(task) == 'accepted' for task in required)
state['validate'] = 'accepted'
assert all(state.get(task) == 'accepted' for task in required)
يحجب الفشل النشر ولا يثبت تغيير الوسم نتيجة فعلية.
أعد المؤقت دون إخفاء العيب الحتمي
يحتاج تابع غير متاح مؤقتاً ومخطط مشوه معالجة مختلفة. قد تستهلك إعادة المدخل الحتمي الخاطئ السعة دون تغيير النتيجة. حد المحاولات والزمن والتزامن، واحفظ الخطأ الأصلي وأظهر الفشل النهائي. قد يعني الرد الضائع نجاح الأثر بالفعل، فتلزم هوية المهمة ومصالحتها. التأخير المتزايد والعشوائية أداتا إدارة حمل لا إثبات سلامة التكرار. لا تضع إخطاراً أو دفعة غير آمنة للإعادة عرضاً داخل تحويل يعاد.
صرح بقرار إعادة محدود
تعيد السياسة التعليمية الحالة المؤقتة المعلنة فقط مع بقاء محاولات، وترفض خطأ المخطط فوراً. الثلاثة ميزانية تعليمية لا عدد إنتاج موصى به. تحتاج السياسة الفعلية مهلة الخدمة وتصنيف الأثر واحتفاظ المصدر وتصعيد المالك. لا تنام الدالة ولا تتصل بتابع أو تنفذ منسقاً. تجعل القرار قابلاً للتدقيق، وتظهر فرق المؤقت المنهك وعيب المدخل الحتمي، اللذين يجب أن يبقيا مرئيين في دليل التشغيل.
def retry_decision(error_kind, attempt, max_attempts=3):
if error_kind != 'transient':
return 'fail'
return 'retry' if attempt < max_attempts else 'fail'
assert retry_decision('transient', 1) == 'retry'
assert retry_decision('transient', 3) == 'fail'
assert retry_decision('schema', 1) == 'fail'
تقيم الوسوم والعداد فقط دون إعادة أو انتظار أو منصة.
صالح إعادة المهمة مع حالة البيانات
قد تعيد مهمة مسحت حالتها أو أعيد تشغيلها العمل على بيانات منشورة، فيلزم تعديل الحالة قواعد الفترة والهوية نفسها كالإعادة العادية. يختلف تمرير مراجع أثر صغيرة عن نقل المجموعة كلها عبر بيانات المجدول الوصفية. أبعد الأسرار عن الكود والسجل. حدد إخفاء الخرج الجزئي أو إعادة استخدامه أو تنظيفه، وكيف يكشف اللاحق البديل المقبول. ضغط المشغل «إعادة» إجراء تحكم، لا دليل أن المصدر والوجهة والنقطة أصبحت متسقة.
الأخطاء الشائعة وإصلاحها
تكرر الإعادة الأثر
- لماذا يحدث؟
- أهملت السياسة سلامة الوجهة.
- كيف تصلحه؟
- اربطها بالهوية والنشر.
- كيف تتجنب تكراره؟
- اختبر الرد الضائع والإعادة.
لا تجد المهمة ملف السابق المحلي
- لماذا يحدث؟
- اعتبر المحلي مشتركاً دائماً.
- كيف تصلحه؟
- استخدم عقد أثر مشترك معتمد.
- كيف تتجنب تكراره؟
- اختبر عمالاً مختلفين والإعادة.
يفتح نجاح فترة أخرى النشر
- لماذا يحدث؟
- لم تربط الحالة بالهوية.
- كيف تصلحه؟
- تحقق من الأثر والفترة.
- كيف تتجنب تكراره؟
- ضمّن فحص الهوية بين التشغيلات.
اختبر فهمك
1. هل يلزم خطأ المخطط إعادة أسية بلا حد؟
اعرض الحل المشروح
لا. يبقى المدخل الحتمي غير المتوافق كذلك عادة، وتهدر إعادته السعة. احفظ دليل الرفض وأظهر الفشل ووجهه لمالك المنتج أو العقد المناسب. لا تعد إلا حالة قابلة للتعافي مصنفة، بميزانية محاولات وزمن صريحة وبروتوكول أثر آمن للتكرار.
2. لماذا علم النجاح أضعف من إصدار منشور؟
اعرض الحل المشروح
يسجل العلم حالة تنفيذ المهمة، بينما يحتاج المستهلك مجتمعاً مقبولاً ومخططاً وحد أثر محددين. قد تنجح المهمة بمدخل قديم أو خرج جزئي. اربط دليل العلم بتلك الخصائص وافصل النشر عن مجرد انتهاء العملية.
أهم ما تعلمته
- لا يعوض التنسيق الذرية أو الهوية.
- اربط المحاولة والاعتماد بهوية مقبولة.