مشاركة عبر


الأنشطة المتداخلة في Azure Data Factory وAzure Synapse Analytics

ينطبق على: Azure Data Factory Azure Synapse Analytics

تلميح

جرب Data Factory في Microsoft Fabric، وهو حل تحليلي متكامل للمؤسسات. يغطي Microsoft Fabric كل شيء بدءا من حركة البيانات إلى علم البيانات والتحليلات في الوقت الحقيقي والمعلومات المهنية وإعداد التقارير. تعرف على كيفية بدء إصدار تجريبي جديد مجانا!

تساعدك هذه المقالة على فهم الأنشطة المتداخلة في Azure Data Factory وAzure Synapse Analytics وكيفية استخدامها والقيود وأفضل الممارسات.

نظرة عامة

يمكن أن يحتوي مسار Data Factory أو Synapse Workspace على أنشطة تدفق التحكم التي تسمح باحتواء أنشطة أخرى داخلها. فكر في هذه الأنشطة المتداخلة كحاويات تحتوي على نشاط واحد أو أكثر من الأنشطة الأخرى التي يمكن تنفيذها اعتمادا على نشاط تدفق التحكم بالمستوى الأعلى.

راجع المثال التالي مع نشاط «If» الذي يحتوي على نشاط واحد.

لقطة شاشة تعرض مثالاً إذا كان نشاط الشرط يحتوي على نشاط داخلي.

أنشطة التحكم في التدفق

تدعم أنشطة تدفق عنصر التحكم التالية الأنشطة المتداخلة:

نشاط التحكم ‏‏الوصف
لكل يحدد نشاط ForEach تدفق عنصر تحكم مكرر في المسار الخاص بك. يتم استخدام هذا النشاط للتكرار عبر مجموعة، وهو ينفّذ الأنشطة المحددة في تكرار حلقي. تنفيذ حلقة هذا النشاط مشابه لبنية تكرار Foreach في لغات البرمجة.
نشاط If Condition يمكن استخدام If Condition لإنشاء إصدارات فرعية بناءً على شرط يتم تقييمه إلى صواب أو خطأ. يوفر نشاط If Condition الوظيفة نفسها التي توفرها العبارة الشرطية في لغات الكمبيوتر. حيث يقيّم مجموعة من الأنشطة عند تقييم الشرط إلى true ومجموعة أخرى من الأنشطة عند تقييم الشرط إلى false..
حتى النشاط تنفيذ التكرار الحلقي Do-Until المماثل لبنية التكرارات الحلقية Do-Until في لغات الكمبيوتر. إنه ينفذ مجموعة من الأنشطة في تكرار حلقي حتى يتم تقييم الشرط المقترن بالنشاط إلى صواب. يمكنك تحديد قيمة مهلة للنشاط Until.
نشاط التبديل يوفر نشاط Switch نفس الوظائف التي توفرها العبارة في لغات البرمجة. وهو يقيم مجموعة من الأنشطة المقابلة لحالة تطابق تقييم الحالة.

هناك طريقتان أساسيتان للانتقال إلى الأنشطة المضمنة في نشاط متداخل.

  1. يحتوي كل نشاط تدفق عنصر تحكم يدعم الأنشطة المتداخلة على علامة تبويب نشاط. سيعطيك تحديد علامة تبويب النشاط بعد ذلك أيقونة قلم رصاص يمكنك تحديدها للتنقل لأسفل في لوحة الأنشطة الداخلية. لقطة شاشة تعرض مثالاً لنشاط If Condition مع تمييز على أيقونة القلم الرصاص للتنقل.

  2. من النشاط على لوحة البنية الأساسية لبرنامج ربط العمليات التجارية، يمكنك تحديد أيقونة القلم الرصاص للتنقل لأسفل في لوحة الأنشطة الداخلية. بالإضافة إلى ذلك، يدعم نشاطًا ForEach و Until النقر المزدوج فوق النشاط للتنقل لأسفل إلى لوحة الأنشطة الداخلية. لقطة شاشة تعرض مثالاً لنشاط If Condition على لوحة مسار يبرز رمز القلم الرصاص.

