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.
Von Bedeutung
Azure Synapse Analytics Data Explorer (Vorschau) wird am 7. Oktober 2025 eingestellt. Nach diesem Datum werden Arbeitslasten, die im Synapse-Daten-Explorer ausgeführt werden, gelöscht, und die zugehörigen Anwendungsdaten gehen verloren. Es wird dringend empfohlen , zu Eventhouse in Microsoft Fabric zu migrieren.
Das Microsoft Cloud Migration Factory (CMF)-Programm wurde entwickelt, um Kunden bei der Migration zu Fabric zu unterstützen. Das Programm bietet dem Kunden kostenlos praktische Tastaturressourcen. Diese Ressourcen werden für einen Zeitraum von 6-8 Wochen mit einem vordefinierten und vereinbarten Umfang zugewiesen. Kunden nominierungen werden vom Microsoft-Kontoteam oder direkt durch Senden einer Anfrage zur Hilfe an das CMF-Team akzeptiert.
Bei Azure Event Hubs handelt es sich um eine Big Data-Streamingplattform und einen Ereigniserfassungsdienst. Azure Synapse Data Explorer bietet eine kontinuierliche Erfassung von vom Kunden verwalteten Event Hubs.
Die Event Hubs-Ingestionspipeline überträgt Ereignisse in mehreren Schritten an den Azure Synapse-Daten-Explorer. Sie erstellen zuerst einen Event Hubs im Azure-Portal. Anschließend erstellen Sie eine Zieltabelle im Azure Synapse-Daten-Explorer, in die die Daten in einem bestimmten Format aufgenommen werden, mithilfe der angegebenen Aufnahmeeigenschaften. Die Event Hubs-Verbindung muss das Routing von Ereignissen kennen. Daten werden gemäß der Zuordnung der Ereignissystemeigenschaften mit ausgewählten Eigenschaften eingebettet.
Allgemeine Informationen zur Datenaufnahme im Azure Synapse-Daten-Explorer finden Sie in der Übersicht über die Datenaufnahme in Azure Synapse-Daten-Explorer.
Datenformat
Daten werden in Form von EventData-Objekten aus Event Hubs gelesen.
Siehe Unterstützte Formate.
Hinweis
Event Hub unterstützt das .raw Format nicht.
Daten können mit dem
GZip-Komprimierungsalgorithmus komprimiert werden. Geben SieCompressionin Aufnahmeeigenschaften an.- Die Datenkomprimierung wird für komprimierte Formate (Avro, Parkett, ORC) nicht unterstützt.
- Benutzerdefinierte Codierungs- und eingebettete Systemeigenschaften werden für komprimierte Daten nicht unterstützt.
Aufnahmeeigenschaften
Erfassungseigenschaften weisen den Erfassungsprozess an, wohin die Daten weitergeleitet und wie sie verarbeitet werden sollen. Sie können Erfassungseigenschaften der Ereigniserfassung mithilfe von EventData.Properties angeben. Sie können die folgenden Eigenschaften festlegen:
| Eigentum | Description |
|---|---|
| Table | Name (Groß-/Kleinschreibung beachten) der vorhandenen Zieltabelle. Überschreibt das Table-Element, das im Bereich Data Connection festgelegt ist. |
| Format | Datenformat. Überschreibt das Data format-Element, das im Bereich Data Connection festgelegt ist. |
| IngestionMappingReference | Name der zu verwendenden vorhandenen Erfassungszuordnung. Überschreibt das Column mapping-Element, das im Bereich Data Connection festgelegt ist. |
| Komprimierung | Datenkomprimierung, None (Standardeinstellung) oder GZip Komprimierung. |
| Codierung | Datencodierung. Die Standardeinstellung ist UTF8. Alle von .NET unterstützten Codierungen können verwendet werden. |
| Stichwörter | Eine Liste der Tags, die den erfassten Daten zugeordnet werden sollen (formatiert als JSON-Arrayzeichenfolge). Die Verwendung von Tags hat Auswirkungen auf die Leistung. |
Hinweis
Nur Ereignisse, die nach dem Erstellen der Datenverbindung in die Warteschlange eingereiht werden, werden erfasst.
Ereignisrouting
Wenn Sie eine Event Hubs-Verbindung mit dem Azure Synapse Data Explorer-Cluster einrichten, geben Sie Zieltabelleneigenschaften an (Tabellenname, Datenformat, Komprimierung und Zuordnung). Das Standardrouting für Ihre Daten wird auch als static routing.
Sie können auch Zieltabelleneigenschaften für jedes Ereignis mithilfe von Ereigniseigenschaften angeben. Die Verbindung leitet die Daten dynamisch gemäß der EventData.Properties weiter und überschreibt dabei die statischen Eigenschaften für dieses Ereignis.
Legen Sie im folgenden Beispiel Event Hubs-Details fest, und senden Sie Wettermetrikdaten an die Tabelle WeatherMetrics.
Die Daten sind im json Format.
mapping1 ist in der Tabelle WeatherMetricsvordefiniert.
Warnung
In diesem Beispiel wird die Verbindungszeichenfolgenauthentifizierung verwendet, um eine Verbindung mit Event Hubs herzustellen, um die Einfachheit des Beispiels zu gewährleisten. Das hartcodieren einer Verbindungszeichenfolge in Ihr Skript erfordert jedoch ein sehr hohes Vertrauen in die Anwendung und birgt Sicherheitsrisiken.
Verwenden Sie für langfristige, sichere Lösungen eine der folgenden Optionen:
- Kennwortlose Authentifizierung
- Speichern Sie Ihre Verbindungszeichenfolge in einem Azure Key Vault, und verwenden Sie diese Methode, um sie in Ihrem Code abzurufen.
var eventHubNamespaceConnectionString=<connection_string>;
var eventHubName=<event_hub>;
// Create the data
var metric = new Metric { Timestamp = DateTime.UtcNow, MetricName = "Temperature", Value = 32 };
var data = JsonConvert.SerializeObject(metric);
// Create the event and add optional "dynamic routing" properties
var eventData = new EventData(Encoding.UTF8.GetBytes(data));
eventData.Properties.Add("Table", "WeatherMetrics");
eventData.Properties.Add("Format", "json");
eventData.Properties.Add("IngestionMappingReference", "mapping1");
eventData.Properties.Add("Tags", "['mydatatag']");
// Send events
var eventHubClient = EventHubClient.CreateFromConnectionString(eventHubNamespaceConnectionString, eventHubName);
eventHubClient.Send(eventData);
eventHubClient.Close();
Zuordnung von Ereignissystemeigenschaften
Systemeigenschaften speichern Eigenschaften, die vom Event Hubs-Dienst zum Zeitpunkt des Einreihens eines Ereignisses festgelegt werden. Die Azure Synapse Data Explorer Event Hubs-Verbindung bettet die ausgewählten Eigenschaften in die Datenlandung in Ihrer Tabelle ein.
Hinweis
- Systemeigenschaften werden für
jsonund Tabellenformate (csv,tsvusw.), aber nicht für komprimierte Daten unterstützt. Bei Verwendung eines nicht unterstützten Formats werden die Daten weiterhin erfasst, die Eigenschaften werden jedoch ignoriert. - Bei Tabellendaten werden Systemeigenschaften nur für Ereignismeldungen mit einem Datensatz unterstützt.
- Bei JSON-Daten werden Systemeigenschaften auch für Ereignismeldungen mit mehreren Datensätzen unterstützt. In solchen Fällen werden die Systemeigenschaften nur dem ersten Datensatz der Ereignismeldung hinzugefügt.
- Für die
csv-Zuordnung werden Eigenschaften in der in der Tabellecsvaufgeführten Reihenfolge am Anfang des Datensatzes hinzugefügt. - Für die
json-Zuordnung werden Eigenschaften entsprechend den Eigenschaftsnamen in der Tabelle Systemeigenschaften hinzugefügt.
Systemeigenschaften
Event Hubs macht die folgenden Systemeigenschaften verfügbar:
| Eigentum | Datentyp | Description |
|---|---|---|
| x-opt-enqueued-time | Datum/Uhrzeit | UTC-Zeit, zu der das Ereignis in die Warteschlange eingereiht wurde. |
| x-opt-sequence-number | long | Die logische Sequenznummer des Ereignisses innerhalb des Partitionsdatenstroms der Event Hubs |
| x-opt-offset | Schnur | Der Offset des Ereignisses im Event Hubs-Partitionsdatenstrom. Der Offsetbezeichner ist innerhalb einer Partition des Event Hubs-Datenstroms eindeutig. |
| x-opt-Publisher | Schnur | Der Name des Herausgebers, wenn die Nachricht an einen Herausgeberendpunkt gesendet wurde. |
| x-opt-partition-key | Schnur | Der Partitionsschlüssel der entsprechenden Partition, in der das Ereignis gespeichert wurde. |
Wenn Sie Ereignissystemeigenschaften im Abschnitt Datenquelle der Tabelle ausgewählt haben, müssen Sie die Eigenschaften in das Tabellenschema und die Zuordnung einschließen.
Beispiele für die Schemazuordnung
Beispiel für die Tabellenschemazuordnung
Wenn Ihre Daten drei Spalten (Timespan, Metric und Value) enthalten und die Eigenschaften, die Sie einschließen, x-opt-enqueued-time und x-opt-offset lauten, erstellen oder ändern Sie das Tabellenschema mit dem folgenden Befehl:
.create-merge table TestTable (TimeStamp: datetime, Metric: string, Value: int, EventHubEnqueuedTime:datetime, EventHubOffset:string)
Beispiel für eine CSV-Zuordnung
Führen Sie die folgenden Befehle aus, um am Anfang des Datensatzes Daten hinzuzufügen. Beachten Sie die Ordinalwerte.
.create table TestTable ingestion csv mapping "CsvMapping1"
'['
' { "column" : "Timespan", "Properties":{"Ordinal":"2"}},'
' { "column" : "Metric", "Properties":{"Ordinal":"3"}},'
' { "column" : "Value", "Properties":{"Ordinal":"4"}},'
' { "column" : "EventHubEnqueuedTime", "Properties":{"Ordinal":"0"}},'
' { "column" : "EventHubOffset", "Properties":{"Ordinal":"1"}}'
']'
Beispiel für eine JSON-Zuordnung
Daten werden mithilfe der Systemeigenschaftenzuordnung hinzugefügt. Führen Sie diese Befehle aus:
.create table TestTable ingestion json mapping "JsonMapping1"
'['
' { "column" : "Timespan", "Properties":{"Path":"$.timestamp"}},'
' { "column" : "Metric", "Properties":{"Path":"$.metric"}},'
' { "column" : "Value", "Properties":{"Path":"$.value"}},'
' { "column" : "EventHubEnqueuedTime", "Properties":{"Path":"$.x-opt-enqueued-time"}},'
' { "column" : "EventHubOffset", "Properties":{"Path":"$.x-opt-offset"}}'
']'
Event Hubs-Verbindung
Hinweis
Um eine optimale Leistung zu erzielen, erstellen Sie alle Ressourcen in derselben Region wie der Azure Synapse-Daten-Explorer-Cluster.
Event Hubs erstellen
Wenn Sie noch keines haben, erstellen Sie einen Event Hubs. Das Herstellen einer Verbindung mit Event Hubs kann über das Azure-Portal, programmgesteuert mit C# oder Python oder mit der Azure Resource Manager-Vorlage verwaltet werden.
Hinweis
- Die Partitionsanzahl kann nicht geändert werden, daher sollten Sie beim Festlegen der Partitionsanzahl eine langfristige Skalierung in Betracht ziehen.
- Die Consumergruppe muss pro Consumer eindeutig sein. Erstellen Sie eine Verbrauchergruppe, die der Azure Synapse-Daten-Explorer-Verbindung zugeordnet ist.
Senden von Ereignissen
Sehen Sie sich die Beispiel-App an, die Daten generiert und an einen Event Hub sendet.
Ein Beispiel zum Generieren von Beispieldaten finden Sie unter "Aufnehmen von Daten aus Event Hubs" im Azure Synapse-Daten-Explorer
Einrichten einer Lösung für die georedundante Notfallwiederherstellung
Event Hubs bietet eine Lösung für die Geo-Notfallwiederherstellung .
Der Azure Synapse-Daten-Explorer unterstützt Alias keine Event Hubs-Namespaces. Um die Geo-Notfallwiederherstellung in Ihrer Lösung zu implementieren, erstellen Sie zwei Event Hubs-Datenverbindungen: eine für den primären Namespace und eine für den sekundären Namespace. Der Azure Synapse-Daten-Explorer überwacht beide Event Hubs-Verbindungen.
Hinweis
Es liegt in der Verantwortung des Benutzers, ein Failover vom primären Namespace auf den sekundären Namespace zu implementieren.
Nächste Schritte
- Aufnehmen von Daten aus Event Hubs in Azure Synapse-Daten-Explorer
- Erstellen einer Event Hubs-Datenverbindung für Azure Synapse-Daten-Explorer mit C#
- Erstellen einer Event Hubs-Datenverbindung für Azure Synapse Data Explorer mit Python
- Erstellen einer Event Hubs-Datenverbindung für Azure Synapse-Daten-Explorer mithilfe der Azure Resource Manager-Vorlage