إرسال البيانات إلى Azure Data Explorer من البنية الأساسية لبرنامج ربط العمليات التجارية Azure IoT Data Processor Preview

هام

معاينة عمليات Azure IoT - التي تم تمكينها بواسطة Azure Arc قيد المعاينة حاليا. يجب عدم استخدام برنامج المعاينة هذا في بيئات الإنتاج.

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

استخدم وجهة Azure Data Explorer لكتابة البيانات إلى جدول في Azure Data Explorer من مسار Azure IoT Data Processor Preview. تقوم مرحلة الوجهة بتجميع الرسائل قبل إرسالها إلى Azure Data Explorer.

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

لتكوين مرحلة مسار وجهة Azure Data Explorer واستخدامها، تحتاج إلى:

  • مثيل منشور من معالج البيانات.
  • نظام مجموعة Azure Data Explorer.
  • قاعدة بيانات في نظام مجموعة Azure Data Explorer.

إعداد Azure Data Explorer

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

لإنشاء كيان خدمة مع سر العميل:

  1. استخدم أمر Azure CLI التالي لإنشاء كيان خدمة.

    az ad sp create-for-rbac --name <YOUR_SP_NAME> 
    
  2. يتضمن appIdإخراج هذا الأمر و displayNamepasswordو و.tenant دون هذه القيم لاستخدامها عند تكوين الوصول إلى مورد السحابة مثل Microsoft Fabric وإنشاء سر وتكوين وجهة المسار:

    {
        "appId": "<app-id>",
        "displayName": "<name>",
        "password": "<client-secret>",
        "tenant": "<tenant-id>"
    }
    

لمنح وصول المسؤول إلى قاعدة بيانات Azure Data Explorer، قم بتشغيل الأمر التالي في علامة تبويب استعلام قاعدة البيانات:

.add database <DatabaseName> admins (<ApplicationId>) <Notes>

لكي تتصل مرحلة الوجهة ب Azure Data Explorer، فإنها تحتاج إلى الوصول إلى سر يحتوي على تفاصيل المصادقة. لإنشاء بيانات سرية:

  1. استخدم الأمر التالي لإضافة سر إلى Azure Key Vault الذي يحتوي على سر العميل الذي دونته عند إنشاء كيان الخدمة:

    az keyvault secret set --vault-name <your-key-vault-name> --name AccessADXSecret --value <client-secret>
    
  2. أضف المرجع السري إلى مجموعة Kubernetes باتباع الخطوات الواردة في إدارة الأسرار لتوزيع Azure IoT Operations Preview.

الدفعات

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

لعرض البيانات في Azure Data Explorer بمجرد إرسال البنية الأساسية لبرنامج ربط العمليات التجارية، يمكنك تعيين عدد نهج الإرسال في دفعات الاستيعاب إلى 1. لتحرير نهج تجميع الاستيعاب، قم بتشغيل الأمر التالي في علامة تبويب استعلام قاعدة البيانات:

.alter database <your-database-name> policy ingestionbatching
```
{
    "MaximumBatchingTimeSpan" : "00:00:30",
    "MaximumNumberOfItems" : 1,
    "MaximumRawDataSizeMB": 1024
}
```

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

يحدد تكوين JSON لمرحلة وجهة Azure Data Explorer تفاصيل المرحلة. لتأليف المرحلة، يمكنك إما التفاعل مع واجهة المستخدم المستندة إلى النموذج، أو توفير تكوين JSON في علامة التبويب خيارات متقدمة:

