Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
✅ Azure Stream Analytics ✅ Fabric Eventstream
Fragt Eingabedaten für bestimmte Eigenschaften ab. Es gibt drei Arten von Eigenschaften: Adapter, Benutzer und Unique EventId.
Adaptermetadateneigenschaften
Auf bestimmte eingabespezifische Eigenschaften kann über die GetMetadataPropertyValue-Funktion zugegriffen werden. Darüber hinaus können alle Eigenschaften als einzelner Datensatz aufgerufen werden.
Hinweis
Zu diesem Zeitpunkt kann diese Funktion nicht im Azure-Portal getestet werden (es gibt leere Ergebnisse zurück). Sie können die ASA-Erweiterung für Visual Studio Code verwenden, um diese Funktion in Ihrer Abfrage mithilfe von Livedaten zu testen.
Standardmetadateneigenschaften für Event Hubs
- EventEnqueuedUtcTime
- EventProcessedUtcTime
- PartitionId
- Offset
- Sequenznummer
- Partitionsschlüssel
- Publisher, wenn im eingehenden Ereignis verfügbar
Beispiele
Abrufen von EventEnqueuedUtcTime von Event Hubs:
SELECT GetMetadataPropertyValue(ehInput, '[EventHub].[EventEnqueuedUtcTime]') AS mytime FROM ehInput
So fragen Sie alle möglichen adapterbezogenen Eigenschaften als Datensatz ab:
SELECT GetMetadataPropertyValue(ehInput, 'EventHub') AS myEHPropertiesRecord FROM ehInput
IoT Hub-Eigenschaften beim Weiterleiten an Event Hubs-Endpunkte
Wenn Sie das IoT Hub-Routingfeature für Event Hubs-Endpunkte verwenden, stehen Metadateneigenschaften durch Lesen von Eigenschaften aus Event Hubs zur Verfügung. In diesem Fall können die folgenden Eigenschaften abgerufen werden:
- IoTConnectionDeviceId
- IoTAuthMethod
- IoTAuthGenerationId
- IoTEnqueueTime
- IoTMessageSource
- IoTConnectionModuleId
- IoTInterfaceName
Beispiel: SELECT GetMetadataPropertyValue(ehInput, '[EventHub].[IoTConnectionDeviceId]') AS myIoTDeviceId FROM ehInput
Über die IoT Hub-Nachrichtenanreicherung hinzugefügte Eigenschaften können über Benutzereigenschaften abgerufen werden.
Standardmetadateneigenschaften für IoT Hub
ConnectionDeviceId
AuthMethod
AuthGenerationId
EnqueueTime
MessageSource
ConnectionModuleId
InterfaceName
CorrelationId
Nachrichten-ID
ConnectionDeviceGenerationId
Beispiele
Abrufen von EnqueuedTime vom IoT Hub:
SELECT GetMetadataPropertyValue(iotInput, 'IoTHub.EnqueuedTime') AS myEnqueuedTime FROM iotInput
So fragen Sie alle möglichen adapterbezogenen Eigenschaften als Datensatz ab:
SELECT GetMetadataPropertyValue(iotInput, 'IoTHub') AS iotRecord FROM iotInput
Standardmetadateneigenschaften für blob-Eingabe:
- BlobName
- BlobLastModifiedUtcTime
- PartitionId
Beispiel: SELECT GetMetadataPropertyValue(blobInput, 'BlobName') AS myBlobName FROM blobInput
Benutzereigenschaften
Eine benutzerdefinierte Benutzereigenschaft namens "SenderClientId", die für eingehende EventHub/IoT/Blob-Nachrichten festgelegt wurde, wird mithilfe von GetMetadataPropertyValue zugänglich gemacht, wie im folgenden Beispiel gezeigt.
Darüber hinaus können Zwillingseigenschaften und erweiterte Eigenschaften, die mithilfe der IoT Hub-Nachrichtenanreicherung hinzugefügt werden, auch mithilfe von GetMetadataPropertyValue abgerufen werden.
Beispiele
So fragen Sie aus einer Event Hub-Eingabe ab
SELECT Name, GetMetadataPropertyValue(ehInput, '[User].[SenderClientId]') FROM ehInput
So fragen Sie aus einer IoT Hub-Eingabe ab
SELECT Name, GetMetadataPropertyValue(iotInput, '[User].[SenderClientId]') FROM iotInput
So fragen Sie von einer BLOB-Eingabe ab
SELECT Name, GetMetadataPropertyValue(blobInput, '[User].[SenderClientId]') FROM blobInput
So rufen Sie alle Benutzereigenschaften als Datensatz ab
Für Event Hub:
SELECT Name, GetMetadataPropertyValue(ehInput, '[User]') AS userprops FROM ehInput
Für IoT Hub:
SELECT Name, GetMetadataPropertyValue(iotInput, '[User]') AS userprops FROM iotInput
Für Blob-Eingabe:
SELECT Name, GetMetadataPropertyValue(blobInput, '[User]') AS userprops FROM blobInput
Unique EventId-Eigenschaft
Die EventId-Eigenschaft erstellt eine eindeutige ID (Guid) für ein Eingabeereignis, das für Primärschlüsselzwecke nützlich sein kann. EventId ist konsistent (nicht zufällig); Wenn Sie in der Zeit zurückkehren und dasselbe Eingabeereignis erneut lesen, erzeugt Stream Analytics dieselbe ID.
Beispiel
SELECT GetMetadataPropertyValue(ehInput, 'EventId') AS eventPrimaryKey FROM ehInput
Einschränkungen und Beschränkungen
GetMetadataPropertyValue hat die folgenden Einschränkungen der Verwendung:
Die Verwendung
SELECT *in Ihrer Abfrage bewirkt doppelte Spalten. Um doppelte Spalten zu verhindern, listen Sie Spalten einzeln in Ihrer SELECT-Anweisung auf.Der Alias, den Sie Ihrem Metadateneigenschaftswert zuweisen, wird unabhängig von der in Ihrer Abfrage verwendeten Groß-/Kleinschreibung klein geschrieben. Gibt z. B
SELECT GetMetadataPropertyValue(ehInput, 'EventId') AS eventPrimaryKey. alseventprimarykey. Verwenden Sie die Kompatibilitätsebene 1.2, um die Groß-/Kleinschreibung beizubehalten.Diese Funktion funktioniert nicht im Vorschauergebnisbereich des Azure-Portals, einschließlich Testabfragefunktionen.
Benennen Sie die Origialnutzlastfelder um, bevor die Daten zu ASA gelangen. Der Nutzlastfeldname wird überschrieben, wenn er mit dem Namen des Systemmetadatenfelds übereinstimmt.
MessageId und CorrelationId der Ereignismetadaten von EventHub werden nicht unterstützt.