نسخ البيانات وإرسال إعلامات البريد الإلكتروني حول النجاح والفشل
ينطبق على:Azure Data Factory Azure Synapse Analytics
تلميح
جرب Data Factory في Microsoft Fabric، وهو حل تحليلي متكامل للمؤسسات. يغطي Microsoft Fabric كل شيء بدءا من حركة البيانات إلى علم البيانات والتحليلات في الوقت الحقيقي والمعلومات المهنية وإعداد التقارير. تعرف على كيفية بدء إصدار تجريبي جديد مجانا!
في هذا البرنامج التعليمي، يمكنك إنشاء البنية الأساسيةData Factory التي تعرض بعض ميزات تدفق التحكم. تعمل هذه البنية الأساسية على إنشاء نسخة بسيطة من الحاوية في Azure Blob Storage إلى حاوية أخرى في حساب التخزين ذاته. في حال نجاح نشاط النسخ، ترسل البنية الأساسية تفاصيل عملية النسخ الناجحة (مثل كمية البيانات المكتوبة) في رسالة بريد إلكتروني بالنجاح. في حال إخفاق نشاط النسخ، ترسل البنية الأساسية تفاصيل إخفاق النسخ (مثل رسالة وجود خطأ) في رسالة بريد إلكتروني بالإخفاق. في البرنامج التعليمي بأكمله، ترى كيفية تمرير المعلمات.
نظرة عامة عالية المستوى على السيناريو:
نفذ الخطوات التالية في هذا البرنامج التعليمي:
- إنشاء data factory.
- إنشاء خدمة ذات صلة بـ Azure Storage.
- إنشاء مجموعة بيانات Azure Blob
- إنشاء بنية أساسية تحتوي على نشاط نسخ ونشاط ويب
- إرسال مخرجات الأنشطة إلى أنشطة لاحقة.
- الاستفادة من تمرير المعلمة ومتغيرات النظام
- بدء تشغيل البنية الأساسية
- مراقبة البنية الأساسية وتشغيل النشاط
يستخدم هذا البرنامج التعليمي مدخل Microsoft Azure. يمكنك استخدام آليات أخرى للتفاعل مع Azure Data Factory، راجع "Quickstarts" في جدول المحتويات.
المتطلبات الأساسية
- اشتراك Azure. في حال لم يكن لديك اشتراك Azure، فأنشئ حساباً مجانيّاً قبل البدء.
- حساب في مساحة تخزين Azure. استخدام مخزن البيانات الثنائية كبيرة الحجم لتخزين بيانات مصدر. إذا لم يكن لديك حساب تخزين Azure، يمكنك مراجعة مجموعة الخطوات اللازمة لإنشاء حساب تخزين.
- Azure SQL Database. يمكنك استخدام قاعدة البيانات كمخزن وجهة تلقي للبيانات. في حالة عدم امتلاك قاعدة بيانات فيAzure SQL Database، يرجى الرجوع إلى إنشاء قاعدة بيانات في فقرة Azure SQL Database في مدخل Azure الخاصة بخطوات الإنشاء.
إنشاء جدول لكائن ثنائي كبير الحجم
قم بإطلاق Notepad. نسخ النص التالي وحفظه كملف input.txt على قرص التخزين.
John,Doe Jane,Doe
استخدام أدوات مثل Azure Storage Explorer القيام بالخطوات التالية:
- إنشاء حاوية adfv2branch.
- إنشاء مجلد الإدخال في حاوية adfv2branch.
- تحميل ملف input.txt إلى الحاوية.
إنشاء نقاط نهاية سير عمل البريد الإلكتروني
لتشغيل إرسال بريد إلكتروني من البنية الأساسية لبرنامج ربط العمليات التجارية، يمكنك استخدام Azure Logic Apps لتعريف سير العمل. لمزيد من المعلومات حول إنشاء سير عمل تطبيق منطقي، راجع إنشاء مثال سير عمل تطبيق منطق الاستهلاك.
سير عمل البريد الإلكتروني الناجح
إنشاء سير عمل تطبيق منطق الاستهلاك المسمى CopySuccessEmail
. أضف مشغل الطلب المسمى عند تلقي طلب HTTP، وأضف إجراء Office 365 Outlook المسمى إرسال بريد إلكتروني. إذا تمت مطالبتك، فسجل الدخول إلى حساب Office 365 Outlook.
بالنسبة إلى مشغل الطلب، املأ مربع Request Body JSON Schema مع JSON التالي:
{
"properties": {
"dataFactoryName": {
"type": "string"
},
"message": {
"type": "string"
},
"pipelineName": {
"type": "string"
},
"receiver": {
"type": "string"
}
},
"type": "object"
}
يجب أن يبدو مشغل الطلب في مصمم سير العمل مثل الصورة التالية:
بالنسبة إلى إجراء إرسال بريد إلكتروني، قم بتخصيص الطريقة التي ترغب بها في تنسيق البريد الإلكتروني، باستخدام الخصائص التي تم تمريرها في مخطط Body JSON للطلب. إليك مثال:
حفظ سير العمل. دوّن ملاحظة عن عنوان URL لطلب HTTP Post لسير عمل البريد الإلكتروني الناجح:
//Success Request Url
https://prodxxx.eastus.logic.azure.com:443/workflows/000000/triggers/manual/paths/invoke?api-version=2016-10-01&sp=%2Ftriggers%2Fmanual%2Frun&sv=1.0&sig=000000
فشل سير عمل البريد الإلكتروني
اتبع نفس الخطوات لإنشاء سير عمل تطبيق منطقي آخر يسمى CopyFailEmail
. في مشغل الطلب، تكون قيمة مخطط نص الطلب JSON هي نفسها. تغيير تنسيق البريد الإلكتروني الخاص بك، مثل Subject
لكي يتناسب مع إخفاق البريد الإلكتروني. إليك مثال:
حفظ سير العمل. دوّن ملاحظة عن عنوان URL لطلب HTTP Post لسير عمل البريد الإلكتروني للإخفاق:
//Fail Request Url
https://prodxxx.eastus.logic.azure.com:443/workflows/000000/triggers/manual/paths/invoke?api-version=2016-10-01&sp=%2Ftriggers%2Fmanual%2Frun&sv=1.0&sig=000000
ينبغي أن يكون لديك الآن رابطا URL لسير العمل:
//Success Request Url
https://prodxxx.eastus.logic.azure.com:443/workflows/000000/triggers/manual/paths/invoke?api-version=2016-10-01&sp=%2Ftriggers%2Fmanual%2Frun&sv=1.0&sig=000000
//Fail Request Url
https://prodxxx.eastus.logic.azure.com:443/workflows/000000/triggers/manual/paths/invoke?api-version=2016-10-01&sp=%2Ftriggers%2Fmanual%2Frun&sv=1.0&sig=000000
إنشاء مصدرًا للبيانات
شغِّل إما مستعرض الويب Microsoft Edge أو Google Chrome. يتم حاليًّا دعم واجهة مستخدم Data Factory فقط في مستعرضي الويب Microsoft Edge وGoogle Chrome.
قم بتوسيع القائمة في أعلى اليسار وحدد Create a resource. ثم حدد >Integration>Data Factory:
في صفحة New data factory، أدخل ADFTutorialDataFactory في خانة Name.
يجب أن يكون اسم Azure data factory مميزاً عالمياً. إذا تلقيت الخطأ التالي، فقم بتغيير اسم مصنع البيانات (على سبيل المثال، yournameADFTutorialDataFactory) وحاول إنشاءه مرة أخرى. راجع المقالةData Factory - Naming Rules لمعرفة قواعد تسمية أدوات مصنع البيانات.
اسم مصنع البيانات “ADFTutorialDataFactory” غير متاح.
حدد اشتراك Azure الذي تريد إنشاء مصنع البيانات فيه.
بالنسبة Resource Group، نفِّذ إحدى الخطوات التالية:
حدد Use existing واختر مجموعة موارد موجودة من القائمة المنسدلة.
حدد Create new وأدخل اسم مجموعة الموارد.
للتعرف على مجموعات الموارد، يُرجى الرجوع إلى استخدام مجموعات الموارد لإدارة موارد Azure.
حدد "V2" لحقل"version".
حدد موقع، مصِّنع البيانات. لن تظهر القائمة المنسدلة إلا على المواقع المعتمدة فقط. تخزن البيانات (Azure Storage، وAzure SQL Database، وما إلى ذلك) وتحسب (HDInsight، وما إلى ذلك) التي يستخدمها مصنع البيانات في مناطق أخرى.
حدد تثبيت لوحة المعلومات.
انقر فوق Create.
بعد الانتهاء من الإنشاء، ستظهر صفحة مصنع البيانات كما هو موضح في الصورة.
انقر فوق Open Azure Data Factory Studio لتشغيل واجهة مستخدم Azure Data Factory (UI) في علامة تبويب منفصلة.
إنشاء البنية الأساسية لبرنامج ربط العمليات التجارية
في هذه الخطوة، يمكنك إنشاء البنية الأساسية لنشاط نسخة واحدة في نشاطين على Web. يمكنك استخدام الميزات التالية لإنشاء البنية الأساسية:
- معلمات البنية الأساسية التي يتم الوصول إليها من خلال مجموعات البيانات.
- نشاط Web لاستدعاء سير عمل تطبيقات المنطق لإرسال رسائل البريد الإلكتروني بشأن النجاح/الإخفاق.
- ربط نشاط بنشاط آخر (بناءً على النجاح والإخفاق)
- استخدام الإخراج من أحد الأنشطة كمدخل للنشاط اللاحق
في الصفحة الرئيسية من واجهة مستخدم Data Factory، انقر فوق إطار Orchestrate.
في نافذة خصائص البنية الأساسية، قم بالتبديل إلى علامة التبويب Parameters واستخدم الزر New لإضافة المعلمات الثلاث التالية من نوع السلسلة: sourceBlobContainer، sinkBlobContainer، والمُتلقي.
- sourceBlobContainer- المعلمة في البنية الأساسية التي تستهلكها مجموعة بيانات الكائن الثنائي كبير الحجم الخاص بالمصدر.
- sinkBlobContainer - معلمة في البنية الأساسية لبرنامج ربط العمليات التجارية التي تستهلكها مجموعة بيانات الكائن الثنائي كبير الحجم للمتلقي
- المتلقي - يتم استخدام هذه المعلمة من قبل نشاطي ويب في البنية الأساسية لبرنامج ربط العمليات التجارية التي ترسل رسائل البريد الإلكتروني الناجحة أو الفشل إلى المتلقي الذي يتم تحديد عنوان بريده الإلكتروني بواسطة هذه المعلمة.
في مربع أدوات Activities ، ابحث عن Copy and drag-drop the Copy activity to the pipeline designer surface.
حدد نشاط النسخ الذي سحبته إلى سطح مصمم البنية الأساسية لبرنامج ربط العمليات التجارية. في نافذة Properties الخاصة بـ Copy في الأسفل، قم بالتبديل إلى علامة التبويب Source، وانقر فوق + New. إنشاء مجموعة بيانات المصدر لنشاط النسخ في هذه الخطوة.
في نافذة New Dataset ، حدد علامة التبويب Azure في الأعلى، ثم اختر Azure Blob Storage، وحدد Continue.
في نافذة Select format ، اختر DelimitedText وحدد Continue.
ترى علامة تبويب جديدة بعنوان تعيين الخصائص. تغيير اسم مجموعة البيانات SourceBlobDataset. حدد القائمة المنسدلة Linked Service، واختر +New لإنشاء خدمة مرتبطة جديدة إلى مجموعة البيانات المصدر.
سترى نافذة الخدمة المرتبطة الجديدة حيث يمكنك ملء الخصائص المطلوبة للخدمة المرتبطة.
في نافذة New Linked Service، أكمل الخطوات التالية:
- سجل AzureSqlDatabaseLinkedService في مربع "Name".
- بالنسبة إلى اسم حساب التخزين، حدد اسم حساب تخزين Azure الخاص بك.
- انقر فوق Create.
في نافذة Set properties التي تظهر بعد ذلك، حدد Open this dataset لإدخال قيمة ذات معلمات لاسم الملف.
أدخل
@pipeline().parameters.sourceBlobContainer
للمجلد وemp.txt
لاسم الملف.قم بالتبديل مرة أخرى إلى علامة تبويب البنية الأساسية لبرنامج ربط العمليات التجارية (أو انقر فوق البنية الأساسية لبرنامج ربط العمليات التجارية في طريقة عرض الشجرة على اليسار)، وحدد نشاط النسخ على المصمم. تأكد من تحديد مجموعة البيانات الجديدة لمجموعة بيانات المصدر.
في نافذة الخصائص، قم بالتبديل إلى علامة التبويب Sink وانقر فوق + New لمجموعة مجموعة بيانات المتلقي. إنشاء مجموعة بيانات المتلقي لنشاط النسخ في هذه الخطوة مشابهة لطريقة إنشاء مجموعة البيانات المصدر.
في نافذة New Dataset ، حدد Azure Blob Storage، وانقر فوق Continue، ثم حدد DelimitedText مرة أخرى في نافذة Select format وانقر فوق Continue مرة أخرى.
في صفحة Set properties لمجموعة البيانات، أدخل SinkBlobDataset for Name، وحدد AzureStorageLinkedService ل LinkedService.
قم بتوسيع قسم Advanced من صفحة الخصائص وحدد Open this dataset.
في علامة التبويب الاتصال مجموعة البيانات، قم بتحرير مسار الملف. أدخل
@pipeline().parameters.sinkBlobContainer
للمجلد واسم@concat(pipeline().RunId, '.txt')
الملف. يستخدم التعبير مُعرّف البنية الأساسية الحالي لتشغيل اسم الملف. للحصول على القائمة المُعتمدة لمتغيرات النظام وتعبيراته، راجع متغيرات النظامولغة التعبير.قم بالتبديل مرة أخرى إلى علامة تبويب البنية الأساسية لبرنامج ربط العمليات التجارية في الأعلى. ابحث عن ويب في مربع البحث، واسحب نشاط ويب إلى سطح مصمم البنية الأساسية لبرنامج ربط العمليات التجارية. تعيين اسم النشاط إلى SendSuccessEmailActivity. يسمح Web Activity بإجراء مكالمة إلى أي نقطة نهاية REST. لمزيد من المعلومات حول النشاط، راجع Web Activity. تستخدم هذه البنية الأساسية Web Activity لاستدعاء سير عمل البريد الإلكتروني لتطبيقات المنطق Logic Apps.
قم بالتبديل إلى علامة التبويب الإعدادات من علامة التبويب عام ثم اتبع الخطوات التالية:
أمّا URL، فحدد URL لسير عمل تطبيقات المنطق التي ترسل رسالة النجاح الإلكترونية.
حدد POST من أجل الأسلوب.
انقر فوق إضافة+ رابط في قسم العناوين.
أضف عنوان نوع المحتوى وأرسله إلى application/json.
حدد JSON التالي للنص الأساسي.
{ "message": "@{activity('Copy1').output.dataWritten}", "dataFactoryName": "@{pipeline().DataFactory}", "pipelineName": "@{pipeline().Pipeline}", "receiver": "@pipeline().parameters.receiver" }
يحتوي نص الرسالة على الخصائص التالية:
الرسالة - قيمة تمرير .
@{activity('Copy1').output.dataWritten
الوصول إلى خاصية نشاط النسخة السابقة، وتمرير قيمة البيانات المكتوبة. فيما يتعلق بحالة الإخفاق، مرر إخراج الخطأ بدلاً من@{activity('CopyBlobtoBlob').error.message
.Data Factory Name - قيمة
@{pipeline().DataFactory}
تمرير هذا متغير نظام، مما يسمح لك بالوصول إلى اسم مصنع البيانات المقابل. للحصول على قائمة بمتغيرات النظام، راجع مقالة متغيرات النظام.اسم المسار - قيمة
@{pipeline().Pipeline}
تمرير . هذا هو أيضًا متغير النظام، ما يسمح لك بالوصول إلى اسم البنية الأساسية المطابق.المتلقي - قيمة تمرير "@pipeline().parameters.receiver"). الوصول إلى معلمات البنية الأساسية.
الاتصالنسخ النشاط إلى نشاط ويب عن طريق سحب زر خانة الاختيار الخضراء بجوار نشاط النسخ والإفلات على نشاط ويب.
نشاط سحب وإفلات Web آخر من مربع أدوات الأنشطة إلى سطح مصمم البنية الأساسية وتعيين الاسم إلى SendFailureEmailActivity.
انتقل إلى علامة التبويب "Settings"، ثم نفذ الخطوات التالية:
أمّا URL، فحدد URL لسير عمل تطبيقات المنطق التي ترسل رسالة الإخفاق الإلكترونية.
حدد POST من أجل الأسلوب.
انقر فوق إضافة+ رابط في قسم العناوين.
أضف عنوان نوع المحتوى وأرسله إلى application/json.
حدد JSON التالي للنص الأساسي.
{ "message": "@{activity('Copy1').error.message}", "dataFactoryName": "@{pipeline().DataFactory}", "pipelineName": "@{pipeline().Pipeline}", "receiver": "@pipeline().parameters.receiver" }
حدد الزر X الأحمر على الجانب الأيسر من نشاط النسخ في مصمم البنية الأساسية لبرنامج ربط العمليات التجارية واسحبه وأفلته في SendFailureEmailActivity الذي أنشأته للتو.
للتحقق من صحة البنية الأساسية، انقر فوق زرالتحقق على شريط الأدوات. أغلق نافذةنتيجة التحقق من البنية الأساسية بالنقر فوق زر >>.
لنشر الكيانات (مجموعات البيانات والبنية الأساسية وما إلى ذلك) إلى خدمة مصنع البيانات، حدد نشر الكل. انتظر حتى ترى رسالة تم النشر بنجاح.
تشغيل البنية الأساسية الناجحة
لتتبع تشغيل البنية الأساسية، انقر فوق تتبع على شريط الأدوات، وانقر فوق تتبع الآن.
في إطار تشغيل البنية الأساسية، اتبع الخطوات التالية:
أدخل adftutorial/adfv2branch/input من أجل معلمة sourceBlobContainer.
أدخل adftutorial/adfv2branch/input من أجل معلمة sourceBlobContainer.
أدخل عنوان بريد إلكترونيالخاص بـالمتلقي.
انقر فوق إنهاء
راقب تشغيل البنية الأساسية الناجح
لمراقبة تشغيل البنية الأساسية، قم بالتبديل إلى علامة التبويب مراقبة على اليسار. ترى تشغيل البنية الأساسية الذي قمت بتشغيله يدويًا. استخدم زر تحديث لتحديث القائمة.
لعرض تشغيل النشاط المقترن بتشغيل البنية الأساسية هذا، انقر فوق الارتباط الأول في عمود الإجراءات. يمكنك الانتقال مرة أخرى إلى طريقة العرض السابقة، انقر فوق ارتباط البنية الأساسية في الأعلى. استخدم زر تحديث لتحديث القائمة.
بدء تشغيل البنية الأساسية ذات الإخفاق
انتقل إلى علامة التبويب Edit الموجودة على اليمين.
لتتبع تشغيل البنية الأساسية، انقر فوق تتبع على شريط الأدوات، وانقر فوق تتبع الآن.
في إطار تشغيل البنية الأساسية، اتبع الخطوات التالية:
- أدخل adftutorial/dummy/input من أجل معلمة sourceBlobContainer. تأكد من أن المجلد الوهمي غير موجود في الحاوية adftutorial.
- أدخل adftutorial/dummy/input من أجل معلمة sourceBlobContainer.
- أدخل عنوان بريد إلكترونيالخاص بـالمتلقي.
- انقر فوق إنهاء.
راقب تشغيل البنية الأساسية ذات الإخفاق
لمراقبة تشغيل البنية الأساسية، قم بالتبديل إلى علامة التبويب مراقبة على اليسار. ترى تشغيل البنية الأساسية الذي قمت بتشغيله يدويًا. استخدم زر تحديث لتحديث القائمة.
انقر فوق ارتباط Error لتشغيل البنية الأساسية للاطلاع على تفاصيل حول الخطأ.
لعرض تشغيل النشاط المقترن بتشغيل البنية الأساسية هذا، انقر فوق الارتباط الأول في عمود الإجراءات. استخدم زر تحديث لتحديث القائمة. لاحظ إخفاق نشاط النسخ في البنية الأساسية. نجح نشاط Web في إرسال رسالة البريد الإلكتروني ذات الإخفاق إلى المتلقي المحدد.
انقر فوق ارتباط Error في Actions لتشغيل البنية الأساسية للاطلاع على تفاصيل حول الخطأ.
المحتوى ذو الصلة
نفّذت الخطوات التالية في هذا البرنامج التعليمي:
- إنشاء data factory.
- إنشاء خدمة ذات صلة بـ Azure Storage.
- إنشاء مجموعة بيانات Azure Blob
- إنشاء مسار يحتوي على نشاط نسخ ونشاط ويب.
- إرسال مخرجات الأنشطة إلى أنشطة لاحقة.
- الاستفادة من تمرير المعلمة ومتغيرات النظام
- بدء تشغيل البنية الأساسية
- مراقبة البنية الأساسية وتشغيل النشاط
يمكنك الآن المتابعة إلى قسم Concepts لمعرفة مزيد من المعلومات حول Azure Data Factory.
الملاحظات
https://aka.ms/ContentUserFeedback.
قريبًا: خلال عام 2024، سنتخلص تدريجيًا من GitHub Issues بوصفها آلية إرسال ملاحظات للمحتوى ونستبدلها بنظام ملاحظات جديد. لمزيد من المعلومات، راجعإرسال الملاحظات وعرضها المتعلقة بـ