Zeitlich Aggregiert



Quelle “Aggregated timeseries”

Über die Quelle “Aggregated timeseries” kannst du aus einen bestehenden Datenpunkt mit seinen historischen Daten einen neuen Datenpunkt berechnen.

Dies ist z.B. nützlich, wenn Du den Maximalwert der letzten Stunde oder den Verbrauch von gestern berechnen willst.

Folgende Optionen stehen Dir allgemein zur Konfiguration zur Verfügung:

  • zeitlich aggregierter Datenpunkt [1] : wähle hier den für die Berechnung zu verwendenden Datenpunkt aus
  • Operation [2]: wähle aus, was mit den historischen Daten des Datenpunkts passieren soll:
    • AVG: Berechne den Durchschnitt
    • MIN: Bestimme das Minimum
    • MAX: Bestimme das Maximum
    • SUM: Berechne die Summe
    • MEDIAN: Bestimme den Median
    • COUNT: Zähle die Anzahl der Datenpunkte
    • Differenz zu letzte Periode: Bestimme die Differenz der Maximalwerte von der ausgewählten und vorherigen Periode
    • Differenz zum letzten Wert: Ermitteln Sie die Differenz der beiden zuletzt eingegangenen Werte. Hilfreich ist diese Funktion beispielsweise um Lastgänge zu berechnen.

Für einfache Anwendungsfälle kann im ersten grauen Kasten (“Vordefinierte Zeiträume”) folgende Einstellung vorgenommen werden:

  • Aggregation Dauer [3]: wähle den Zeitraum für die historischen Daten des Datenpunkts aus. Dieser wird berechnet ausgehend von der aktuellen Uhrzeit. D.h. wenn es 13:00 Uhr ist und eine Aggregation Dauer von 1 Stunde ausgewählt wird, werden alle Datenpunkte bis 12:00 Uhr für die Berechnung herangezogen.

  • Fester Zeitstempel [4]: wähle hier, ob die Aggregationsdauer relativ zum aktuellen Zeitpunkt sein soll (z.B. eine in die Vergangenheit ab dem Zeitpunkt, zu dem die Aggregation ausgelöst wird) oder ob ein fester Zeitstempel genutzt werden soll (um z.B. Werte immer zur vollen Stunde zu berechnen). Bitte beachte, dass bei der Option “Fester Zeitstempel” nur eine Berechnung stattfindet, wenn ein Ereignis eintritt, welches die Berechnung auslöst. Dies ist eine Änderung am aggregierten Datenpunkt [1], durch den Empfang eines Sensorpackets oder eine Regel mit zeitlichem Auslöser, welche eine Auswertung dieses Datenpunktes triggert. Werden im Zeitraum keine Daten gefunden so ist als Ergebnis null zu erwarten (nicht 0).

Alternativ steht auch im zweiten grauen Kasten darunter der “Expertenmodus” zur Verfügung, mit dem Du noch detaillierter Einstellungen vornehmen kannst. Im Gegensatz zu der “Aggregation Dauer” zuvor lässt sich hier einstellen, dass ausgehend von vollen Kalendertagen, -monaten etc. zurückgerechnet wird (anstatt von der aktuellen Uhrzeit).

  • Offset: Gibt an, wie viele Einheiten (z.B. Tage, Monate) zurückgegangen werden soll. Ein Wert von 0 entspricht dabei der aktuellen Einheit (z.B. aktueller Tag, aktueller Monat). Negative Werte sind hierbei nicht zulässig.
  • Offset Einheit: Gibt die Einheit für den Offset an
  • Zeitdauer: Gibt den Zeitraum an, ab dem - ausgehend vom Offset - vorwärts die Daten aggregiert werden sollen
  • Zeiteinheit: Gibt die Einheit für die Zeitdauer an

Hinweise

Hinweis 1: Die Aggregation funktioniert nur korrekt, falls alle Werte numerisch sind, also keine Zeichenketten, boolesche Werte oder JSON-Werte in der Historie vorkommen.

Hinweis 2: Unabhängig von dem ausgewählten Zeitraum werden maximal die neusten 5000 Werte aggregiert.

Hinweis 3: Die zeitlich aggregierten Datenpunkte speichern einen eigenen Wert in der Datenbank und werden immer dann neu berechnet, wenn der verbundene Datenpunkt sich aktualisiert. D.h. wird die Konfiguration des zeitlich aggregierten Datenpunkts nachträglich geändert, werden die bereits berechneten Werte nicht neu berechnet.

Hinweis 4: Wird für den zeitlich aggregierten Datenpunkt eine Aggregationsdauer ausgewählt, die kleiner ist als das Sendeintervall des Sensors, kann es passieren, dass in einem Aggregationsintervall kein Paket einging. Dann wird für dieses Intervall eine 0 für die Berechnung in der Operation verwendet.

