Freigeben über


Latenz im Activator

Der Fabric Activator führt Regeln für Echtzeitdaten aus. Ergebnisse sind nahezu sofort, aber es gibt Faktoren, die Latenzen einfügen können. In den meisten Fällen ist diese Latenz nicht wahrnehmbar, aber in anderen Fällen kann die Latenz bis zu 10 Minuten betragen. Das Empfangen von genauen und zeitnahen Informationen ist ein wichtiger Aspekt beim Erstellen und Empfangen von Regeln. In diesem Artikel werden die Prozesse und Einstellungen überprüft, die das Gleichgewicht zwischen der Einbeziehung von Ereignissen und der Struktur einer Regel bestimmen und wie schnell ein Activator gesendet wird. Soll Activator beispielsweise zulassen, dass mehr Daten eingehen und einbezogen werden, oder sollte Activator sicherstellen, dass Empfänger*innen ihre Benachrichtigungen zu einem festgelegten Zeitpunkt erhalten? Und wie wirkt sich die Art und Weise, wie eine Regel strukturiert ist, auf die Geschwindigkeit aus, mit der eine Aktivierung an Empfänger gesendet wird?

Es gibt drei wichtige Faktoren, die sich auf die Latenz der Regelaktivierung auswirken:

  • Die Benutzereinstellung für die Toleranz für verspätete Ankunft.
  • Eine Verzögerung von bis zu einer Minute, die möglichweise durch die Back-End-Verarbeitung des Activators verursacht wird.
  • Aggregationen für die Regel.

Toleranz für Eingangsverzögerung

Die Toleranz für verspätete Ankunft wird im Definitionsbildschirm der Activator-Regel festgelegt und auf die Ankunftszeit des Ereignisses angewendet. Informationen zum Festlegen der Toleranz für späte Ankunft finden Sie unter "Toleranz für späte Ankunft".

Back-End-Verarbeitungslatenz

Regeln benötigen möglicherweise eine Verarbeitung, bevor die Regel aktiviert wird. Wenn die Regel beispielsweise ein Vergleich mit einem vorherigen Satz von Ereignissen ist, wird die Back-End-Verarbeitung verwendet, um die vorherigen Daten abzurufen, den Vergleich vorzunehmen und das Ergebnis zu berechnen. Ein weiteres Beispiel: Wenn die Regel für 10 Millionen Datenzeilen ausgeführt wird, wird die Latenz durch die Back-End-Verarbeitung dieser Daten eingeführt.

Aggregationslatenz

Wenn eine Aggregation in der Regeldefinition verwendet wird, wird die Regel nur aktiviert, wenn sie die angegebenen Zeitfenster abgeschlossen hat. Angenommen, es wird eine Regel erstellt, um die Daten über vier Stunden zu mitteln. Wenn ein Ereignis, das die Regelbedingungen erfüllt, um 12 Uhr aufgenommen wird, löst die Regel um 14 Uhr aus. Die Latenz ist ein Ergebnis der Aggregationseinstellungen. Auch wenn eine Regel eine einfache Aggregation enthält, z . B. den Mittelwert, kann der Aktivierer erst dann eine Aktivierung senden, wenn der Aktivierer die Aggregation über die eingehenden Ereignisdaten hinweg ausführt.

Zeitkonzepte im Hintergrund

Um die Diskussion besser zu gestalten, lassen Sie uns einige Hintergrundkonzepte definieren.

  • Ereigniszeit: Der Zeitpunkt, an dem das ursprüngliche Ereignis aufgetreten ist. Sie ist Teil der Ereignisnutzlast. Wenn sich beispielsweise ein bewegtes Auto auf der Autobahn auf eine Mautstelle nähert und von einem Sensor bemerkt wird.
  • Verarbeitungszeit: Der Zeitpunkt, an dem das Ereignis das Verarbeitungssystem erreicht und beobachtet wird. Zum Beispiel, wenn der Sensor im Mauthäuschen das Auto erkennt und das Computersystem einen Moment benötigt, um die Daten zu verarbeiten.
  • Ankunftszeit (Wasserzeichen oder Aufnahmezeit): Eine Markierung, die angibt, wann die Ereignisdaten den Activator erreichen. Durch die Art der Datenströme werden die eingehenden Ereignisdaten nie angehalten, sodass die Ankunftszeiten den Fortschritt angeben, den der Activator zu einem bestimmten Punkt im Datenstrom gemacht hat. An diesem Punkt kann Activator vollständige, korrekte und wiederholbare Ergebnisse erzeugen, die nicht zurückgezogen werden müssen. Und an diesem Punkt kann Activator mit der Verarbeitung der Daten beginnen. Die Verarbeitung kann auf vorhersehbare und wiederholbare Weise erfolgen. Wenn zum Beispiel eine Nachzählung für eine Fehlerbehandlung durchgeführt werden muss, sind Wasserzeichen sichere Start- und Endpunkte.

