البرنامج التعليمي: تحليل بيانات المكالمات الاحتيالية باستخدام Stream Analytics، وعرض النتائج في لوحة معلومات Power BI

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

في هذا البرنامج التعليمي، تنفذ المهام التالية:

  • إنشاء نماذج من بيانات المكالمات وأرسلها إلى Azure Event Hubs.
  • إنشاء وظيفة تحليلات البث.
  • تكوين مدخلات ومخرجات الوظيفة.
  • تحديد الاستعلامات لتصفية المكالمات الاحتيالية.
  • اختبار وبدء العمل.
  • عرض النتائج في Power BI.

المتطلبات الأساسية

قبل أن تبدأ، تأكد من إكمال الخطوات التالية:

  • إذا لم يكن لديك اشتراك Azure، ⁩فيمكنك إنشاء حساب مجاني.
  • قم بتنزيل تطبيق مولد أحداث المكالمة الهاتفية، TelcoGenerator.zip من مركز التنزيل لـ Microsoft أو احصل على التعليمة البرمجية المصدر من GitHub.
  • تحتاج إلى حساب Power BI .

تسجيل الدخول إلى Azure

قم بتسجيل الدخول إلى بوابة Azure.

إنشاء مركز أحداث

تحتاج إلى إرسال بعض البيانات النموذجية إلى مركز أحداث قبل أن يتمكن Stream Analytics من تحليل دفق بيانات المكالمات الاحتيالية. في هذا البرنامج التعليمي، يمكنك إرسال البيانات إلى Azure باستخدام Azure Event Hubs.

استخدم الخطوات التالية لإنشاء مركز أحداث وإرسال بيانات المكالمة إلى مركز الحدث هذا:

  1. قم بتسجيل الدخول إلى بوابة Azure.

  2. حدد جميع الخدمات في القائمة اليمنى، وحدد إنترنت الأشياء، ثم قم بالماوس فوق مراكز الأحداث، ثم حدد الزر + (إضافة).

    لقطة شاشة تعرض صفحة إنشاء مراكز الحدث.

  3. في صفحة Create Namespace ، اتبع الخطوات التالية:

    1. حدد اشتراك Azure حيث تريد إنشاء مركز الحدث.

    2. بالنسبة إلى Resource group، حدد Create new وأدخل اسما لمجموعة الموارد. يتم إنشاء مساحة اسم مراكز الأحداث في مجموعة الموارد هذه.

    3. بالنسبة إلى Namespace name، أدخل اسما فريدا لمساحة اسم Event Hubs.

    4. بالنسبة إلى الموقع، حدد المنطقة التي تريد إنشاء مساحة الاسم فيها.

    5. بالنسبة ل Pricing tier، حدد Standard.

    6. حدد مراجعة + إنشاء عند أسفل الصفحة.

      لقطة شاشة تعرض صفحة إنشاء مساحة اسم.

    7. في صفحة Review + create لمعالج إنشاء مساحة الاسم، حدد Create في أسفل الصفحة بعد مراجعة جميع الإعدادات.

  4. بعد نشر مساحة الاسم بنجاح، حدد Go to resource للانتقال إلى صفحة Event Hubs Namespace.

  5. في صفحة مساحة اسم مراكز الأحداث، حدد مركز الأحداث+ في شريط الأوامر.

    لقطة شاشة تعرض زر إضافة مركز أحداث في صفحة مساحة اسم مراكز الأحداث.

  6. في صفحة Create Event Hub، أدخل Name لمركز الأحداث. تعيين عدد الأقسام إلى 2. استخدم الخيارات الافتراضية في الإعدادات المتبقية وحدد Review + create.

    لقطة شاشة تعرض صفحة إنشاء مركز أحداث.

  7. في صفحةمراجعة + إنشاء، حدد إنشاء أسفل الصفحة. ثم انتظر حتى تنجح عملية النشر.

منح حق الوصول إلى مركز الحدث والحصول على سلسلة اتصال