ستنتقل لوحة البنية الأساسية لبرنامج ربط العمليات التجارية بعد ذلك إلى سياق حاوية النشاط الداخلي التي حددتها. سيكون هناك أيضًا مسار تنقل في الأعلى يمكنك تحديده للانتقال مرة أخرى إلى البنية الأساسية لبرنامج ربط العمليات التجارية الأصل. لقطة شاشة تعرض مثالاً إذا كان نشاط If Condition داخل الفرع الحقيقي مع تمييز في مسار التنقل للعودة إلى خط الأنابيب الأصلي.

قيود تضمين النشاط المتداخل

هناك قيود على الأنشطة التي تدعم التداخل (ForEach و Until و Switch و If Condition)، لتداخل نشاط متداخل آخر. على وجه التحديد:

  • إذا كان يمكن استخدام والتبديل داخل أنشطة ForEach أو Until.
  • إذا تعذر استخدام والتبديل داخل أنشطة If و Switch.
  • يدعم ForEach أو Until مستوى واحد فقط من التداخل.

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

إذا كان يمكن استخدام والتبديل داخل أنشطة ForEach أو Until. يدعم ForEach أو Until تداخل مستوى واحد فقط إذا تعذر استخدام والتبديل داخل أنشطة If و Switch.

أفضل الممارسات لمستويات متعددة من الأنشطة المتداخلة

للحصول على منطق يدعم التداخل العميق لأكثر من مستوى واحد، يمكنك استخدام نشاط تنفيذ البنية الأساسية لبرنامج ربط العمليات التجارية داخل نشاطك المتداخل لاستدعاء مسار آخر يمكن أن يكون له مستوى آخر من الأنشطة المتداخلة. حالة الاستخدام الشائعة لهذا النمط هي مع حلقة ForEach حيث تحتاج إلى حلقة إضافية تستند إلى المنطق في الأنشطة الداخلية.

مثال على هذا النمط سيكون إذا كان لديك نظام ملفات يحتوي على قائمة بالمجلدات وكل مجلد هناك ملفات متعددة تريد معالجتها. يمكنك إنجاز هذا النمط، بشكل عام، عن طريق تنفيذ ما يلي.

  1. استخدام نشاط الحصول على بيانات التعريف أولاً للحصول على قائمة بالمجلدات فقط.
  2. مرر نتيجة نشاط الحصول على بيانات التعريف إلى قائمة العناصر لنشاط ForEach. ثم يمثل كل تكرار مجلدًا واحدًا لمعالجته.
  3. في لوحة الأنشطة الداخلية لنشاط ForEach، استخدم نشاط Get Metadata آخر للحصول على قائمة بالملفات داخل المجلد.
  4. استدعاء نشاط Execute Pipeline الذي يحتوي على معلمة صفيف وتمريره صفيف من أسماء الملفات هذه.
  5. في البنية الأساسية لبرنامج ربط العمليات التجارية التابعة، يمكنك بعد ذلك استخدام نشاط متداخل آخر (مثل ForEach) مع قائمة الصفيف التي تم تمريرها للتكرار عبر الملفات وتنفيذ مجموعة واحدة أو أكثر من الأنشطة الداخلية.

ستبدو البنية الأساسية لبرنامج ربط العمليات التجارية الأصلية مشابهة للمثال أدناه.

لقطة شاشة تعرض مثالاً لمسار رئيسي يستدعي مسارًا فرعيًا في حلقة ForEach.

سيبدو المسار الفرعي مشابهًا للمثال أدناه.

لقطة شاشة تعرض مثالاً لمسار تابع مع حلقة ForEach.

راجع البرامج التعليمية التالية للحصول على إرشادات خطوة بخطوة لإنشاء مسارات ومجموعة البيانات.