Mengirim data ke Microsoft Fabric dari alur Pemroses Data

Penting

Pratinjau Operasi Azure IoT – diaktifkan oleh Azure Arc saat ini dalam PRATINJAU. Anda tidak boleh menggunakan perangkat lunak pratinjau ini di lingkungan produksi.

Lihat Ketentuan Penggunaan Tambahan untuk Pratinjau Microsoft Azure untuk persyaratan hukum yang berlaku pada fitur Azure dalam versi beta, pratinjau, atau belum dirilis secara umum.

Gunakan tujuan Fabric Lakehouse untuk menulis data ke lakehouse di Microsoft Fabric dari alur Pratinjau Prosesor Data Azure IoT. Tahap tujuan menulis file parket ke lakehouse yang memungkinkan Anda melihat data dalam tabel delta. Tahap tujuan membuat batch pesan sebelum mengirimkannya ke Microsoft Fabric.

Prasyarat

Untuk mengonfigurasi dan menggunakan tahap alur tujuan Microsoft Fabric, Anda memerlukan:

Menyiapkan Microsoft Fabric

Sebelum Anda dapat menulis ke Microsoft Fabric dari alur data, Anda perlu memberikan akses ke lakehouse dari alur. Anda dapat menggunakan perwakilan layanan atau identitas terkelola untuk mengautentikasi alur. Keuntungan menggunakan identitas terkelola adalah Anda tidak perlu mengelola siklus hidup perwakilan layanan. Identitas terkelola dikelola secara otomatis oleh Azure dan terkait dengan siklus hidup sumber daya yang ditetapkannya.

Sebelum Anda mengonfigurasi perwakilan layanan atau akses identitas terkelola ke lakehouse, aktifkan autentikasi perwakilan layanan.

Untuk membuat perwakilan layanan dengan rahasia klien:

  1. Gunakan perintah Azure CLI berikut untuk membuat perwakilan layanan.

    az ad sp create-for-rbac --name <YOUR_SP_NAME> 
    
  2. Output dari perintah ini mencakup appId, , displayName, passworddan tenant. Catat nilai-nilai ini untuk digunakan saat Anda mengonfigurasi akses ke sumber daya cloud Anda seperti Microsoft Fabric, membuat rahasia, dan mengonfigurasi tujuan alur:

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

Untuk menambahkan perwakilan layanan ke ruang kerja Microsoft Fabric Anda:

  1. Catat ID ruang kerja dan ID lakehouse Anda. Anda dapat menemukan nilai-nilai ini di URL yang Anda gunakan untuk mengakses lakehouse Anda:

    https://msit.powerbi.com/groups/<your workspace ID>/lakehouses/<your lakehouse ID>?experience=data-engineering

  2. Di ruang kerja Anda, pilih Kelola akses:

    Cuplikan layar yang memperlihatkan cara menemukan tautan Kelola akses.

  3. Pilih Tambahkan orang atau grup:

    Cuplikan layar yang memperlihatkan cara menambahkan pengguna.

  4. Cari perwakilan layanan Anda berdasarkan nama. Mulai ketik untuk melihat daftar perwakilan layanan yang cocok. Pilih perwakilan layanan yang Anda buat sebelumnya:

    Cuplikan layar yang memperlihatkan cara menambahkan perwakilan layanan.

  5. Berikan akses admin perwakilan layanan Anda ke ruang kerja.

Mengonfigurasi rahasia Anda

Agar tahap tujuan tersambung ke Microsoft Fabric, perlu akses ke rahasia yang berisi detail autentikasi. Untuk membuat rahasia:

  1. Gunakan perintah berikut untuk menambahkan rahasia ke Azure Key Vault yang berisi rahasia klien yang Anda catat saat membuat perwakilan layanan:

    az keyvault secret set --vault-name <your-key-vault-name> --name AccessFabricSecret --value <client-secret>
    
  2. Tambahkan referensi rahasia ke kluster Kubernetes Anda dengan mengikuti langkah-langkah dalam Mengelola rahasia untuk penyebaran Pratinjau Operasi Azure IoT Anda.

Mengonfigurasi tahap tujuan

Konfigurasi JSON tahap tujuan Fabric Lakehouse mendefinisikan detail tahapan. Untuk menulis tahapan, Anda dapat berinteraksi dengan UI berbasis formulir, atau menyediakan konfigurasi JSON pada tab Tingkat Lanjut :