قبل أن تتمكن أحد التطبيقات من إرسال البيانات إلى Azure Event Hubs، يجب أن يكون لمركز الأحداث سياسة تسمح بالوصول. ينتج نهج الوصول سلسلة اتصال تتضمن معلومات التفويض.

  1. في صفحة Event Hubs Namespace ، حدد Shared access policies في القائمة اليمنى.

  2. حدد RootManageSharedAccessKey من قائمة النهج.

  3. ثم حدد زر النسخ بجوار سلسلة الاتصال ion - المفتاح الأساسي.

  4. ألصق سلسلة الاتصال في محرر النص. تحتاج إلى سلسلة الاتصال هذه في القسم التالي.

    سلسلة الاتصال تبدو كما يلي:

    Endpoint=sb://<Your event hub namespace>.servicebus.windows.net/;SharedAccessKeyName=<Your shared access policy name>;SharedAccessKey=<generated key>

    لاحظ أن سلسلة الاتصال يحتوي على أزواج متعددة من قيم المفاتيح مفصولة بفواصل منقوطة: نقطة النهاية و SharedAccessKeyName و SharedAccessKey.

بدء تشغيل تطبيق منشئ الحدث

قبل بدء تشغيل تطبيق "TelcoGenerator"، يجب عليك تكوينه لإرسال البيانات إلى Azure Event Hubs الذي أنشأته سابقًا.

  1. استخراج محتويات ملف TelcoGenerator.zip .

  2. افتح ملف TelcoGenerator\TelcoGenerator\telcodatagen.exe.config في محرر نص من اختيارك. حيث يوجد أكثر من ملف .config، لذا تأكد من فتح الملف الصحيح.

  3. <appSettings> تحديث العنصر في ملف التكوين بالتفاصيل التالية:

    • عيِّن قيمة المفتاح EventHubName إلى قيمة EntityPath في نهاية سلسلة الاتصال.
    • تعيين قيمة Microsoft.ServiceBus.الاتصالمفتاح ionString إلى سلسلة الاتصال إلى مساحة الاسم. إذا كنت تستخدم سلسلة الاتصال إلى مركز أحداث، وليس مساحة اسم، فقم بإزالة EntityPath القيمة (;EntityPath=myeventhub) في النهاية. لا تنس إزالة الفاصلة المنقوطة التي تسبق قيمة EntityPath.
  4. حفظ الملف.

  5. بعد ذلك، افتح نافذة أمر، وقم بتغييره إلى المجلد الذي قمت بفك ضغط تطبيق TelcoGenerator. ثم إدخال الأمر التالي:

    .\telcodatagen.exe 1000 0.2 2
    

    يأخذ هذا الأمر المعلمات التالية:

    • عدد سجلات بيانات المكالمات في الساعة.
    • النسبة المئوية لاحتمالية الاحتيال، وهي عدد المرات التي يجب أن يحاكي فيها التطبيق مكالمة احتيالية. تعني القيمة 0.2 أن حوالي 20٪ من سجلات المكالمات تبدو احتيالية.
    • المدة بالساعات، وهي عدد الساعات التي يجب أن يعمل بها التطبيق. يمكنك أيضا إيقاف التطبيق في أي وقت عن طريق إنهاء العملية (Ctrl+C) في سطر الأوامر.

    بعد بضع ثوانٍ ، يبدأ التطبيق في عرض سجلات المكالمات الهاتفية على الشاشة حيث يرسلها إلى مركز الأحداث. تحتوي بيانات المكالمة الهاتفية على الحقول التالية:

    السجل التعريف
    CallrecTime الطابع الزمني لوقت بدء المكالمة.
    SwitchNum مفتاح الهاتف المستخدم لتوصيل المكالمة. في هذا المثال، تكون المفاتيح عبارة عن سلاسل تمثل البلد / المنطقة الأصلية (الولايات المتحدة، أو الصين، أو المملكة المتحدة، أو ألمانيا، أو أستراليا).
    CallingNum رقم هاتف المتصل.
    CallingIMSI الهوية الدولية لمشترك الجوال (IMSI). إنه معرف فريد للمتصل.
    CalledNum رقم هاتف مستلم المكالمة.
    CalledIMSI الهوية الدولية لمشترك الجوال (IMSI). إنه معرف فريد لمستلم المكالمة.

إنشاء مشروع وظائف Stream Analytics

