نشاط Azure Function في Azure Data Factory

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

تلميح

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

يسمح لك نشاط Azure Function بتشغيل Azure Functions في خط تدفق Azure Data Factory أو Synapse. لتشغيل إحدى وظائف Azure، يجب إنشاء اتصال خدمة الارتباط التشعبي. بعد ذلك، يمكنك استخدام خدمة الارتباط التشعبي مع نشاط يحدد وظيفة Azure التي تخطط لتنفيذها.ذها.

إنشاء نشاط وظيفة Azure باستخدام واجهة المستخدم

لاستخدام نشاط وظيفة Azure في خط أنابيب، أكمل الخطوات التالية:

  1. قم بتوسيع قسم وظيفة Azure في جزء أنشطة خط الأنابيب، واسحب نشاط وظيفة Azure إلى لوحة خطوط الأنابيب.

  2. حدد نشاط وظيفة Azure الجديدة على اللوحة القماشية إذا لم يكن محددًا بالفعل وعلامة تبويب الإعدادات الخاصة به لتحرير تفاصيله.

    Shows the UI for an Azure Function activity.

  3. إذا لم تكن لديك بالفعل خدمة الارتباط التشعبي بوظيفة Azure محددة، فحدد جديد لإنشاء خدمة جديدة. في جزء الخدمة الجديدة الخاص بالارتباط التشعبي بوظيفة Azure، اختر عنوان URL الحالي لتطبيق وظيفة Azure وقم بتوفير مفتاح الوظيفة.

    Shows the new Azure Function linked service creation pane.

  4. بعد تحديد خدمة الارتباط التشعبي بوظيفة Azure، وفر اسم الوظيفة والتفاصيل الأخرى لإكمال التكوين.

الخدمة المرتبطة لـ Azure Function

يجب أن يكون نوع إرجاع دالة Azure JObject صالحاً. (ضع في اعتبارك أن JArrayليسJObject.) أي نوع إرجاع بخلاف JObject يفشل ويطرح خطأ المستخدم محتوى الاستجابة ليس JObject صالحاً.

يوفر مفتاح الدالة وصولاً آمناً إلى اسم الدالة مع وجود مفاتيح فريدة منفصلة أو مفتاح رئيسي داخل تطبيق دالة. توفر الهوية المُدارة وصولاً آمناً إلى تطبيق الدالة بأكمله. يحتاج المستخدم إلى توفير مفتاح للوصول إلى اسم الدالة. لمزيد من المعلومات، راجع وثائق الوظيفة للحصول على مزيد من التفاصيل حول مفتاح الوصول إلى الوظيفة

الخاصية الوصف مطلوب
نوع يجب تعيين خاصية النوع إلى: AzureFunction ‏‏نعم‬
عنوان URL للتطبيق الخاص بالوظيفة عنوان URL لتطيبق وظائف Azure. التنسيق هو https://<accountname>.azurewebsites.net. عنوان URL هو القيمة الموجودة ضمن قسم URL عند عرض تطيبق الوظائف في مدخل Microsoft Azure ‏‏نعم‬
المفتاح الخاص بالوظيفة مفتاح الوصول لوظيفة Azure. انقر على القسم "Manage" للوظيفة المعنية، وانسخ إما "Function Key " أو "Host key". يمكنك العثور على المزيد من المعلومات من: مشغلات وروابط Azure Functions HTTP ‏‏نعم‬
المصادقة طريقة المصادقة المستخدمة لاستدعاء Azure Function. القيم المدعومة هي "الهوية المدارة التي يعينها النظام" أو "مجهول". ‏‏نعم‬
معرف المورد معرف التطبيق (العميل) ل Azure Function. قم بالتبديل إلى قسم المصادقة للدالة المعنية، والحصول على معرف التطبيق (العميل) ضمن موفر الهوية. سيتم عرض هذه الخاصية عند استخدام الهوية المدارة المعينة من قبل النظام. لمزيد من المعلومات، راجع تكوين App Service أو تطبيق Azure Functions لاستخدام تسجيل الدخول إلى Microsoft Entra. لا

