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.
Was ist der Echtzeitmodus?
Der Echtzeitmodus ist ein Triggertyp für strukturiertes Streaming, der eine extrem niedrige Datenverarbeitung mit End-to-End-Latenz mit bis zu fünf Millisekunden ermöglicht. Verwenden Sie den Echtzeitmodus für Betriebsarbeitslasten, die sofortige Reaktion auf Streamingdaten erfordern, z. B. Betrugserkennung und Echtzeitpersonalisierung.
Der Echtzeitmodus ist auch in Lakeflow-Pipelines verfügbar. Siehe Verwenden des Echtzeitmodus in Lakeflow-Pipelines.
So erzielt der Echtzeitmodus eine niedrige Latenz
Der Echtzeitmodus verbessert die Ausführungsarchitektur durch:
- Das Ausführen langer Laufender Batches (der Standardwert ist fünf Minuten), in dem das System Daten verarbeitet, sobald sie in der Quelle verfügbar sind.
- Planen Sie alle Abfrageschritte gleichzeitig. Dies erfordert, dass die Anzahl der verfügbaren Vorgangsplätze gleich oder größer als die Anzahl der Vorgänge aller Phasen in einem Batch ist.
- Die Weitergabe von Daten zwischen den Stages erfolgt unmittelbar nach ihrer Erzeugung mithilfe eines Streaming-Shuffles.
Zwischen den Batches überprüft Structured Streaming den Fortschritt und veröffentlicht Metriken. Die Batch-Dauer wirkt sich auf die Prüfpunkthäufigkeit aus.
- Bei längeren Batches erfolgt die Erstellung von Checkpoints weniger häufig, was längere Replays im Fehlerfall und eine verzögerte Verfügbarkeit der Metriken zur Folge hat.
- Bei kürzeren Batches erfolgt die Checkpoint-Erstellung häufiger, was sich auf die Latenz auswirken kann.
Azure Databricks empfiehlt, den Echtzeitmodus im Vergleich zu Ihrer Zielarbeitslast zu vergleichen, um das entsprechende Triggerintervall zu finden.
Gründe für die Verwendung des Echtzeitmodus
Wählen Sie den Echtzeitmodus aus, wenn Für Ihren Anwendungsfall Folgendes erforderlich ist:
- Latenz von Unter-Sekunden: Anwendungen, die innerhalb von Millisekunden auf Daten reagieren müssen. Wenn in Echtzeit eine Kreditkartentransaktion blockiert oder gekennzeichnet wird, weil eine Betrugsbewertung einen Schwellenwert überschreitet, basierend auf einem ungewöhnlichen Standort, einer großen Transaktion oder einem schnellen Ausgabeverhalten.
- Operative Entscheidungsfindung: Systeme, die sofortige Aktionen basierend auf eingehenden Daten auslösen. Beispielsweise die Übermittlung einer Werbebotschaft, wenn Clickstream-Daten zeigen, dass ein Benutzer nach einem Produkt gesucht hat, mit dem Angebot eines Rabatts, falls er innerhalb der nächsten 15 Minuten einen Kauf tätigt.
- Kontinuierliche Verarbeitung: Workloads, bei denen Daten verarbeitet werden müssen, sobald sie eintreffen, und nicht in regelmäßigen Batches.
Verwenden Sie den Mikrobatchmodus (der standardmäßige strukturierte Streamingtrigger), wenn für Ihren Anwendungsfall Folgendes erforderlich ist:
- Analytische Verarbeitung: ETL-Pipelines, Datentransformationen und Medallion-Architekturimplementierungen, bei denen Latenzanforderungen in Sekunden oder Minuten gemessen werden.
- Kostenoptimierung: Workloads, bei denen die Latenz von Unter-Sekunden nicht erforderlich ist, da im Echtzeitmodus dedizierte Computeressourcen erforderlich sind.
- Schnellere Wiederherstellung: Workloads, die häufige Prüfpunkte benötigen, um die Wiedergabezeit nach einem Fehler zu minimieren.
Featureunterstützung und -einschränkungen
Eine vollständige Liste der unterstützten Umgebungen, Sprachen, Computetypen, Quellen, Senken, Operatoren und bekannten Einschränkungen finden Sie unter Referenz zum Echtzeitmodus.