Transformationen

Daten in Grafana transformieren und aufbereiten.

Was du lernst

  • Verstehen, was Transformationen bewirken und wann sie sinnvoll sind

  • Gängige Transformationen anwenden (Reduce, Organize, Filter, Rename)

  • Regressionsanalyse für Trendlinien nutzen

  • Daten aus mehreren Queries kombinieren

  • Transformationen verketten, um Daten komplex aufzubereiten

Voraussetzungen

  • Teil 1 und Teil 2 der Tutorials abgeschlossen

  • Grundkenntnisse in der Panel-Erstellung


Überblick

Transformationen bearbeiten Daten nach der Abfrage, aber bevor sie visualisiert werden. Damit lassen sich:

  • Daten aggregieren -- Minimum, Maximum, Mittelwert über die Zeit berechnen

  • Daten reorganisieren -- Felder umbenennen, Spalten umsortieren, Daten ausblenden

  • Daten kombinieren -- Queries zusammenführen, Tabellen verknüpfen

  • Trends analysieren -- Regressionslinien hinzufügen, Differenzen berechnen

  • Daten filtern -- Nur bestimmte Felder oder Werte anzeigen

Wann Transformationen sinnvoll sind

Szenario
Transformation

Zusammenfassungsstatistiken in einer Tabelle anzeigen

Reduce

Technische Feldnamen umbenennen

Rename by regex / Organize fields

Trendlinie zu einer Zeitreihe hinzufügen

Regression

Daten aus zwei Queries kombinieren

Merge / Join

Nur bestimmte Variablen anzeigen

Filter by name


Der Transform-Tab

Transformationen aufrufen

  1. Bearbeite ein Panel

  2. Klicke auf den Transform-Tab (zwischen Query und Alert)

    [SCREENSHOT: Transform tab location in panel editor]

  3. Klicke auf + Add transformation

  4. Wähle eine Transformation aus der Liste

    [SCREENSHOT: Transformation selection list]

Reihenfolge der Transformationen

Transformationen werden von oben nach unten ausgeführt. Du kannst:

  • Transformationen per Drag-and-Drop umsortieren

  • Eine Transformation deaktivieren (Augen-Symbol) zum Testen

  • Transformationen löschen (Papierkorb-Symbol)

    [SCREENSHOT: Multiple transformations with drag handles]

Wichtig: Die Reihenfolge beeinflusst das Ergebnis. Ein Filter vor Reduce liefert andere Ergebnisse als danach.


Gängige Transformationen

Reduce

Wandelt Zeitreihendaten in aggregierte Werte um, ideal für Übersichtstabellen.

Funktionsweise:

  • Nimmt alle Datenpunkte jeder Zeitreihe

  • Berechnet die ausgewählten Statistiken

  • Gibt pro Zeitreihe eine Zeile aus

Konfiguration:

  1. Füge die Transformation Reduce hinzu

  2. Wähle die Berechnungen:

    Berechnung
    Beschreibung

    Last *

    Letzter Wert (nicht null)

    First *

    Erster Wert (nicht null)

    Min

    Minimum

    Max

    Maximum

    Mean

    Mittelwert

    Sum

    Summe aller Werte

    Count

    Anzahl der Datenpunkte

    Range

    Max - Min

    Difference

    Last - First

    Difference percent

    Prozentuale Veränderung

    All values

    Array aller Werte

    [SCREENSHOT: Reduce transformation options]

Beispiel: Eine Zeitreihe in eine Übersichtstabelle mit aktuellem Wert, Minimum und Maximum pro Variable umwandeln.


Organize Fields by Name

Spalten umbenennen, umsortieren und ausblenden, unverzichtbar für aufgeräumte Tabellen.

Funktionsweise:

  • Listet alle Felder der Daten auf

  • Ermöglicht Umbenennen, Umsortieren oder Ausblenden jedes Felds

