Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
✅Eventstream prostředků infrastruktury Azure Stream Analytics ✅
Dotazuje vstupní data pro konkrétní vlastnosti. Existují tři typy vlastností: Adapter, User a Unique EventId.
Vlastnosti metadat adaptéru
Některé vlastnosti specifické pro vstup jsou přístupné funkcí GetMetadataPropertyValue. Kromě toho lze ke všem vlastnostem přistupovat jako k jednomu záznamu.
Poznámka:
V tuto chvíli nejde tuto funkci otestovat na webu Azure Portal (vrátí prázdné výsledky). K otestování této funkce v dotazu pomocí živých dat můžete použít rozšíření ASA pro Visual Studio Code.
Výchozí vlastnosti metadat pro službu Event Hubs
- Čas zařazení události podle UTC
- Čas zpracování události v UTC
- Identifikátor oddílu
- Ofset
- Sekvenční číslo
- PartitionKey
- Publisher, pokud je k dispozici v příchozí události
Příklady:
Načtení eventEnqueuedUtcTime ze služby Event Hubs:
SELECT GetMetadataPropertyValue(ehInput, '[EventHub].[EventEnqueuedUtcTime]') AS mytime FROM ehInput
Dotazování všech možných vlastností souvisejících s adaptéry jako záznamu:
SELECT GetMetadataPropertyValue(ehInput, 'EventHub') AS myEHPropertiesRecord FROM ehInput
Vlastnosti služby IoT Hub při směrování do koncových bodů služby Event Hubs
Při použití funkce směrování služby IoT Hub do koncových bodů služby Event Hubs budou vlastnosti metadat k dispozici čtením vlastností ze služby Event Hubs. V tomto případě se dají načíst následující vlastnosti:
- IoTConnectionDeviceId
- IoTAuthMethod
- IoTAuthGenerationId
- IoTEnqueueTime
- IoTMessageSource
- IoTConnectionModuleId
- IoTInterfaceName
Příklad: SELECT GetMetadataPropertyValue(ehInput, '[EventHub].[IoTConnectionDeviceId]') AS myIoTDeviceId FROM ehInput
Vlastnosti přidané prostřednictvím rozšiřování zpráv ioT Hubu je možné načíst prostřednictvím vlastností uživatele.
Výchozí vlastnosti metadat pro IoT Hub
ConnectionDeviceId
AuthMethod
AuthGenerationId
EnqueueTime
MessageSource
ConnectionModuleId
InterfaceName
Identifikátor korelace
ID zprávy
ConnectionDeviceGenerationId
Příklady:
Načtení enqueuedTime ze služby IoT Hub:
SELECT GetMetadataPropertyValue(iotInput, 'IoTHub.EnqueuedTime') AS myEnqueuedTime FROM iotInput
Dotazování všech možných vlastností souvisejících s adaptéry jako záznamu:
SELECT GetMetadataPropertyValue(iotInput, 'IoTHub') AS iotRecord FROM iotInput
Výchozí vlastnosti metadat pro vstup objektu blob:
- Název objektu blob
- BlobLastModifiedUtcTime
- Identifikátor oddílu
Příklad: SELECT GetMetadataPropertyValue(blobInput, 'BlobName') AS myBlobName FROM blobInput
Uživatelské vlastnosti
Vlastní vlastnost uživatele s názvem SenderClientId nastavená na příchozích zprávách EventHub, IoT/Blob je přístupná pomocí Rutiny GetMetadataPropertyValue, jak je znázorněno v příkladu níže.
Kromě toho lze vlastnosti dvojčete a rozšířené vlastnosti přidané pomocí rozšíření zpráv IoT Hubu načíst také pomocí GetMetadataPropertyValue.
Příklady
Dotazování ze vstupu centra událostí:
SELECT Name, GetMetadataPropertyValue(ehInput, '[User].[SenderClientId]') FROM ehInput
Dotazování ze vstupu ioT Hubu:
SELECT Name, GetMetadataPropertyValue(iotInput, '[User].[SenderClientId]') FROM iotInput
Dotazování ze vstupu objektu blob:
SELECT Name, GetMetadataPropertyValue(blobInput, '[User].[SenderClientId]') FROM blobInput
Pokud chcete získat všechny vlastnosti uživatele jako záznam,
Pro centrum událostí:
SELECT Name, GetMetadataPropertyValue(ehInput, '[User]') AS userprops FROM ehInput
Pro IoT Hub:
SELECT Name, GetMetadataPropertyValue(iotInput, '[User]') AS userprops FROM iotInput
Pro vstup objektu blob:
SELECT Name, GetMetadataPropertyValue(blobInput, '[User]') AS userprops FROM blobInput
Jedinečná vlastnost EventId
Vlastnost EventId vytvoří jedinečné ID (GUID) pro vstupní událost, což může být užitečné pro účely primárního klíče. Id události je konzistentní (ne náhodné); Pokud se vrátíte včas a znovu přečtete stejnou vstupní událost, Stream Analytics vytvoří stejné ID.
Příklad
SELECT GetMetadataPropertyValue(ehInput, 'EventId') AS eventPrimaryKey FROM ehInput
Limitace a omezení
GetMetadataPropertyValue má následující omezení použití:
Použití
SELECT *v dotazu způsobí duplicitní sloupce. Pokud chcete zabránit duplicitním sloupcům, vypište sloupce jednotlivě v příkazu SELECT.Alias, který udělíte hodnotě vlastnosti metadat, bude malými písmeny bez ohledu na velikost písmen použitá v dotazu. Například
SELECT GetMetadataPropertyValue(ehInput, 'EventId') AS eventPrimaryKeyvýstupy jakoeventprimarykey. Pokud chcete zachovat velikost skříně, použijte úroveň kompatibility 1.2.Tato funkce nefunguje v podokně výsledků náhledu webu Azure Portal, včetně funkcí testovacích dotazů.
Před příchodem dat do ASA přejmenujte origiální datová část. Název pole datové části se přepíše, pokud je stejný jako název pole systémových metadat.
Id zprávy a ID korelace metadat událostí EventHubu nejsou podporovány.