مشاركة عبر


إنشاء مشغل حدث مخصص لتشغيل مسار في Azure Data Factory

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

تلميح

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

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

البنية المستندة إلى الحدث هي نمط تكامل بيانات شائع يتضمن الإنتاج والكشف والاستهلاك والتفاعل مع الأحداث. تتطلب سيناريوهات تكامل البيانات من عملاء Azure Data Factory في الغالب تشغيل المسارات عند حدوث أحداث معينة. يُغطي التكامل المحلي لمصنع البيانات مع Azure Event Grid الآن مواضيعاً مخصصة. يمكنك إرسال الأحداث إلى موضوع Event Grid. يشترك مصنع البيانات في هذا الموضوع وينصت، ثم يشغّل المسارات وفقاً لذلك.

يعتمد التكامل الموضح في هذه المقالة على Azure Event Grid. تأكد من تسجيل اشتراكك لدى مزود موارد Event Grid. انظر موفرو الموارد وأنواعها للحصول على مزيدٍ من المعلومات. يجب أن تكون قادراً على القيام Microsoft.EventGrid/eventSubscriptions/ بهذا الإجراء. هذا الإجراء جزء من دور "المساهم في حدث EventGrid" المضمّن.

هام

إذا كنت تستخدم هذه الميزة في Azure Synapse Analytics، فتأكد من تسجيل اشتراكك أيضا مع موفر موارد Data Factory. وإلا، فستتلقى رسالة تفيد بأن "إنشاء اشتراك حدث فشل".

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

هام

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

حالات استخدام الحدث والمشغل

يمكن تشغيل المشغلات بواسطة أحداث مختلفة، بما في ذلك:

Blob Created: عند تحميل ملف جديد إلى حاوية محددة. Blob Deleted: عند إزالة ملف من الحاوية. Blob Modified: عند تحديث ملف موجود.

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

إعداد موضوع مخصص في Event Grid

لاستخدام مشغل الحدث المخصص في "مصنع البيانات"، عليك أولاًإعداد موضوع مخصص في Event Grid.

انتقل إلى Event Grid وأنشئ الموضوع بنفسك. لمزيد من المعلومات حول كيفية إنشاء الموضوع المخصص، راجع البرامج التعليمية لمدخل Event Grid والبرامج التعليمية ل Azure CLI.

إشعار

يختلف سير العمل عن مشغل حدث التخزين. هنا، لا يُعِد مصنع البيانات الموضوع لك.

يتوقع مصنع البيانات الأحداث لمتابعة مخطط حدث Event Grid. تأكد من أن حمولات الأحداث تحتوي على الحقول التالية:

[
  {
    "topic": string,
    "subject": string,
    "id": string,
    "eventType": string,
    "eventTime": string,
    "data":{
      object-unique-to-each-publisher
    },
    "dataVersion": string,
    "metadataVersion": string
  }
]

استخدم مصنع البيانات لإنشاء مشغل حدث مخصص

  1. انتقل إلى Data Factory وسجل الدخول.

  2. التبديل إلى علامة تبويب "تحرير". ابحث عن أيقونة القلم الرصاص.

  3. حدد "المشغل" في القائمة ثم حدد "جديد/تحرير".

  4. في صفحة إضافة مشغلات ، حدد اختيار مشغل، ثم حدد + جديد.

  5. ضمن النوع، حدد أحداث مخصصة.

    لقطة شاشة توضح إنشاء مشغل حدث مخصص جديد في واجهة مستخدم Data Factory.

  6. حدد الموضوع المخصص من القائمة المنسدلة لاشتراك Azure أو أدخل نطاق موضوع الحدث يدويا.

    إشعار

    لإنشاء مشغل حدث مخصص أو تعديله في Data Factory، تحتاج إلى استخدام حساب Azure مع التحكم المناسب في الوصول المستند إلى دور Azure (Azure RBAC). لا يلزم الحصول على إذن آخر. لا يتطلب كيان خدمة Data Factory إذنا خاصا لشبكة الأحداث. راجع قسم التحكم في الوصول استناداً إلى الدور للحصول على مزيدٍ من المعلومات حول التحكم في الوصول.

  7. Subject begins with تسمح لك الخاصيتان و Subject ends with بتصفية أحداث المشغل. كلا العقارين اختياريان.

  8. استخدم + جديد لإضافة أنواع الأحداث للتصفية عليها. تستخدم قائمة مشغلات الأحداث المخصصة علاقة OR. عندما يتطابق حدث مخصص مع eventType خاصية واحدة في القائمة، يتم تشغيل تشغيل البنية الأساسية لبرنامج ربط العمليات التجارية. نوع الحدث غير حساس لحالة الأحرف. على سبيل المثال، في لقطة الشاشة التالية، يطابق المشغل جميع copycompleted الأحداث أو الأحداث التي لها موضوع يبدأ copysucceededبالمصانع.

    لقطة شاشة تعرض صفحة

  9. يمكن لمشغل حدث مخصص توزيع وإرسال حمولة مخصصة dataإلى مسارك. يمكنك إنشاء معلمات البنية الأساسية لبرنامج ربط العمليات التجارية ثم تعبئة القيم في صفحة المعلمات . استخدم التنسيق @triggerBody().event.data._keyName_لتوزيع حمولة البيانات ومرّر القيم إلى معلمات المسار.

    للحصول على شرح مفصل، راجع:

    لقطة شاشة تعرض إعدادات معلمات المسار.

    لقطة شاشة تعرض صفحة المعلمات للإشارة إلى حمولة البيانات في حدث مخصص.

  10. بعد إدخال المعلمات، حدد موافق.

تصفية متقدمة

تدعم مشغلات الأحداث المخصصة قدرات التصفية المتقدمة، على غرار التصفية المتقدمة لشبكة الأحداث. تسمح عوامل التصفية الشرطية هذه بتشغيل البنية الأساسية لبرنامج ربط العمليات التجارية استنادا إلى قيم حمولة الحدث. على سبيل المثال، قد يكون لديك حقل في حمولة الحدث المسماة Department، ويجب تشغيل المسار فقط إذا كان القسم يساوي Finance. قد تحدد أيضا منطقا معقدا، مثل حقل التاريخ في القائمة [1، 2، 3، 4، 5]، حقل الشهر غير موجود في القائمة [11، 12]، وإذا كان حقل العلامة يحتوي على [السنة المالية 2021 أو السنة المالية 2021 أو السنة المالية 2021 أو السنة المالية 2021].

لقطة شاشة تعرض تعيين عوامل تصفية متقدمة لمشغل حدث العميل.

اعتبارا من اليوم، تدعم مشغلات الأحداث المخصصة مجموعة فرعية من عوامل تشغيل التصفية المتقدمة في Event Grid. يتم دعم شروط التصفية التالية:

  • NumberIn
  • NumberNotIn
  • NumberLessThan
  • NumberGreaterThan
  • NumberLessThanOrEquals
  • NumberGreaterThanOrEquals
  • BoolEquals
  • StringContains
  • StringBeginsWith
  • StringEndsWith
  • StringIn
  • StringNotIn

حدد + جديد لإضافة شروط تصفية جديدة.

تمتثل مشغلات الأحداث المخصصة أيضا لنفس القيود مثل Event Grid، مثل:

  • 5 عوامل تصفية متقدمة و25 قيمة تصفية عبر جميع عوامل التصفية لكل مشغل حدث مخصص.
  • 512 حرفا لكل قيمة سلسلة.
  • 5 قيم لعوامل in التشغيل و not in .
  • لا يمكن أن تحتوي المفاتيح على . الحرف (نقطة)، على سبيل المثال، john.doe@contoso.com. حالياً، لا يوجد دعم لأحرف الإلغاء في المفاتيح.
  • يمكن استخدام نفس المفتاح في أكثر من عامل تصفية واحد.

يعتمد Data Factory على أحدث إصدار من التوفر العام (GA) من واجهة برمجة تطبيقات شبكة الأحداث. مع الوصول إلى إصدارات واجهة برمجة التطبيقات الجديدة إلى مرحلة التوفر العام، يقوم Data Factory بتوسيع دعمه لمشغلي التصفية الأكثر تقدما.

مخطط JSON

يوفر الجدول التالي نظرة عامة على عناصر المخطط المتعلقة بمشغلات الأحداث المخصصة.

عنصر JSON ‏‏الوصف النوع القيم المسموح بها المطلوب
scope معرّف مورد Azure Resource Manager لموضوع Event Grid. السلسلة‬ معرف مدير موارد Azure نعم.
events نوع الأحداث التي تتسبب في عمل هذا المشغل. مصفوفة السلاسل نعم، هناك قيمة واحدة متوقّعة على الأقل.
subjectBeginsWith subjectيجب أن يبدأ الحقل بالنمط المقدّم حتى يعمل المشغّل. على سبيل المثال، تعمل مشغلات المصانع فقط لمواضيع الأحداث التي تبدأ بالمصانع. السلسلة‬ ‏‏لا.
subjectEndsWith subjectيجب أن ينتهي الحقل بالنمط المقدّم لعمل المشغل. السلسلة‬ ‏‏لا.
advancedFilters يحدد كل من كائنات قائمة الكائنات الثنائية الكبيرة لـ JSON شرط عامل تصفية معيّن. يحدد كل كائن ثنائي كبير key وoperatorType وvalues. قائمة الكائنات الثنائية كبيرة الحجم ل JSON ‏‏لا.

التحكم في الوصول استناداً إلى الدور

يستخدم Data Factory Azure RBAC لحظر الوصول غير المصرح به. حتى يعمل مصنع البيانات بشكل صحيح، فإنه يتطلب الوصول إلى:

  • الإنصات للأحداث.
  • الاشتراك في التحديثات من الأحداث.
  • تشغيل المسارات المرتبطة بالأحداث المخصصة.

يجب تسجيل الدخول إلى "مصنع البيانات" باستخدام حساب Azure له حق الوصول المناسب لإنشاء مشغل حدث مخصص أو تحديثه بنجاح. وإلا، تفشل العملية مع ظهور الرسالة "تم رفض الوصول".

لا يتطلب Data Factory إذنا خاصا لمثيل Event Grid. كما لا تحتاج أيضاً إلى تعيين إذن دور RBAC Azure لتشغيل كيان خدمة Data Factory.

على وجه التحديد، تحتاج إلى Microsoft.EventGrid/EventSubscriptions/Write إذن على /subscriptions/####/resourceGroups//####/providers/Microsoft.EventGrid/topics/someTopics.

  • عند التأليف في مصنع البيانات (في بيئة التطوير، على سبيل المثال)، يحتاج حساب Azure الذي سجل الدخول إلى الحصول على الإذن السابق.
  • عند النشر من خلال التكامل المستمر والتسليم المستمر، يجب أن يكون للحساب المستخدم لنشر قالب Azure Resource Manager في مصنع الاختبار أو الإنتاج الإذن السابق.