Konfiguration:

  1. Füge die Transformation Organize fields by name hinzu

  2. Für jedes Feld:

    • Rename: Neuen Anzeigenamen eingeben

    • Hide: Augen-Symbol klicken zum Ausblenden

    • Reorder: Per Drag-and-Drop umsortieren

    [SCREENSHOT: Organize fields transformation with renamed columns]

Beispiel: "92694f02-a0c7-4900-8758-c9a2eb4324f0" in "Durchsatz" umbenennen.


Rename by Regex

Mehrere Felder gleichzeitig mit Musterabgleich umbenennen.

Funktionsweise:

  • Gleicht Feldnamen gegen ein Regex-Muster ab

  • Ersetzt durch einen neuen Namen (Capture-Gruppen möglich)

Konfiguration:

Einstellung
Beschreibung

Match

Regex-Muster zum Abgleich

Replace

Ersetzungstext ($1, $2 für Gruppen)

Beispiele:

Match
Replace
Vorher
Nachher

(.*)

$1 (kg/h)

Durchsatz

Durchsatz (kg/h)

Extruder (.) Durchsatz

Ext $1

Extruder A Durchsatz

Ext A

\(Soll\)

(Target)

Speed (Soll)

Speed (Target)

[SCREENSHOT: Rename by regex transformation]


Filter by Name

Nur bestimmte Felder in der Ausgabe anzeigen.

Funktionsweise:

  • Felder zum Ein- oder Ausschließen auswählen

  • Andere Felder werden in der Visualisierung ausgeblendet

Konfiguration:

  1. Füge die Transformation Filter by name hinzu

  2. Wähle den Modus:

    • Include: Nur ausgewählte Felder anzeigen

    • Exclude: Ausgewählte Felder ausblenden

  3. Felder per Checkboxen oder Regex auswählen

    [SCREENSHOT: Filter by name transformation]

Beispiel: Aus einer Query, die viele Variablen zurückgibt, nur Temperaturfelder anzeigen.


Filter Data by Values

Zeilen anhand von Feldwerten filtern.

Funktionsweise:

  • Prüft jede Zeile gegen Bedingungen

  • Entfernt Zeilen, die nicht passen

Konfiguration:

Einstellung
Beschreibung

Filter type

Include / Exclude

Condition

Match all / Match any

Field

Zu prüfendes Feld

Match

Vergleichstyp (Greater, Less, Equal usw.)

Value

Vergleichswert

[SCREENSHOT: Filter data by values transformation]

Beispiel: Nur Datenpunkte anzeigen, bei denen die Temperatur > 200 °C liegt.


Regressionsanalyse

Trendlinien hinzufügen, um die Entwicklung von Daten über die Zeit zu erkennen.

Regressionslinie hinzufügen

  1. Erstelle ein Time-Series-Panel mit deinen Daten

  2. Füge die Transformation Regression analysis hinzu

  3. Konfiguriere:

    Einstellung
    Beschreibung

    X field

    Zeitfeld (üblicherweise "time")

    Y field

    Wertfeld für die Analyse

[SCREENSHOT: Regression transformation configuration]

  1. Eine neue Zeitreihe mit der linearen Trendlinie erscheint

  2. Füge ein Override hinzu, um die Regressionslinie auf derselben Achse wie die Originaldaten zu platzieren. Die Regressionslinie hat keine Einheit und wird standardmäßig auf einer separaten Y-Achse dargestellt. Das kann zu einem falschen visuellen Eindruck führen. Wenn du die Einheit der Regression auf die gleiche Einheit wie die Eingangsvariable setzt, werden beide auf derselben Achse angezeigt.

Ergebnisse interpretieren

Die Regressionslinie zeigt den Gesamttrend:

  • Steigende Linie: Werte nehmen über die Zeit zu

  • Fallende Linie: Werte nehmen über die Zeit ab

  • Flache Linie: Werte sind stabil

[SCREENSHOT: Time series with original data and regression line]

Trendlinie gestalten