Bidang Jenis Deskripsi Wajib diisi Default Contoh
Nama tampilan String Nama yang akan ditampilkan di UI Pemroses Data. Ya - Azure IoT MQ output
Deskripsi String Deskripsi yang mudah digunakan tentang apa yang dilakukan panggung. No Write to topic default/topic1
WorkspaceId String ID ruang kerja lakehouse. Ya -
LakehouseId String Identitas Lakehouse Lakehouse. Ya -
Tabel String Nama tabel yang akan ditulis. Ya -
Jalur file1 Templat Jalur file tempat menulis file parkel. No {{{instanceId}}}/{{{pipelineId}}}/{{{partitionId}}}/{{{YYYY}}}/{{{MM}}}/{{{DD}}}/{{{HH}}}/{{{mm}}}/{{{fileNumber}}}
Batch2 Batch Cara membuat batch data. No 60s 10s
Autentikasi4 String Detail autentikasi untuk menyambungkan ke Azure Data Explorer. Service principal atau Managed identity Perwakilan layanan Ya -
Coba lagi Coba lagi Kebijakan coba lagi untuk digunakan. No default fixed
> Nama Kolom string Nama kolom. Ya temperature
> Kolom Tipe3 enum string Jenis data yang disimpan di kolom, menggunakan salah satu jenis primitif Delta. Ya integer
> Jalur Kolom Jalur Lokasi dalam setiap rekaman data dari tempat membaca nilai kolom. No .{{name}} .temperature

1Jalur file: Untuk menulis file ke Microsoft Fabric, Anda memerlukan jalur file. Anda dapat menggunakan templat untuk mengonfigurasi jalur file. Jalur file harus berisi komponen berikut dalam urutan apa pun:

  • instanceId
  • pipelineId
  • partitionId
  • YYYY
  • MM
  • DD
  • HH
  • mm
  • fileNumber

Nama file adalah nilai bilangan bulat inkremental seperti yang ditunjukkan oleh fileNumber. Pastikan untuk menyertakan ekstensi file jika Anda ingin sistem Anda mengenali jenis file.

2Batching: Batching adalah wajib saat Anda menulis data ke Microsoft Fabric. Tahap tujuan membuat batch pesan selama interval waktu yang dapat dikonfigurasi.

Jika Anda tidak mengonfigurasi interval batching, tahap menggunakan 60 detik sebagai default.

3Jenis: Prosesor data menulis ke Microsoft Fabric dengan menggunakan format delta. Prosesor data mendukung semua jenis data primitif delta kecuali dan timestamp without time zonedecimal .

Untuk memastikan semua tanggal dan waktu diwakili dengan benar di Microsoft Fabric, pastikan nilai properti adalah string RFC 3339 yang valid dan bahwa jenis data adalah date atau timestamp.

1Autentikasi: Saat ini, tahap tujuan mendukung autentikasi berbasis perwakilan layanan atau identitas terkelola saat terhubung ke Microsoft Fabric.

Autentikasi berbasis perwakilan layanan

Untuk mengonfigurasi autentikasi berbasis perwakilan layanan, berikan nilai berikut. Anda membuat catatan nilai-nilai ini saat membuat perwakilan layanan dan menambahkan referensi rahasia ke kluster Anda.

Bidang Deskripsi Wajib diisi
TenantId ID penyewa. Ya
ClientId ID aplikasi yang Anda catat saat membuat perwakilan layanan yang memiliki akses ke database. Ya
Rahasia Referensi rahasia yang Anda buat di kluster Anda. Ya

Konfigurasi sampel

Contoh JSON berikut menunjukkan konfigurasi tahap tujuan microsoft Fabric lakehouse lengkap yang menulis seluruh pesan ke quickstart tabel dalam database':

{
    "displayName": "Fabric Lakehouse - 520f54",
    "type": "output/fabric@v1",
    "viewOptions": {
        "position": {
            "x": 0,
            "y": 784
        }
    },
    "workspace": "workspaceId",
    "lakehouse": "lakehouseId",
    "table": "quickstart",
    "columns": [
        {
            "name": "Timestamp",
            "type": "timestamp",
            "path": ".Timestamp"
        },
        {
            "name": "AssetName",
            "type": "string",
            "path": ".assetname"
        },
        {
            "name": "Customer",
            "type": "string",
            "path": ".Customer"
        },
        {
            "name": "Batch",
            "type": "integer",
            "path": ".Batch"
        },
        {
            "name": "CurrentTemperature",
            "type": "float",
            "path": ".CurrentTemperature"
        },
        {
            "name": "LastKnownTemperature",
            "type": "float",
            "path": ".LastKnownTemperature"
        },
        {
            "name": "Pressure",
            "type": "float",
            "path": ".Pressure"
        },
        {
            "name": "IsSpare",
            "type": "boolean",
            "path": ".IsSpare"
        }
    ],
    "authentication": {
        "type": "servicePrincipal",
        "tenantId": "tenantId",
        "clientId": "clientId",
        "clientSecret": "secretReference"
    },
    "batch": {
        "time": "5s",
        "path": ".payload"
    },
    "retry": {
        "type": "fixed",
        "interval": "20s",
        "maxRetries": 4
    }
}

Konfigurasi menentukan bahwa:

  • Pesan di-batch selama 5 detik.
  • Menggunakan jalur .payload batch untuk menemukan data untuk kolom.

Contoh

Contoh berikut menunjukkan contoh pesan input ke tahap tujuan Microsoft Fabric lakehouse:

{
  "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"
}