الآن بعد أن أصبح لديك مجموعة من أحداث المكالمات، يمكنك إنشاء مشروع Stream Analytics التي تقرأ البيانات من مركز الحدث.

  1. لإنشاء وظيفة Stream Analytics، انتقل إلى مدخل Microsoft Azure.
  2. حدد Create a resource وابحث عن وظيفة Stream Analytics. حدد تجانب وظيفة Stream Analytics وحدد Create.
  3. في صفحة وظيفة New Stream Analytics، اتبع الخطوات التالية:
    1. بالنسبة إلى Subscription، حدد الاشتراك الذي يحتوي على مساحة اسم Event Hubs.

    2. بالنسبة لمجموعة الموارد، حدد مجموعة الموارد التي أنشأتها سابقا.

    3. في قسم Instance details ، بالنسبة إلى Name، أدخل اسما فريدا لوظيفة Stream Analytics.

    4. بالنسبة للمنطقة، حدد المنطقة التي تريد إنشاء وظيفة Stream Analytics فيها. نوصي بوضع الوظيفة ومركز الأحداث في نفس المنطقة للحصول على أفضل أداء وحتى لا تدفع لنقل البيانات بين المناطق.

    5. بالنسبة لبيئة<الاستضافة، حدد Cloud إذا لم تكن محددة بالفعل. يمكن نشر وظائف Stream Analytics في "السحابة" أو "Edge". تتيح لكالسحابةالنشر إلى Azure Cloud، وتتيح لكEdge النشر إلى جهاز IoT Edge.

    6. بالنسبة لوحدات البث، حدد 1. تمثل وحدات البث موارد الحوسبة المطلوبة لتنفيذ مهمة ما. تُعيّن هذه القيمة افتراضيًا على 1. للتعرف على تحجيم وحدات الدفق، راجع مقالة فهم وحدات البث وضبطها.

    7. حدد مراجعة + إنشاء عند أسفل الصفحة.

      لقطة شاشة تعرض صفحة مهمة إنشاء Azure Stream Analytics.

  4. في صفحة Review + create ، راجع الإعدادات، ثم حدد Create لإنشاء وظيفة Stream Analytics.
  5. بعد توزيع الوظيفة، حدد Go to resource للانتقال إلى صفحة وظيفة Stream Analytics.

تكوين إدخال المهمة

تتمثل الخطوة التالية في تحديد مصدر إدخال للمهمة لقراءة البيانات باستخدام مركز الحدث الذي أنشأته في القسم السابق.

  1. في صفحة وظيفة Stream Analytics، في قسم Job Topology في القائمة اليمنى، حدد Inputs.

  2. في صفحة Inputs ، حدد + Add input and Event hub.

    لقطة شاشة تعرض صفحة الإدخال لوظيفة Stream Analytics.

  3. في صفحة Event hub ، اتبع الخطوات التالية:

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

    2. بالنسبة إلى Subscription، حدد اشتراك Azure حيث أنشأت مركز الأحداث. يمكن أن يكون مركز الحدث في نفس الاشتراك، أو اشتراكًا مختلفًا مثل وظيفة Stream Analytics.

    3. بالنسبة لمساحة اسم مراكز الأحداث، حدد مساحة اسم مراكز الأحداث التي أنشأتها في القسم السابق. يتم سرد جميع مساحات الأسماء المتوفرة في اشتراكك الحالي في القائمة المنسدلة.

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

    5. بالنسبة لمجموعة مستهلكي مركز الأحداث، احتفظ بتحديد الخيار إنشاء جديد بحيث يتم إنشاء مجموعة مستهلكين جديدة على مركز الحدث. نوصي باستخدام مجموعة مستهلكين مميزة لكل وظيفة في Stream Analytics. إذا لم يتم تحديد مجموعة مستهلكين، فإن وظيفة Stream Analytics تستخدم مجموعة المستهلكين $Default . عندما تحتوي الوظيفة على ارتباط ذاتي أو تحتوي على مدخلات متعددة، فقد تتم قراءة بعض المدخلات لاحقًا بواسطة أكثر من قارئ واحد. يؤثر هذا الموقف على عدد القراء في مجموعة واحدة من المستهلكين.

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

    7. بالنسبة إلى اسم نهج مركز الأحداث، حدد استخدام موجود، ثم حدد النهج الذي أنشأته سابقا.

    8. حدد حفظ في أسفل الصفحة.

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