Verwende Overrides, um die Regressionslinie anders darzustellen:

  1. Füge ein Override für die Regression-Zeitreihe hinzu (oft gleicher Name wie das Original + Suffix)

    • Fields with name matching regex .*predicted.*

  2. Setze die Einheit auf die gleiche wie die Originaldaten (für die gleiche Achse)

  3. Wähle eine andere Farbe (z. B. Rot für den Trend)

  4. Setze den Linienstil auf gestrichelt

  5. Reduziere die Deckkraft


Daten kombinieren

Daten aus mehreren Queries oder Quellen zusammenführen.

Merge

Fasst alle Zeitreihen in einer einzelnen Tabelle zusammen.

Funktionsweise:

  • Nimmt alle Felder aus allen Queries

  • Erstellt eine Tabelle mit allen Spalten

  • Richtet Zeilen anhand der Zeit aus (bei Zeitreihen)

Konfiguration:

  1. Füge die Transformation Merge hinzu

  2. Keine weiteren Einstellungen nötig

[SCREENSHOT: Merge transformation combining two queries]

Anwendungsfall: Daten von zwei Maschinen in einer Vergleichstabelle zusammenführen.


Join by Field

Tabellen über ein gemeinsames Feld verknüpfen.

Funktionsweise:

  • Gleicht Zeilen ab, bei denen das Join-Feld denselben Wert hat

  • Erstellt eine neue Tabelle mit Spalten aus beiden Quellen

Konfiguration:

Einstellung
Beschreibung

Field

Feld, über das verknüpft wird

Mode

Inner, Left outer, Right outer

Join-Modi:

Modus
Ergebnis

Inner

Nur Zeilen, die in beiden Tabellen vorhanden sind

Left outer

Alle aus der ersten Tabelle, passende aus der zweiten

Right outer

Alle aus der zweiten Tabelle, passende aus der ersten

[SCREENSHOT: Join by field transformation]

Anwendungsfall: Maschinendaten mit Produktdaten über die Auftrags-ID verknüpfen.


Concatenate Fields

Mehrere Zeitreihen zu einer zusammenführen.

Funktionsweise:

  • Stapelt Daten aus mehreren Zeitreihen vertikal übereinander

  • Erzeugt eine einzelne zusammengeführte Zeitreihe

Konfiguration:

  1. Füge die Transformation Concatenate fields hinzu

  2. Wähle den Frame-Namen für das Ergebnis

Anwendungsfall: Drei separate Durchsatz-Queries in einer kombinierten Zeitreihe zusammenführen.


Transformationsketten

Komplexe Datenaufbereitung erfordert oft mehrere Transformationen nacheinander.

Beispiel: Übersichtstabelle mit Trendindikatoren

Ziel: Eine Tabelle mit Variablennamen, aktuellen Werten, Min/Max und Sparklines anzeigen.

Transformationen (in dieser Reihenfolge):

  1. Reduce

    • Berechnungen: Last *, Min, Max, All values

  2. Organize fields by name

    • "Field" umbenennen in "Variable"

    • "All values" umbenennen in "Trend"

    • Spalten umsortieren

  3. Filter by name (falls nötig)

    • Zwischenfelder ausblenden

[SCREENSHOT: Multiple transformations creating summary table]

Beispiel: Gefilterter Vergleich

Ziel: Durchsatz zweier Extruder vergleichen, aber nur Zeiträume anzeigen, in denen beide über 50 kg/h liegen.

Transformationen (in dieser Reihenfolge):

  1. Merge (beide Queries zusammenführen)

  2. Filter data by values

    • Extruder A Durchsatz > 50

    • UND Extruder B Durchsatz > 50


Praxisbeispiele

Beispiel 1: Variablen-Übersichts-Dashboard

Eine Tabelle erstellen, die alle Maschinenvariablen mit Statistiken anzeigt.

Aufbau:

  1. Mehrere Variablen einer Maschine abfragen

  2. Visualisierung auf Table setzen

Transformationen:

Schritt
Transformation
Konfiguration

1

Reduce

Last *, Min, Max, Mean, All values

2

Organize fields