الحقل نوع الوصف مطلوبة افتراضي مثال
‏‫اسم العرض‬ السلسلة‬ اسم لإظهاره في واجهة مستخدم معالج البيانات. ‏‏نعم‬ - Azure IoT MQ output
‏‏الوصف السلسلة‬ وصف سهل الاستخدام لما تقوم به المرحلة. لا Write to topic default/topic1
عنوان URL لنظام المجموعة السلسلة‬ URI (هذه القيمة ليست عنوان URI لاستيعاب البيانات). ‏‏نعم‬ -
قاعدة البيانات السلسلة‬ اسم قاعدة البيانات. ‏‏نعم‬ -
جدول السلسلة‬ اسم الجدول للكتابة إليه. ‏‏نعم‬ -
دُفعة الدفعه كيفية تجميع البيانات. لا 60s 10s
إعادة المحاولة إعادة المحاولة نهج إعادة المحاولة لاستخدامه. لا default fixed
المصادقة1 السلسلة‬ تفاصيل المصادقة للاتصال ب Azure Data Explorer. Service principal أو Managed identity كيان الخدمة ‏‏نعم‬ -
اسم الأعمدة > سلسلة اسم العمود. ‏‏نعم‬ temperature
مسار الأعمدة > مسار الموقع داخل كل سجل من البيانات التي يجب قراءة قيمة العمود منها. لا .{{name}} .temperature

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

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

الحقل ‏‏الوصف مطلوب
TenantId معرف المستأجر. ‏‏نعم‬
ClientId معرف التطبيق الذي قمت بتدوينه عند إنشاء كيان الخدمة الذي لديه حق الوصول إلى قاعدة البيانات. ‏‏نعم‬
سر المرجع السري الذي قمت بإنشائه في نظام المجموعة. ‏‏نعم‬

عينة التكوين

يوضح مثال JSON التالي تكوين مرحلة وجهة Azure Data Explorer الكامل الذي يكتب الرسالة بأكملها إلى quickstart الجدول في قاعدة البيانات":

{
    "displayName": "Azure data explorer - 71c308",
    "type": "output/dataexplorer@v1",
    "viewOptions": {
        "position": {
            "x": 0,
            "y": 784
        }
    },
    "clusterUrl": "https://clusterurl.region.kusto.windows.net",
    "database": "databaseName",
    "table": "quickstart",
    "authentication": {
        "type": "servicePrincipal",
        "tenantId": "tenantId",
        "clientId": "clientId",
        "clientSecret": "secretReference"
    },
    "batch": {
        "time": "5s",
        "path": ".payload"
    },
    "columns": [
        {
            "name": "Timestamp",
            "path": ".Timestamp"
        },
        {
            "name": "AssetName",
            "path": ".assetName"
        },
        {
            "name": "Customer",
            "path": ".Customer"
        },
        {
            "name": "Batch",
            "path": ".Batch"
        },
        {
            "name": "CurrentTemperature",
            "path": ".CurrentTemperature"
        },
        {
            "name": "LastKnownTemperature",
            "path": ".LastKnownTemperature"
        },
        {
            "name": "Pressure",
            "path": ".Pressure"
        },
        {
            "name": "IsSpare",
            "path": ".IsSpare"
        }
    ],
    "retry": {
        "type": "fixed",
        "interval": "20s",
        "maxRetries": 4
    }
}

يحدد التكوين ما يلي:

  • يتم تجميع الرسائل في دفعات لمدة 5 ثوان.
  • يستخدم مسار .payload الدفعة لتحديد موقع بيانات الأعمدة.

مثال

يوضح المثال التالي نموذج رسالة إدخال إلى مرحلة وجهة Azure Data Explorer:

{
  "payload": {
    "Batch": 102,
    "CurrentTemperature": 7109,
    "Customer": "Contoso",
    "Equipment": "Boiler",
    "IsSpare": true,
    "LastKnownTemperature": 7109,
    "Location": "Seattle",
    "Pressure": 7109,
    "Timestamp": "2023-08-10T00:54:58.6572007Z",
    "assetName": "oven"
  },
  "qos": 0,
  "systemProperties": {
    "partitionId": 0,
    "partitionKey": "quickstart",
    "timestamp": "2023-11-06T23:42:51.004Z"
  },
  "topic": "quickstart"
}