تكوين إخراج المهمة

الخطوة الأخيرة هي تحديد مصدر الإخراج حيث يمكن للمهمة كتابة البيانات المحولة. في هذا البرنامج التعليمي، يمكنك إخراج وتصور البيانات مع Power BI.

  1. من مدخل Microsoft Azure، افتح All resources، وحدد وظيفة ASATutorial Stream Analytics.

  2. في قسم Job Topology من وظيفة Stream Analytics، حدد خيار Outputs .

  3. حدد + إضافة>Power BI.

  4. املأ نموذج الإدخال بالتفاصيل التالية:

    الإعداد القيمة المقترحة
    اسم مستعار للإخراج MyPBIoutput
    مجموعة مساحة العمل مساحة عملي
    اسم مجموعة البيانات ASAdataset
    اسم الجدول ASATable
    وضع المصادقة رمز المستخدم المميز
  5. حدد Authorize واتبع المطالبات لمصادقة Power BI.

    تكوين إخراج Stream Analytics

  6. حدد Save في أسفل صفحة Power BI.

    يستخدم هذا البرنامج التعليمي وضع مصادقة رمز المستخدم المميز . لاستخدام الهوية المدارة، راجع استخدام الهوية المدارة لمصادقة وظيفة Azure Stream Analytics إلى Power BI.

إنشاء استعلامات لتحويل البيانات في الوقت الفعلي

في هذه المرحلة لديك وظيفة Stream Analytics مُعدة لقراءة تدفق البيانات الواردة. الخطوة التالية هي إنشاء استعلام يقوم بتحليل البيانات في الوقت الفعلي. تستخدم الاستعلامات لغة شبيهة بلغة SQL لها بعض الإضافات الخاصة بـ Stream Analytics.

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

ستعرض الاستعلامات التي تقوم بإنشائها هنا فقط البيانات المحولة على الشاشة. في قسم لاحق، ستكتب البيانات المحولة إلى Power BI.

لمعرفة المزيد حول اللغة، راجع مرجع لغة استعلام Azure Stream Analytics.

اختبار باستخدام استعلام تمريري

إذا كنت تريد أرشفة كل حدث، يمكنك استخدام استعلام تمريري لقراءة جميع الحقول الموجودة في حمولة الحدث.

  1. انتقل إلى وظيفة Stream Analytics في مدخل Microsoft Azure وحدد Query ضمن Job topology في القائمة اليمنى.

  2. في نافذة الاستعلام، أدخل هذا الاستعلام:

    SELECT 
        *
    FROM 
        CallStream
    

    إشعار

    كما هو الحال مع SQL، فإن الكلمات الرئيسية ليست حساسة لحالة الأحرف، والمسافة البيضاء ليست مهمة.

    في هذا الاستعلام، CallStream هو الاسم المستعار الذي حددته عند إنشاء الإدخال. إذا استخدمت اسمًا مستعارًا مختلفًا، فاستخدم هذا الاسم بدلاً منه.

  3. حدد Test query.

    تقوم وظيفة Stream Analytics بتشغيل الاستعلام مقابل بيانات العينة من الإدخال، وتعرض الإخراج في أسفل النافذة. تشير النتائج إلى تكوين مراكز الأحداث ووظيفةStreaming Analytics بشكل صحيح.

    نموذج الإخراج من استعلام الاختبار.

    يعتمد العدد الدقيق للسجلات التي تراها على عدد السجلات التي تم التقاطها في العينة.

تقليل عدد الحقول باستخدام إسقاط عمود

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

شغّل الاستعلام التالي، ولاحظ الإخراج.

SELECT CallRecTime, SwitchNum, CallingIMSI, CallingNum, CalledNum 
INTO
    [MyPBIoutput]
FROM 
    CallStream

عد المكالمات الواردة حسب المنطقة: نافذة الهبوط مع التجميع