Field in Variable umbenennen, All values in Sparkline umbenennen

Ergebnis: Aufgeräumte Übersichtstabelle mit Sparklines.

[SCREENSHOT: Final summary table panel]


Beispiel 2: Trendanalyse

Durchsatz mit Trendlinie anzeigen, um Produktionsmuster zu erkennen.

Aufbau:

  1. Durchsatz-Variable abfragen

  2. Visualisierung auf Time Series setzen

Transformationen:

Schritt
Transformation
Konfiguration

1

Regression analysis

X: time, Y: Durchsatz-Feld

Styling:

  • Regression-Zeitreihe mit roter, gestrichelter Linie per Override gestalten

[SCREENSHOT: Time series with regression trend line]


Beispiel 3: Maschinenvergleichstabelle

Dieselbe Kennzahl über mehrere Maschinen hinweg vergleichen.

Aufbau:

  1. Query A: Durchsatz Maschine 1

  2. Query B: Durchsatz Maschine 2

  3. Visualisierung auf Table setzen

Transformationen:

Schritt
Transformation
Konfiguration

1

Reduce

Last *

2

Merge

(beide Queries zusammenführen)

3

Organize fields

In lesbare Namen umbenennen

[SCREENSHOT: Multi-machine comparison table]


Tipps und Best Practices

Hinweise zur Leistung

  • Transformationen werden im Browser ausgeführt

  • Große Datenmengen können das Rendering verlangsamen

  • Wenn möglich, schon auf Query-Ebene filtern (effizienter)

Transformationen debuggen

  1. Transformationen einzeln hinzufügen

  2. Den Table view-Toggle nutzen, um Zwischenergebnisse zu prüfen

  3. Die Debug-Transformation verwenden, um die Datenstruktur zu inspizieren

Gängige Muster

Muster
Transformationen

Zeitreihe in Übersichtstabelle

Reduce, dann Organize fields

Sparklines hinzufügen

Reduce (mit All values), dann Override auf Zelltyp

Trendlinie

Regression analysis

Feldnamen bereinigen

Rename by regex oder Organize fields

Maschinen vergleichen

Merge, dann Organize fields


Zusammenfassung

Du hast gelernt, Daten mit Transformationen aufzubereiten:

  • Daten mit Reduce aggregieren

  • Felder organisieren und umbenennen

  • Daten nach Name oder Wert filtern

  • Regressions-Trendlinien hinzufügen

  • Daten aus mehreren Queries kombinieren

  • Transformationen für komplexe Aufbereitungen verketten


Wie geht es weiter?

Du hast Teil 3 (Fortgeschrittene Funktionen) abgeschlossen. Weiter mit:


Kurzreferenz

Gängige Transformationen

Transformation
Zweck

Reduce

Zeitreihen zu Statistiken aggregieren

Organize fields

Spalten umbenennen, umsortieren, ausblenden

Rename by regex

Musterbasiertes Umbenennen

Filter by name

Bestimmte Felder ein-/ausblenden

Filter data by values

Zeilen nach Bedingung entfernen

Regression analysis

Trendlinie hinzufügen

Merge

Queries horizontal zusammenführen

Join by field

Tabellen über gemeinsames Feld verknüpfen

Concatenate

Daten vertikal stapeln

Reduce-Berechnungen

Berechnung
Beschreibung

Last *

Letzter Wert (nicht null)

First *

Erster Wert (nicht null)

Min

Minimum

Max

Maximum

Mean

Mittelwert

Sum

Summe

Count

Anzahl der Datenpunkte

Range

Max - Min

Difference

Last - First

Difference percent

Prozentuale Veränderung

All values

Array (für Sparklines)

Tipps zur Transformationsreihenfolge

Ziel
Reihenfolge

Erst filtern, dann aggregieren

Filter, dann Reduce

Erst aggregieren, dann filtern

Reduce, dann Filter

Für die Anzeige umbenennen

Letzte Transformation

Probleme analysieren

Debug-Transformation hinzufügen

Zuletzt aktualisiert