Hinweis 5: Sobald die “Aggregation Dauer” ausgewählt wird, füllen sich automatisch die Felder im Bereich “Expertenmodus”. Umgekehrt deaktiviert sich die “Aggregation Dauer”, wenn die Felder aus dem “Expertenmodus” manuell ausgefüllt werden.

Hinweis 6: Je nach Wahl der Aggregation Dauer wird der Startpunkt der Aggregation unterschiedlich gesetzt.

  • Bei Auswahl “Diese Woche” wird der Startzeitpunkt montags um 00:00:00 Uhr gesetzt und die Status-Updates ab diesem Zeitpunkt zurückgegeben. Beispiel: wenn jetzt der 8. Februar um 13:37:37.020 UTC+2 ist, werden alle Status-Updates ab dem 1. Februar 13:37:37.020 UTC+2 zurückgegeben

  • Bei Auswahl “7 Tage” werden die Status-Updates der letzten 7 Tage auf die Sekunde genau zurückgegeben. Beispiel: wenn jetzt Mittwoch, der 8. Februar um 13:37:37.020 UTC+2 ist, werden die Status-Updates ab Montag, dem 6. Februar um 00:00:00.000 UTC+2 zurückgegeben

  • Bei Auswahl “7 Tage” im Expertenmodus werden die letzten vollen 7 Tage zurückgegeben. Beispiel: Wenn jetzt der 8. Februar um 13:37:37.020 UTC+2 ist, werden die Zustandsänderungen ab dem 1. Februar 00:00:00.000 UTC+2 zurückgegeben

Beispiele

Beispiel 1 zu den Konfigurationsmöglichkeiten

Um die vielfältigen Konfigurationsmöglichkeiten zu verdeutlichen, hier ein Beispiel:

Ausgangssituation ist ein Datenpunkt mit den in den ersten beiden Spalten aufgeführten, eingegangenen Temperaturen.

Ziel ist es, mittels eines zeitlich aggregierten Datenpunkts die Maximaltemperatur der letzten 15 min. herauszufinden.

Wähle hierzu über die Fläche “Zeitlich aggregierter Datenpunkt” den entsprechenden Datenpunkt (in diesem Beispiel wäre “Temperatur”) aus, von dem eine Aggregation über einen Zeitraum erstellt werden soll. Wähle unter “Operation” den Maximalwert (“MAX”), danach unter “Aggregation Dauer” einen Zeitraum von 15 Minuten und im Feld “Typ” den Typ “Number” für die Visualisierung. Du kannst im Feld “Wert” optional den ersten Wert festlegen (der Wert wird bei der ersten Aktualisierung von der Datenquelle überschrieben). Klicke auf “sichern”, dann erscheint der zeitlich aggregierte Datenpunkt im Dashboard und in der Liste der Datenpunkte.

In unserem Beispiel von oben wird der Wert 22 °C als maximale Temperatur in den letzten 15 Minuten gezeigt (vgl. Spalte 3: aus den Daten von 10:00 Uhr bis 09:45 wird das Maximum genommen). Das gleiche Prinzip kannst du mit anderen Operationen durchführen (z.B. “MIN”).

Wenn du hingegen bei dem gleichen Beispiel die Operation “Differenz zur letzten Periode” und einen Zeitraum von 15 Minuten auswählst, dann wird hier die Differenz der Maximaltemperaturen zwischen den letzten beiden Intervallen gezeigt.

Für unser Beispiel wären das die Differenz aus:

  • Dem 1. Intervall (von 9:45 bis 10:00), wo die maximale Temperatur 22 °C ist.
  • Dem 2. Intervall (von 9:30 bis 9:45), wo die maximale Temperatur 35 °C ist.

Angezeigt wird die Differenz beider Temperaturen; d.h. 22°C-35°C = 13°C.

Beispiel 2 zu den Konfigurationsmöglichkeiten

Wenn das Ziel hingegen ist, für die oben angegebenen Temperaturwerte die maximale Temperatur von vor 2 Tagen von dem gesamten (Kalender-)Tag zu erfahren, dann musst Du den Expertenmodus wähle.

Mit dem “Offset” von 2 und der Offset-Einheit “Tag” wählst Du den vorgestrigen Tag (vor 2 Tagen) aus. Nachfolgende Tabelle gibt ein Beispiel für die Funktion des Offsets:

Als Zeitdauer wählst Du 1 und Zeiteinheit “Tag”, um den gesamten Kalendertag als Zeitraum für die Auswertung zu berücksichtigen.