Mengonfigurasi aliran data di Operasi Azure IoT
Penting
Pratinjau Operasi Azure IoT – diaktifkan oleh Azure Arc saat ini dalam pratinjau. Anda tidak boleh menggunakan perangkat lunak pratinjau ini di lingkungan produksi.
Anda harus menyebarkan penginstalan Azure IoT Operations baru saat rilis yang tersedia secara umum tersedia. Anda tidak akan dapat memutakhirkan penginstalan pratinjau.
Untuk persyaratan hukum yang berlaku untuk fitur Azure yang beta, dalam pratinjau, atau belum dirilis ke ketersediaan umum, lihat Ketentuan Penggunaan Tambahan untuk Pratinjau Microsoft Azure.
Aliran data adalah jalur yang diambil data dari sumber ke tujuan dengan transformasi opsional. Anda dapat mengonfigurasi aliran data dengan membuat sumber daya kustom Aliran Data atau menggunakan portal Azure IoT Operations Studio. Aliran data terdiri dari tiga bagian: sumber, transformasi, dan tujuan.
Untuk menentukan sumber dan tujuan, Anda perlu mengonfigurasi titik akhir aliran data. Transformasi bersifat opsional dan dapat mencakup operasi seperti memperkaya data, memfilter data, dan memetakan data ke bidang lain.
Penting
Setiap aliran data harus memiliki titik akhir default broker MQTT lokal Azure IoT Operations sebagai sumber atau tujuan.
Anda dapat menggunakan pengalaman operasi di Operasi Azure IoT untuk membuat aliran data. Pengalaman operasi menyediakan antarmuka visual untuk mengonfigurasi aliran data. Anda juga dapat menggunakan Bicep untuk membuat aliran data menggunakan file templat Bicep, atau menggunakan Kubernetes untuk membuat aliran data menggunakan file YAML.
Lanjutkan membaca untuk mempelajari cara mengonfigurasi sumber, transformasi, dan tujuan.
Prasyarat
Anda dapat menyebarkan aliran data segera setelah Anda memiliki instans Pratinjau Operasi Azure IoT menggunakan profil aliran data dan titik akhir default. Namun, Anda mungkin ingin mengonfigurasi profil aliran data dan titik akhir untuk menyesuaikan aliran data.
Profil aliran data
Profil aliran data menentukan jumlah instans untuk aliran data di bawahnya untuk digunakan. Jika Anda tidak memerlukan beberapa grup aliran data dengan pengaturan penskalaan yang berbeda, Anda dapat menggunakan profil aliran data default. Untuk mempelajari cara mengonfigurasi profil aliran data, lihat Mengonfigurasi profil aliran data.
Titik akhir aliran data
Titik akhir aliran data diperlukan untuk mengonfigurasi sumber dan tujuan untuk aliran data. Untuk memulai dengan cepat, Anda dapat menggunakan titik akhir aliran data default untuk broker MQTT lokal. Anda juga dapat membuat jenis titik akhir aliran data lainnya seperti Kafka, Event Hubs, atau Azure Data Lake Storage. Untuk mempelajari cara mengonfigurasi setiap jenis titik akhir aliran data, lihat Mengonfigurasi titik akhir aliran data.
Memulai
Setelah memiliki prasyarat, Anda dapat mulai membuat aliran data.
Untuk membuat aliran data dalam pengalaman operasi, pilih Aliran Data>Buat aliran data. Kemudian, Anda akan melihat halaman tempat Anda dapat mengonfigurasi sumber, transformasi, dan tujuan untuk aliran data.
Tinjau bagian berikut untuk mempelajari cara mengonfigurasi jenis operasi aliran data.
Sumber
Untuk mengonfigurasi sumber untuk aliran data, tentukan referensi titik akhir dan daftar sumber data untuk titik akhir.
Menggunakan aset sebagai sumber
Anda dapat menggunakan aset sebagai sumber untuk aliran data. Menggunakan aset sebagai sumber hanya tersedia dalam pengalaman operasi.
Di bawah Detail sumber, pilih Aset.
Pilih aset yang ingin Anda gunakan sebagai titik akhir sumber.
Pilih Lanjutkan.
Daftar titik data untuk aset yang dipilih ditampilkan.
Pilih Terapkan untuk menggunakan aset sebagai titik akhir sumber.
Saat menggunakan aset sebagai sumber, definisi aset digunakan untuk menyimpulkan skema untuk aliran data. Definisi aset mencakup skema untuk titik data aset. Untuk mempelajari selengkapnya, lihat Mengelola konfigurasi aset dari jarak jauh.
Setelah dikonfigurasi, data dari aset mencapai aliran data melalui broker MQTT lokal. Jadi, saat menggunakan aset sebagai sumber, aliran data menggunakan titik akhir default broker MQTT lokal sebagai sumber dalam aktualitas.
Gunakan titik akhir MQTT default sebagai sumber
Di bawah Detail sumber, pilih MQTT.
Masukkan pengaturan berikut untuk sumber MQTT:
Pengaturan Deskripsi Topik MQTT Filter topik MQTT untuk berlangganan pesan masuk. Lihat Mengonfigurasi topik MQTT atau Kafka. Skema pesan Skema yang digunakan untuk mendeserialisasi pesan masuk. Lihat Menentukan skema untuk mendeserialisasi data. Pilih Terapkan.
Jika titik akhir default tidak digunakan sebagai sumber, titik akhir harus digunakan sebagai tujuan. Untuk mempelajari selengkapnya, lihat Aliran data harus menggunakan titik akhir broker MQTT lokal.
Menggunakan titik akhir aliran data MQTT atau Kafka kustom sebagai sumber
Jika Anda membuat titik akhir aliran data MQTT atau Kafka kustom (misalnya, untuk digunakan dengan Event Grid atau Event Hubs), Anda dapat menggunakannya sebagai sumber untuk aliran data. Ingat bahwa titik akhir jenis penyimpanan, seperti Data Lake atau Fabric OneLake, tidak dapat digunakan sebagai sumber.
Untuk mengonfigurasi, gunakan Kubernetes YAML atau Bicep. Ganti nilai tempat penampung dengan nama dan topik titik akhir kustom Anda.
Menggunakan titik akhir MQTT atau Kafka kustom sebagai sumber saat ini tidak didukung dalam pengalaman operasi.
Mengonfigurasi sumber data (topik MQTT atau Kafka)
Anda dapat menentukan beberapa topik MQTT atau Kafka dalam sumber tanpa perlu mengubah konfigurasi titik akhir aliran data. Fleksibilitas ini berarti titik akhir yang sama dapat digunakan kembali di beberapa aliran data, bahkan jika topik bervariasi. Untuk informasi selengkapnya, lihat Menggunakan kembali titik akhir aliran data.
Topik MQTT
Saat sumber adalah titik akhir MQTT (Disertakan Event Grid), Anda dapat menggunakan filter topik MQTT untuk berlangganan pesan masuk. Filter topik dapat menyertakan kartubebas untuk berlangganan beberapa topik. Misalnya, thermostats/+/telemetry/temperature/#
berlangganan semua pesan telemetri suhu dari termostat. Untuk mengonfigurasi filter topik MQTT:
Dalam operasi mengalami detail Sumber aliran data, pilih MQTT, lalu gunakan bidang topik MQTT untuk menentukan filter topik MQTT untuk berlangganan pesan masuk.
Catatan
Hanya satu filter topik MQTT yang dapat ditentukan dalam pengalaman operasi. Untuk menggunakan beberapa filter topik MQTT, gunakan Bicep atau Kubernetes.
Langganan bersama
Untuk menggunakan langganan bersama dengan sumber MQTT, Anda dapat menentukan topik langganan bersama dalam bentuk $shared/<GROUP_NAME>/<TOPIC_FILTER>
.
Dalam operasi mengalami detail Sumber aliran data, pilih MQTT dan gunakan bidang topik MQTT untuk menentukan grup langganan dan topik bersama.
Jika jumlah instans di profil aliran data lebih besar dari 1, langganan bersama secara otomatis diaktifkan untuk semua aliran data yang menggunakan sumber MQTT. Dalam hal ini, awalan $shared
ditambahkan dan nama grup langganan bersama dibuat secara otomatis. Misalnya, jika Anda memiliki profil aliran data dengan jumlah instans 3, dan aliran data Anda menggunakan titik akhir MQTT sebagai sumber yang dikonfigurasi dengan topik topic1
dan topic2
, mereka secara otomatis dikonversi ke langganan bersama sebagai $shared/<GENERATED_GROUP_NAME>/topic1
dan $shared/<GENERATED_GROUP_NAME>/topic2
. Jika Anda ingin menggunakan ID grup langganan bersama yang berbeda, Anda dapat mengambil alihnya dalam topik, seperti $shared/mygroup/topic1
.
Penting
Aliran data yang memerlukan langganan bersama saat jumlah instans lebih besar dari 1 penting saat menggunakan broker Azure Event Grid MQTT sebagai sumber karena tidak mendukung langganan bersama. Untuk menghindari pesan yang hilang, atur jumlah instans profil aliran data ke 1 saat menggunakan broker MQTT Event Grid sebagai sumbernya. Yaitu ketika aliran data adalah pelanggan dan menerima pesan dari cloud.
Topi Kafka
Ketika sumbernya adalah titik akhir Kafka (Azure Event Hubs included), tentukan topik kafka individual untuk berlangganan pesan masuk. Kartubebas tidak didukung, jadi Anda harus menentukan setiap topik secara statis.
Catatan
Saat menggunakan Azure Event Hubs melalui titik akhir Kafka, setiap hub peristiwa individual dalam namespace adalah topik Kafka. Misalnya, jika Anda memiliki namespace Layanan Pusat Aktivitas dengan dua hub peristiwa, thermostats
dan humidifiers
, Anda dapat menentukan setiap hub peristiwa sebagai topik Kafka.
Untuk mengonfigurasi topik Kafka:
Menggunakan titik akhir Kafka sebagai sumber saat ini tidak didukung dalam pengalaman operasi.
Tentukan skema untuk mendeserialisasi data
Jika data sumber memiliki bidang atau bidang opsional dengan jenis yang berbeda, tentukan skema deserialisasi untuk memastikan konsistensi. Misalnya, data mungkin memiliki bidang yang tidak ada di semua pesan. Tanpa skema, transformasi tidak dapat menangani bidang ini karena akan memiliki nilai kosong. Dengan skema, Anda dapat menentukan nilai default atau mengabaikan bidang.
Menentukan skema hanya relevan saat menggunakan sumber MQTT atau Kafka. Jika sumber adalah aset, skema secara otomatis disimpulkan dari definisi aset.
Untuk mengonfigurasi skema yang digunakan untuk mendeserialisasi pesan masuk dari sumber:
Dalam operasi mengalami detail Sumber aliran data, pilih MQTT dan gunakan bidang Skema pesan untuk menentukan skema. Anda dapat menggunakan tombol Unggah untuk mengunggah file skema terlebih dahulu. Untuk mempelajari selengkapnya, lihat Memahami skema pesan.
Transformasi
Operasi transformasi adalah tempat Anda dapat mengubah data dari sumber sebelum mengirimkannya ke tujuan. Transformasi bersifat opsional. Jika Anda tidak perlu membuat perubahan pada data, jangan sertakan operasi transformasi dalam konfigurasi aliran data. Beberapa transformasi dirantai bersama-sama secara bertahap terlepas dari urutan yang ditentukan dalam konfigurasi. Urutan tahapan selalu:
- Memperkaya, Mengganti Nama, atau menambahkan properti Baru: Tambahkan data tambahan ke data sumber yang diberi himpunan data dan kondisi yang cocok.
- Filter: Memfilter data berdasarkan kondisi.
- Peta atau Komputasi: Memindahkan data dari satu bidang ke bidang lainnya dengan konversi opsional.
Dalam pengalaman operasi, pilih Aliran Data>Tambahkan transformasi (opsional).
Pengayaan: Menambahkan data referensi
Untuk memperkaya data, Anda dapat menggunakan himpunan data referensi di penyimpanan status terdistribusi (DSS) Azure IoT Operations. Himpunan data digunakan untuk menambahkan data tambahan ke data sumber berdasarkan kondisi. Kondisi ditentukan sebagai bidang dalam data sumber yang cocok dengan bidang dalam himpunan data.
Anda dapat memuat data sampel ke DSS dengan menggunakan sampel alat set DSS. Nama kunci di penyimpanan status terdistribusi sesuai dengan himpunan data dalam konfigurasi aliran data.
Dalam pengalaman operasi, tahap Pengayaan saat ini didukung menggunakan transformasi properti Ganti Nama dan Baru.
Dalam pengalaman operasi, pilih aliran data lalu Tambahkan transformasi (opsional).
Pilih Ganti Nama atau Transformasi properti baru lalu pilih Tambahkan.
Jika himpunan data memiliki rekaman dengan asset
bidang , mirip dengan:
{
"asset": "thermostat1",
"location": "room1",
"manufacturer": "Contoso"
}
Data dari sumber dengan pencocokan deviceId
thermostat1
bidang memiliki location
bidang dan manufacturer
yang tersedia dalam tahap filter dan peta.
Untuk informasi selengkapnya tentang sintaks kondisi, lihat Memperkaya data dengan menggunakan aliran data dan Mengonversi data menggunakan aliran data.
Filter: Memfilter data berdasarkan kondisi
Untuk memfilter data pada kondisi, Anda dapat menggunakan tahapan filter
. Kondisi ditentukan sebagai bidang dalam data sumber yang cocok dengan nilai.
Di bawah Transformasi (opsional), pilih Filter>Tambahkan.
Pilih titik data untuk disertakan dalam himpunan data.
Tambahkan kondisi dan deskripsi filter.
Pilih Terapkan.
Misalnya, Anda dapat menggunakan kondisi filter seperti temperature > 20
memfilter data kurang dari atau sama dengan 20 berdasarkan bidang suhu.
Peta: Memindahkan data dari satu bidang ke bidang lainnya
Untuk memetakan data ke bidang lain dengan konversi opsional, Anda dapat menggunakan operasi.map
Konversi ditentukan sebagai rumus yang menggunakan bidang dalam data sumber.
Dalam pengalaman operasi, pemetaan saat ini didukung menggunakan transformasi Komputasi .
Di bawah Transformasi (opsional), pilih Tambahkan Komputasi>.
Masukkan bidang dan ekspresi yang diperlukan.
Pilih Terapkan.
Untuk mempelajari selengkapnya, lihat Memetakan data dengan menggunakan aliran data dan Mengonversi data dengan menggunakan aliran data.
Menserialisasikan data sesuai dengan skema
Jika Anda ingin membuat serialisasi data sebelum mengirimkannya ke tujuan, Anda perlu menentukan format skema dan serialisasi. Jika tidak, data diserialisasikan di JSON dengan jenis yang disimpulkan. Titik akhir penyimpanan seperti Microsoft Fabric atau Azure Data Lake memerlukan skema untuk memastikan konsistensi data. Format serialisasi yang didukung adalah Parquet dan Delta.
Saat ini, menentukan skema output dan serialisasi tidak didukung dalam pengalaman operasi.
Untuk informasi selengkapnya tentang registri skema, lihat Memahami skema pesan.
Tujuan
Untuk mengonfigurasi tujuan untuk aliran data, tentukan referensi titik akhir dan tujuan data. Anda dapat menentukan daftar tujuan data untuk titik akhir.
Untuk mengirim data ke tujuan selain broker MQTT lokal, buat titik akhir aliran data. Untuk mempelajari caranya, lihat Mengonfigurasi titik akhir aliran data. Jika tujuan bukan broker MQTT lokal, tujuan harus digunakan sebagai sumber. Untuk mempelajari selengkapnya, lihat Aliran data harus menggunakan titik akhir broker MQTT lokal.
Penting
Titik akhir penyimpanan memerlukan referensi skema. Jika Anda telah membuat titik akhir tujuan penyimpanan untuk Microsoft Fabric OneLake, ADLS Gen 2, Azure Data Explorer, dan Penyimpanan Lokal, Anda harus menentukan referensi skema.
Pilih titik akhir aliran data untuk digunakan sebagai tujuan.
Pilih Lanjutkan untuk mengonfigurasi tujuan.
Masukkan pengaturan yang diperlukan untuk tujuan, termasuk topik atau tabel untuk mengirim data. Lihat Mengonfigurasi tujuan data (topik, kontainer, atau tabel) untuk informasi selengkapnya.
Mengonfigurasi tujuan data (topik, kontainer, atau tabel)
Mirip dengan sumber data, tujuan data adalah konsep yang digunakan untuk menjaga titik akhir aliran data dapat digunakan kembali di beberapa aliran data. Pada dasarnya, ini mewakili subdirektori dalam konfigurasi titik akhir aliran data. Misalnya, jika titik akhir aliran data adalah titik akhir penyimpanan, tujuan data adalah tabel di akun penyimpanan. Jika titik akhir aliran data adalah titik akhir Kafka, tujuan data adalah topik Kafka.
Jenis titik akhir | Arti tujuan data | Deskripsi |
---|---|---|
MQTT (atau Event Grid) | Topik | Topik MQTT tempat data dikirim. Hanya topik statis yang didukung, tidak ada kartubebas. |
Kafka (atau Event Hubs) | Topik | Topik Kafka tempat data dikirim. Hanya topik statis yang didukung, tidak ada kartubebas. Jika titik akhir adalah namespace Layanan Pusat Aktivitas, tujuan data adalah hub peristiwa individual dalam namespace layanan. |
Azure Data Lake Storage | Kontainer | Kontainer di akun penyimpanan. Bukan meja. |
Microsoft Fabric OneLake | Tabel atau Folder | Sesuai dengan jenis jalur yang dikonfigurasi untuk titik akhir. |
Azure Data Explorer | Tabel | Tabel dalam database Azure Data Explorer. |
Penyimpanan Lokal | Folder | Nama folder atau direktori di pemasangan volume persisten penyimpanan lokal. Saat menggunakan Azure Container Storage yang diaktifkan oleh Azure Arc Cloud Ingest Edge Volumes, ini harus cocok dengan spec.path parameter untuk subvolume yang Anda buat. |
Untuk mengonfigurasi tujuan data:
Saat menggunakan pengalaman operasi, bidang tujuan data secara otomatis ditafsirkan berdasarkan jenis titik akhir. Misalnya, jika titik akhir aliran data adalah titik akhir penyimpanan, halaman detail tujuan meminta Anda untuk memasukkan nama kontainer. Jika titik akhir aliran data adalah titik akhir MQTT, halaman detail tujuan meminta Anda untuk memasukkan topik, dan sebagainya.
Contoh
Contoh berikut adalah konfigurasi aliran data yang menggunakan titik akhir MQTT untuk sumber dan tujuan. Sumber memfilter data dari topik azure-iot-operations/data/thermostat
MQTT . Transformasi mengonversi suhu ke Fahrenheit dan memfilter data di mana suhu dikalikan dengan kelembaban kurang dari 100000. Tujuan mengirimkan data ke topik factory
MQTT .
Lihat tab Bicep atau Kubernetes untuk contoh konfigurasi.
Untuk melihat contoh konfigurasi aliran data lainnya, lihat Azure REST API - Aliran Data dan mulai cepat Bicep.
Memverifikasi aliran data berfungsi
Ikuti Tutorial: Jembatan MQTT dua arah ke Azure Event Grid untuk memverifikasi aliran data berfungsi.
Mengekspor konfigurasi aliran data
Untuk mengekspor konfigurasi aliran data, Anda dapat menggunakan pengalaman operasi atau dengan mengekspor sumber daya kustom Aliran Data.
Pilih aliran data yang ingin Anda ekspor dan pilih Ekspor dari toolbar.
Konfigurasi aliran data yang tepat
Untuk memastikan aliran data berfungsi seperti yang diharapkan, verifikasi hal berikut:
- Titik akhir aliran data MQTT default harus digunakan sebagai sumber atau tujuan.
- Profil aliran data ada dan dirujuk dalam konfigurasi aliran data.
- Sumber adalah titik akhir MQTT, titik akhir Kafka, atau aset. Titik akhir jenis penyimpanan tidak dapat digunakan sebagai sumber.
- Saat menggunakan Event Grid sebagai sumbernya, jumlah instans profil aliran data diatur ke 1 karena broker Azure Event Grid MQTT tidak mendukung langganan bersama.
- Saat menggunakan Azure Event Hubs sebagai sumbernya, setiap hub peristiwa di namespace adalah topik Kafka terpisah dan harus ditentukan sebagai sumber data.
- Transformasi, jika digunakan, dikonfigurasi dengan sintaks yang tepat, termasuk pelepasan karakter khusus yang tepat.
- Saat menggunakan titik akhir jenis penyimpanan sebagai tujuan, skema ditentukan.