Wie (mathematisch) funktioniert eigentlich die Verdichtung von Variablen?

Moin Moin allerseits,

wie genau funktioniert eigentlich die Verdichtung von Variablen? Also wie wird das mathematisch gelöst?

Nehmen wir mal an, ich logge eine Variable und verdichte direkt auf einen Wert pro Minute. Was passiert dabei? Wird der Mittelwert aller Variablen innerhalb der Minute gespeichert? Der Median? Wird irgendwie gewichtet?

Und wie funktioniert das bei Zählervariablen?

Freu mich auf Rückmeldung.

Ich danke euch.

VG: Lars

Wie tief möchtest du einsteigen? :wink:

Hier einmal die Kurzfassung: Bei Standardaggregation wird kontinuierlich der Durchschnitt berechnet, gewichtet nach Dauer des Wertes. Also genau so, als würdest du nicht verdichten und dann die minütliche Aggregation abfragen, nur dass die Rohwerte dabei halt verloren gehen.

Analog auch bei Zähler. Das ist im Normalfall sogar noch einfacher, da bei monoton steigendem Zähler innerhalb eines Verdichtungsintervalls einfach alle bis auf den letzten Wert weggelassen werden.

1 „Gefällt mir“

Sehr cool, dass sogar nach Dauer des Wertes gewichtet wird. Danke Dir vielmals für die rasche Rückinfo, das reicht vollkommen. Dann kann ich beruhigt wie verrückt aggregieren :slight_smile:

Herzliche Grüße

Hi Dr.Niels,

eine Nachfrage habe ich noch. Wenn ich eine Variable auf sofortige Verdichtung (minütlich) setze und dann im Frontend anzeige, was genau wird angezeigt?

=> Der wirklich gerade aktuelle Wert und die Verdichtung erfolgt erst nach einer Minute?
=> Der verdichtete, also quasi Durchschnittswert der aktuell lfd. Minute?
=> Oder noch was anderes?

Beispiel
=> Ich fülle eine Variable alle 10 Sekunden mit den folgenden Werten: 10, 20, 30, 40, 50
=> Wenn ich die Variable nach 50 Sekunden im Frontend anzeige, bekomme ich dann 50 zu sehen?
=> Und wenn ich später in die Minute reinschaue, dann den Mittelwert, also 30?

Freu mich sehr auf Deine Rückmeldung.

Vielen Dank.

VG: Lars

Cool wäre wenn man bei der Aggregation auch Max/Min bestimmen könnte.
Ein Peak wird durch eine Aggregation einfach „weg gebügelt“

@Schmiddy Die Variablenwerte werden durch die Verdichtung nicht angerührt. Du siehst also dann die 50. Im Hintergrund wird für das laufende Intervall übrigens bis auf den aktuellen Stand alles zusammengefasst. In dem Moment, in dem die 40 hinzugefügt wird, wird also für 30 Sekunden 20 abgespeichert und beim Hinzufügen der 50 mit der 40 verrechnet, also dann 25 für 40 Sekunden, etc. . Mit Abschluss der Minute wird dann auch die 50 mit reingerechnet und bleibt als Startwert für die nächste Minute bestehen.

@firebuster Das ist mit dem aktuellen Modell leider nicht wirklich möglich ohne die Verdichtung um weitere Werte zu erweitern, was natürlich dem Sinn der Verdichtung entgegen läuft… Solange du aber keine Reaggregation machst, bleiben die Werte für Min und Max korrekt erhalten.

2 „Gefällt mir“

Mega, genau so, wie ich es mir vorstelle.
Vielen lieben Dank an Dich :slight_smile:

@Niels: Könntet ihr bitte die Informationen über die mathematische Umsetzung auch in die Doku packen ?
Hab selbst schon öfter überlegt was ihr da nun genau macht und es nur wegen Unklarheiten dann doch nicht genutzt.

gruß
bb