إشعار

عند استخدام المصادقة المجهولة، تأكد من تقليل هويتك على جانب Azure Function.

نشاط Azure Function

الخاصية الوصف القيم المسموح بها مطلوب
الاسم اسم النشاط في المسار السلسلة‬ ‏‏نعم‬
نوع نوع النشاط هو "AzureFunctionActivity" السلسلة‬ ‏‏نعم‬
الخدمة المرتبطة خدمة Azure Function المرتبطة لتطبيق Azure Function المقابل مرجع الخدمة المرتبطة ‏‏نعم‬
اسم الوظيفة اسم الدالة في Azure Function App التي يستدعيها هذا النشاط السلسلة‬ ‏‏نعم‬
الطريقة أسلوب واجهة برمجة تطبيقات REST لاستدعاء الدالة أنواع السلاسل المدعومة: "GET"، و"POST"، و"PUT" ‏‏نعم‬
عنوان العناوين التي يتم إرسالها إلى الطلب. على سبيل المثال، لتعيين اللغة والكتابة على طلب: "العناوين": { "Accept-Language": "en-us", "Content-Type": "application/json" } سلسلة (أو تعبير يستخدم resultType من النوع "سلسلة") لا
النص الأساسي النص الذي يتم إرساله مع الطلب إلى طريقة api للوظيفة سلسلة (أو تعبير مع resultType من سلسلة) أو كائن. مطلوب للأساليب PUT/POST

راجع مخطط حمولة الطلب في قسم مخطط حمولة الطلب.

التوجيه والاستعلامات

يدعم نشاط Azure Function التوجيه. على سبيل المثال، إذا كان لوظيفة Azure نقطة النهاية https://functionAPP.azurewebsites.net/api/<functionName>/<value>?code=<secret>، فإن functionName المستخدمة في نشاط وظيفة Azure هي <functionName>/<value>. يمكنك تحديد معلمات هذه الدالة لتوفير functionName المطلوب في وقت التشغيل.

إشعار

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

يدعم نشاط Azure Function الاستعلامات أيضاً. تضمين الاستعلام كجزء من functionName. على سبيل المثال، عندما يكون اسم الدالة HttpTriggerCSharp والاستعلام الذي تريد تضمينه هو name=hello، يمكنك إنشاء functionName في نشاط Azure Function كـ HttpTriggerCSharp?name=hello. يمكن أن تكون هذه الدالة ذات معلمات بحيث يمكن تحديد القيمة في وقت التشغيل.

المهلة ودوال التشغيل طويل الأمد

تنتهي مهلة دوال Azure بعد 230 ثانية بغض النظر عن إعداد functionTimeout الذي قمت بتكوينه في الإعدادات. لمزيد من المعلومات، راجع هذا المقال للتغلب على هذا السلوك، اتبع نمط غير متزامن أو استخدم Durable Functions. تتمثل فائدة الوظائف الدائمة في أنها توفر آلية تتبع الحالة الخاصة بها، لذلك لا تحتاج إلى تنفيذ تتبع الحالة الخاص بك.

اعرف المزيد حول Durable Functions في هذه المقالة. يمكنك إعداد نشاط Azure Function لاستدعاء Durable Function، والتي ستقوم بإرجاع استجابة باستخدام URI مختلف، مثل هذا المثال. نظراً لأن statusQueryGetUri ترجع HTTP Status 202 أثناء تشغيل الدالة، يمكنك استقصاء حالة الدالة باستخدام Web Activity. ما عليك سوى إعداد نشاط الويب مع تعيين الحقل url على @activity('<AzureFunctionActivityName>').output.statusQueryGetUri. عند اكتمال Durable Function، سيكون إخراج الدالة إخراج Web Activity.

عينة

يمكنك العثور على عينة تستخدم Azure Function لاستخراج محتوى ملف tar هنا.

تعرف على المزيد حول الأنشطة المدعومة في خطوط التدفقات والأنشطة.