افترض أنك تريد حساب عدد المكالمات الواردة لكل منطقة. في تدفق البيانات، عندما تريد أداء وظائف مجمعة مثل العد، فينبغي تقسيم الدفق إلى وحدات زمنية، نظرًا لأن دفق البيانات نفسه لا نهاية له فعليًا. يمكنك القيام بذلك باستخدام وظيفة نافذة Streaming Analytics. يمكنك بعد ذلك العمل مع البيانات الموجودة داخل تلك النافذة كوحدة.

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

  1. ألصق الاستعلام التالي في محرر الاستعلام:

    SELECT 
        System.Timestamp as WindowEnd, SwitchNum, COUNT(*) as CallCount 
    FROM
        CallStream TIMESTAMP BY CallRecTime 
    GROUP BY TUMBLINGWINDOW(s, 5), SwitchNum
    

    يستخدم Timestamp By هذا الاستعلام الكلمة الأساسية في FROM عبارة لتحديد حقل الطابع الزمني في دفق الإدخال المراد استخدامه لتعريف نافذة التدوير. في هذه الحالة، تقسم النافذة البيانات إلى مقاطع حسب CallRecTime الحقل في كل سجل. (إذا لم يتم تحديد أي حقل، فإن عملية وضع النوافذ تستخدم الوقت الذي يصل فيه كل حدث إلى مركز الحدث. راجع "وقت الوصول مقابل وقت التطبيق" في مرجع لغة الاستعلام في Stream Analytics.

    يتضمن System.Timestampالإسقاط ، الذي يقوم بإرجاع طابع زمني لنهاية كل نافذة.

    لتحديد أنك تريد استخدام نافذة Tumbling، يمكنك استخدام الدالة TUMBLINGWINDOW في العبارة GROUP BY . في الدالة، يمكنك تحديد وحدة زمنية (في أي مكان من ميكروثانية إلى يوم)، وحجم النافذة (عدد الوحدات). في هذا المثال، تتكون نافذة التدوير من فواصل زمنية مدتها 5 ثوان، بحيث تحصل على عدد حسب البلد/المنطقة لكل 5 ثوان من المكالمات.

  2. حدد Test query. في النتائج، لاحظ أن الطوابع الزمنية ضمن WindowEnd بزيادات 5 ثوان.

كشف الاحتيال SIM باستخدام الصلة التلقائية

على سبيل المثال، ضع في اعتبارك أن الاستخدام الاحتيالي هو عبارة عن مكالمات تنشأ من نفس المستخدم؛ ولكن في مواقع مختلفة في غضون 5 ثوانٍ من بعضها البعض. على سبيل المثال، لا يمكن لنفس المستخدم إجراء مكالمة مشروعة من الولايات المتحدة وأستراليا في نفس الوقت.

للتحقق من هذه الحالات، يمكنك استخدام صلة ذاتية لبيانات الدفق لضم الدفق إلى نفسه استنادا CallRecTime إلى القيمة. يمكنك بعد ذلك البحث عن سجلات المكالمات حيث تكون قيمة CallingIMSI (الرقم الأصلي) هي نفسها، ولكن قيمة SwitchNum (البلد / المنطقة الأصلية) ليست هي نفسها.

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

  1. ألصق الاستعلام التالي في محرر الاستعلام:

    SELECT System.Timestamp AS WindowEnd, COUNT(*) AS FraudulentCalls
        INTO "MyPBIoutput"
        FROM "CallStream" CS1 TIMESTAMP BY CallRecTime
        JOIN "CallStream" CS2 TIMESTAMP BY CallRecTime
        ON CS1.CallingIMSI = CS2.CallingIMSI
        AND DATEDIFF(ss, CS1, CS2) BETWEEN 1 AND 5
        WHERE CS1.SwitchNum != CS2.SwitchNum
        GROUP BY TumblingWindow(Duration(second, 1))
    

    يشبه هذا الاستعلام أي صلة SQL باستثناء الدالة DATEDIFF في الصلة. هذا الإصدار من DATEDIFF خاص ب Streaming Analytics، ويجب أن يظهر في ON...BETWEEN عبارة . المعلمات هي وحدة زمنية (الثواني في هذا المثال)، والأسماء المستعارة لمصدري الصلة. هذه الدالة تختلف عن الدالة SQL DATEDIFF القياسية.

    تتضمن العبارة WHERE الشرط الذي يشير إلى المكالمة الاحتيالية: رموز التبديل الأصلية ليست هي نفسها.

  2. حدد Test query. راجع الإخراج، ثم حدد حفظ الاستعلام.

بدء المهمة وتصور الإخراج

  1. لبدء المهمة، انتقل إلى نظرة عامة على الوظيفة وحدد بدء.

  2. حدد الآن لوقت بدء إخراج الوظيفة وحدد بدء. يمكنك عرض حالة الدالة في شريط الإعلام.

  3. بمجرد نجاح المهمة، انتقل إلى Power BI وسجل الدخول باستخدام حساب العمل أو المؤسسة التعليمية. إذا كان استعلام وظيفة Stream Analytics يقوم بإخراج النتائج، فإن مجموعة بيانات ASAdataset التي قمت بإنشائها موجودة ضمن علامة التبويب Datasets .

  4. من مساحة عمل Power BI، حدد + Create لإنشاء لوحة معلومات جديدة تسمى المكالمات الاحتيالية.

  5. في أعلى النافذة، حدد Edit and Add tile. ثم حدد بيانات البث المخصصة والتالي. اختر ASAdataset ضمن مجموعات البيانات الخاصة بك. حدد بطاقة من القائمة المنسدلة نوع المرئيات، وأضف مكالمات احتيالية إلى الحقول. حدد التالي لإدخال اسم للتجانب، ثم حدد تطبيق لإنشاء اللوحة.

    إنشاء إطارات تجانب لوحة معلومات Power BI

  6. اتبع الخطوة 5 مرة أخرى باستخدام الخيارات التالية:

    • عندما تصل إلى نوع التمثيل المرئي، حدد Line chart.
    • أضف محورا وحدد windowend.
    • قم بإضافة قيمة وحدد fraudulent calls.
    • لعرض النافذة الزمنية، حدد آخر 10 دقائق.
  7. يجب أن تبدو لوحة المعلومات الخاصة بك مثل المثال التالي بمجرد إضافة كلا الإطارين المتجانبين. لاحظ أنه في حالة تشغيل تطبيق مرسل مركز الحدث، وتطبيق Streaming Analytics، يتم تحديث لوحة معلومات Power BI بشكل دوري عند وصول بيانات جديدة.

    لقطة شاشة للنتائج في لوحة معلومات Power BI.

قم بتضمين لوحة معلومات Power BI في تطبيق ويب

بالنسبة لهذا الجزء من البرنامج التعليمي، يمكنك استخدام نموذج ASP.NET تطبيق ويب تم إنشاؤه بواسطة فريق Power BI لتضمين لوحة المعلومات الخاصة بك. لمزيد من المعلومات حول تضمين لوحات المعلومات، راجع مقالة التضمين باستخدام Power BI .

لإعداد التطبيق، انتقل إلى مستودع PowerBI-Developer-Samples GitHub واتبع الإرشادات الموجودة ضمن قسم User Owns Data (استخدم عناوين URL لإعادة التوجيه والصفحة الرئيسية ضمن القسم الفرعي integrate-web-app). نظرًا لأننا نستخدم مثال لوحة المعلومات، فاستخدم نموذج كود تطبيق الويب المدمج الموجود في مستودع GitHub. بمجرد تشغيل التطبيق في المستعرض، اتبع الخطوات التالية لتضمين لوحة المعلومات التي أنشأتها سابقا في صفحة الويب:

  1. حدد تسجيل الدخول إلى Power BI، الذي يمنح التطبيق حق الوصول إلى لوحات المعلومات في حساب Power BI الخاص بك.

  2. حدد الزر الحصول على لوحات المعلومات، الذي يعرض لوحات معلومات حسابك في جدول. ابحث عن اسم لوحة المعلومات التي أنشأتها سابقا، powerbi-embedded-dashboard، وانسخ EmbedUrl المقابل.

  3. وأخيرا، الصق EmbedUrl في حقل النص المقابل وحدد Embed Dashboard. يمكنك الآن عرض لوحة المعلومات نفسها المضمنة في تطبيق ويب.

الخطوات التالية

في هذا البرنامج التعليمي، لقد أنشأت وظيفة Stream Analytics بسيطة، وأجريت تحليلاً للبيانات الواردة، وقدمت النتائج في لوحة معلومات Power BI. لمعرفة المزيد حول وظائف Stream Analytics، تابع البرنامج التعليمي التالي: