Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
✅ Azure Stream Analytics ✅ Fabric Eventstream
Kueri memasukkan data untuk properti tertentu. Ada tiga jenis properti: Adapter, Pengguna, dan EventId Unik.
Properti metadata adaptor
Properti khusus input tertentu dapat diakses oleh fungsi GetMetadataPropertyValue. Selain itu, semua properti dapat diakses sebagai satu rekaman.
Nota
Saat ini, fungsi ini tidak dapat diuji di portal Microsoft Azure (fungsi ini akan mengembalikan hasil kosong). Anda dapat menggunakan ekstensi ASA untuk Visual Studio Code untuk menguji fungsi ini dalam kueri Anda menggunakan data langsung.
Properti metadata default untuk Azure Event Hubs
- EventEnqueuedUtcTime
- EventProcessedUtcTime
- PartitionId
- Offset
- Nomor Urut
- PartitionKey
- Publisher, jika tersedia dalam peristiwa masuk
Contoh:
Ambil EventEnqueuedUtcTime dari Azure Event Hubs:
SELECT GetMetadataPropertyValue(ehInput, '[EventHub].[EventEnqueuedUtcTime]') AS mytime FROM ehInput
Untuk mengkueri semua properti terkait adaptor yang mungkin sebagai rekaman:
SELECT GetMetadataPropertyValue(ehInput, 'EventHub') AS myEHPropertiesRecord FROM ehInput
Properti IoT Hub saat dirutekan ke titik akhir Azure Event Hubs
Saat menggunakan fitur perutean IoT Hub ke titik akhir Azure Event Hubs, properti metadata akan tersedia dengan membaca properti dari Azure Event Hubs. Dalam hal ini properti berikut yang dapat diambil:
- IoTConnectionDeviceId
- IoTAuthMethod
- IoTAuthGenerationId
- IoTEnqueueTime
- IoTMessageSource
- IoTConnectionModuleId
- IoTInterfaceName
Contoh: SELECT GetMetadataPropertyValue(ehInput, '[EventHub].[IoTConnectionDeviceId]') AS myIoTDeviceId FROM ehInput
Properti yang ditambahkan melalui pengayaan pesan IoT Hub dapat diambil melalui properti pengguna.
Properti metadata default untuk IoT Hub
ConnectionDeviceId
AuthMethod
AuthGenerationId
EnqueueTime
MessageSource
ConnectionModuleId
InterfaceName
CorrelationId
ID Pesan
ConnectionDeviceGenerationId
Contoh:
Ambil EnqueuedTime dari IoT Hub:
SELECT GetMetadataPropertyValue(iotInput, 'IoTHub.EnqueuedTime') AS myEnqueuedTime FROM iotInput
Untuk mengkueri semua properti terkait adaptor yang mungkin sebagai rekaman:
SELECT GetMetadataPropertyValue(iotInput, 'IoTHub') AS iotRecord FROM iotInput
Properti metadata default untuk input Blob:
- BlobName
- BlobLastModifiedUtcTime
- PartitionId
Contoh SELECT GetMetadataPropertyValue(blobInput, 'BlobName') AS myBlobName FROM blobInput
Properti pengguna
Properti pengguna kustom yang disebut SenderClientId yang diatur pada pesan EventHub/IoT/Blob masuk dibuat dapat diakses menggunakan GetMetadataPropertyValue, seperti yang ditunjukkan pada contoh di bawah ini.
Selain itu, properti kembar dan properti yang diperkaya yang ditambahkan menggunakan pengayaan pesan IoT Hub, juga dapat diambil menggunakan GetMetadataPropertyValue.
Contoh
Untuk mengkueri dari input Pusat Aktivitas,
SELECT Name, GetMetadataPropertyValue(ehInput, '[User].[SenderClientId]') FROM ehInput
Untuk mengkueri dari input IoT Hub,
SELECT Name, GetMetadataPropertyValue(iotInput, '[User].[SenderClientId]') FROM iotInput
Untuk mengkueri dari input Blob,
SELECT Name, GetMetadataPropertyValue(blobInput, '[User].[SenderClientId]') FROM blobInput
Untuk mendapatkan semua properti pengguna sebagai rekaman,
Untuk Pusat Aktivitas:
SELECT Name, GetMetadataPropertyValue(ehInput, '[User]') AS userprops FROM ehInput
Untuk IoT Hub:
SELECT Name, GetMetadataPropertyValue(iotInput, '[User]') AS userprops FROM iotInput
Untuk input Blob:
SELECT Name, GetMetadataPropertyValue(blobInput, '[User]') AS userprops FROM blobInput
Properti EventId unik
Properti EventId membuat ID unik (Guid) untuk peristiwa input, yang dapat berguna untuk tujuan kunci utama. EventId konsisten (tidak acak); jika Anda kembali ke waktu dan membaca ulang peristiwa input yang sama, Azure Stream Analytics akan menghasilkan ID yang sama.
Contoh
SELECT GetMetadataPropertyValue(ehInput, 'EventId') AS eventPrimaryKey FROM ehInput
Batasan dan Pembatasan
GetMetadataPropertyValue memiliki batasan penggunaan berikut:
Menggunakan
SELECT *dalam kueri Anda menyebabkan kolom duplikat. Untuk mencegah kolom duplikat, cantumkan kolom satu per satu dalam pernyataan SELECT Anda.Alias yang Anda berikan pada Nilai Properti Metadata Anda akan menjadi huruf kecil terlepas dari casing yang digunakan dalam kueri Anda. Misalnya,
SELECT GetMetadataPropertyValue(ehInput, 'EventId') AS eventPrimaryKeyoutput sebagaieventprimarykey. Untuk mempertahankan casing, gunakan tingkat kompatibilitas 1.2.Fungsi ini tidak berfungsi di panel hasil pratinjau portal Microsoft Azure, termasuk fungsi kueri pengujian.
Ganti nama bidang payload origial sebelum data tiba di ASA. Nama bidang payload akan ditimpa jika sama dengan nama bidang metadata sistem.
MessageId dan CorrelationId metadata peristiwa EventHub tidak didukung.