Verspätete Ankunft tritt auf, wenn die Regel einen Zeitparameter hat und die Ereigniszeit innerhalb dieses Zeitparameters liegt, die Ankunftszeit jedoch außerhalb dieses Parameters liegt. Wenn wir das Mautstandsbeispiel erneut verwenden, wird das Auto vom Mautstandsensor erkannt, und die Ereigniszeit liegt innerhalb des Zeitparameters. Activator sieht, dass die Regel über eine Aggregation verfügt und diese Aggregation über die Daten ausführt. Die Zeit, die zum Ausführen dieser Aggregation benötigt wird, legt die Ankunftszeit außerhalb des Zeitparameters fest. Dieses Ereignis gilt nun als verspätet. Wenn Spätankünfte eingeschlossen werden sollen, legen Sie einen Wert für die Toleranz für Eingangsverzögerung fest.

Zusätzliche Ressourcen zu diesem Thema finden Sie in den Blogbeiträgen von Tyler Akidau Streaming 101 und Streaming 102.

Einstellung für Toleranz für Eingangsverzögerung

Die Toleranz für Eingangsverzögerung ist eine Benutzereinstellung. Die Toleranz für Eingangsverzögerung bezieht sich darauf, wie lange der Activator wartet, bis ein Ereignis eintrifft und bestätigt und verarbeitet wird. Der Standardwert beträgt zwei Minuten. Die Toleranz für Eingangsverzögerung trägt zur Latenz bei. Regeln, die mit einer Toleranz für Eingangsverzögerung erstellt werden, weisen eine Latenz auf, die mindestens die Zeitspanne angibt, auf die die Toleranz für Eingangsverzögerung festgelegt ist. Entscheiden Sie beim Erstellen einer Regel, ob Sie die Standardtoleranz verwenden oder ändern möchten. Toleranz stellt sicher, dass späte Ereignisse und Ereignisse, die außerhalb der Reihenfolge ankommen, in die Regelauswertung einbezogen werden können. Wenn ein Ereignis außerhalb der Toleranz für Eingangsverzögerung liegt, berücksichtigt Activator es nicht. Alle Ereignisse mit einer Eingangszeit nach dieser Toleranz werden nicht eingeplant.

Screenshot des Bereichs „Bedingungen“, in dem bis zu den Optionen „Erweiterten Einstellungen“ gescrollt wurde.

Insgesamt ist die Überlegung, ob es wichtiger ist, folgendes zu beachten:

  • Warten auf die verspäteten Datenpunkte, oder
  • Ausführen der Regel für potenziell unvollständige Daten, sodass die Regel früher aktiviert wird. 

In diesem Beispiel werden Datenpunkte in Schritten von 15 Minuten gemessen. Die ersten drei Punkte, die blau sind, schaffen es ins Zeitfenster. Der vierte Punkt, der orange ist, nicht. Die Ereigniszeit liegt innerhalb des 15-Minuten-Intervalls, aber das Ereignis wird nicht vom Activator innerhalb des 15-Minuten-Intervalls aufgenommen. Activator wertet die Regel nur mit einer Eingangszeit innerhalb des 15-Minuten-Fensters aus. Sofern Benutzende nicht angeben, dass sie eine Toleranz für Eingangsverzögerung zulassen und warten möchten, ob andere Datenpunkte eingehen. 

Screenshot eines Liniendiagramms, das Zeitintervalle anzeigt.

Der Activator kann Verzögerungen aus den Daten der Benutzenden nicht berücksichtigen. Benutzende können beispielsweise IoT-Sensoren haben, die 1 Stunde offline sind. Sobald sie wieder online sind, kann Activator die Daten empfangen, aber die Daten wurden 1 Stunde lang von diesem Offlinestatus verzögert, was außerhalb des Activators geschieht.

Hier sehen Sie ein weiteres Beispiel.

Ein*e Benutzende erstellt eine Regel, die die durchschnittliche Temperatur in Minutenintervallen berechnet. Die Toleranz für Eingangsverzögerung ist auf Standard festgelegt. Standard sind zwei Minuten. Die Temperaturwerte 20 und 30 sind enthalten und die durchschnittliche Temperatur beträgt 25. Das spät eintreffende Ereignis für die 40-Grad-Temperatur wird jedoch erst einbezogen, wenn die nächste Regelaktivierung eintritt. 

Ereigniszeit Eingangszeit Temperatur
09:00 09:02 20
09:01 03:09 30
09:02 09:07 40

Wichtig

Zurzeit können Sie die standardmäßige Toleranz für Eingangsverzögerung nicht außer Kraft setzen. Diese Einstellung gilt auch nicht für Power BI-Regeln.

Regeln, die auf visuellen Power BI-Elementen basieren

Die integrierte Latenz unterscheidet sich je nach Dienst. Die Latenz für Eventstreams unterscheidet sich von der Latenz für visuelle Power BI-Elemente. Es gibt zwei Teile, die Latenz für Regeln bestehen, die auf Power BI-Visualisierungen basieren: die Häufigkeit der Abfrage von Power BI-Visualisierungen, die im System integriert sind, und eine Verzögerung, die das Back-End des Activators möglicherweise verursachen kann.

Power BI-Regeln werden jedes Mal ausgewertet, wenn neue Daten im Activator eingehen. Der Activator erfasst jede Stunde neue Daten aus Power BI. Dies bedeutet, dass Ereignisse, die die Regelbedingung erfüllen, eine Aktivierung maximal eine Stunde nach dem Auftreten des Ereignisses auslösen. Weitere Informationen finden Sie unter Abrufen von Daten für Activator aus Power BI.