Auf dieser Seite werden die Techniken zur Bearbeitung von Zeitachsendaten beschrieben. Dieser Inhalt basiert auf den Konzepten und Diskussionen unter Messwerte, Zeitachsen und Ressourcen.
Unformatierte Zeitachsendaten müssen bearbeitet werden, bevor sie analysiert werden können. Bei der Analyse werden häufig einige Daten herausgefiltert und zusammengefasst. Auf dieser Seite werden zwei primäre Techniken zum Verfeinern von Rohdaten beschrieben:
- Filtern, wodurch einige Daten nicht berücksichtigt werden.
- Aggregation: Kombiniert mehrere Daten in einem kleineren Satz zusammen mit den von Ihnen angegebenen Dimensionen.
Filter und Aggregation sind leistungsstarke Tools, mit denen Sie unter anderem interessante Muster erkennen und Trends oder Ausreißer in den Daten hervorheben können.
Auf dieser Seite werden die Konzepte hinter dem Filtern und Aggregieren beschrieben. Sie erfahren nicht, wie sie direkt angewendet werden. Verwenden Sie die Cloud Monitoring API oder die Diagramm- und Benachrichtigungstools in der Google Cloud Console, um Filter oder Aggregationen auf Ihre Zeitachsendaten anzuwenden. Beispiele finden Sie unter Beispielrichtlinien für APIs und Beispiele für die Monitoring Query Language.Unformatierte Zeitachsendaten
Die Menge der Messwert-Rohdaten in einer einzelnen Zeitachse kann enorm sein und einem Messwerttyp sind in der Regel viele Zeitachsen zugeordnet. Um den gesamten Datensatz auf Gemeinsamkeiten, Trends oder Ausreißer zu analysieren, müssen Sie die Zeitachsen in dem Satz verarbeiten. Andernfalls sind zu viele Daten zu berücksichtigen.
Zur Einführung in die Filterung und Aggregation wird in den Beispielen auf dieser Seite eine kleine Anzahl von Zeitachsen verwendet. Die folgende Abbildung zeigt beispielsweise einige Stunden Rohdaten aus drei Zeitachsen:
Jede Zeitachse ist farbig, rot, blau oder grün, um den Wert eines color
-Labels widerzuspiegeln. Für jeden Wert des Labels gibt es eine Zeitachse. Beachten Sie, dass die Werte nicht korrekt ausgerichtet sind, da sie zu unterschiedlichen Zeitpunkten aufgezeichnet wurden.
Wird gefiltert
Eines der leistungsstärksten Analysetools ist die Filterung, mit der Sie Daten ausblenden können, die Sie derzeit nicht interessieren.
Sie können Zeitachsendaten nach folgenden Kriterien filtern:
- Zeit:
- Wert eines oder mehrerer Labels.
Die folgende Abbildung zeigt das Ergebnis, wenn nur die roten Zeitachsen aus dem ursprünglichen Satz von Rohzeitachsen dargestellt werden (siehe Abbildung 1):
Diese durch Filtern ausgewählte Zeitachse wird im nächsten Abschnitt zur Veranschaulichung der Ausrichtung verwendet.
Aggregation
Eine weitere Möglichkeit, die Datenmenge zu reduzieren, besteht darin, sie zusammenzufassen oder zusammenzufassen. Die Aggregation umfasst zwei Aspekte:
- Ausrichtung oder Regularisierung der Daten in einer einzelnen Zeitachse
- Reduzierung oder Kombination mehrerer Zeitachsen
Sie müssen Zeitachsen ausrichten, bevor Sie sie reduzieren können. In den nächsten Abschnitten wird die Ausrichtung und Reduzierung von Zeitachsen beschrieben, in denen Ganzzahlwerte gespeichert werden. Diese allgemeinen Konzepte gelten auch, wenn eine Zeitreihe den Werttyp Distribution
hat. Allerdings gelten in diesem Fall zusätzliche Einschränkungen. Weitere Informationen finden Sie unter Verteilungsmesswerte.
Ausrichtung: Regularisierung innerhalb der Reihe
Der erste Schritt beim Aggregieren von Zeitachsendaten ist die Ausrichtung. Durch die Ausrichtung wird eine neue Zeitreihe erstellt, in der die Rohdaten zeitlich reguliert wurden, damit sie mit anderen ausgerichteten Zeitreihen kombiniert werden können. Bei der Ausrichtung werden Zeitachsen mit regelmäßig verteilten Daten erstellt.
Die Ausrichtung umfasst zwei Schritte:
Unterteilen der Zeitachsen in regelmäßige Zeitintervalle, auch Daten-Bucketing genannt. Das Intervall wird als Zeitraum, Ausrichtungszeitraum oder Ausrichtungsfenster bezeichnet.
Einen einzelnen Wert für die Punkte im Ausrichtungszeitraum berechnen Sie können wählen, wie dieser einzelne Punkt berechnet werden soll. Sie können alle Werte summieren, ihren Durchschnitt berechnen oder das Maximum verwenden.
Da die durch die Ausrichtung erstellte neue Zeitachse alle Werte aus der Rohzeitachse innerhalb des Ausrichtungszeitraums mit einem einzigen Wert darstellt, wird sie auch innerhalb der Serie oder innerhalb der Serie aufgerufen.
Zeitintervalle regulieren
Zur Analyse von Zeitachsendaten müssen die Datenpunkte auf gleichmäßig verteilten Zeitgrenzen verfügbar sein. Ausrichtung ist der Prozess, um dies zu erreichen.
Durch die Ausrichtung wird eine neue Zeitachse mit einem konstanten Intervall, dem Ausrichtungszeitraum, zwischen Datenpunkten erstellt. Die Ausrichtung wird normalerweise auf mehrere Zeitachsen angewendet, um eine weitere Bearbeitung zu ermöglichen.
In diesem Abschnitt werden die Ausrichtungsschritte veranschaulicht, indem sie auf eine einzelne Zeitreihe angewendet werden. In diesem Beispiel wird ein Ausrichtungszeitraum von einer Stunde auf die Beispielzeitachse in Abbildung 2 angewendet. Die Zeitachse enthält Daten, die über drei Stunden erfasst wurden. Die Aufteilung der Datenpunkte in einstündige Zeiträume führt in jedem Zeitraum zu folgenden Punkten:
Period | Werte |
---|---|
1:01–2:00 | 400, 350, 300, 200 |
2:01–3:00 | 200, 100 |
3:01–4:00 | 300, 250, 200 |
Ausrichtungszeiträume auswählen
Die Dauer des Ausrichtungszeitraums hängt von zwei Faktoren ab:
- Die Detaillierungsgrad dessen, was Sie in den Daten finden möchten.
- Der Stichprobenzeitraum der Daten. also wie oft es gemeldet wird.
In den folgenden Abschnitten werden diese Faktoren genauer erläutert.
Außerdem speichert Cloud Monitoring Messwertdaten für einen begrenzten Zeitraum. Der Zeitraum variiert je nach Messwerttyp. Weitere Informationen finden Sie unter Datenaufbewahrung. Der Aufbewahrungszeitraum ist der längste aussagekräftige Ausrichtungszeitraum.
Detaillierungsgrad
Wenn Sie wissen, dass etwas innerhalb weniger Stunden passiert ist, und Sie sich eingehender damit befassen möchten, sollten Sie für die Ausrichtung einen Zeitraum von einer Stunde oder einer bestimmten Anzahl von Minuten verwenden.
Wenn Sie Trends über einen längeren Zeitraum untersuchen möchten, ist ein längerer Ausrichtungszeitraum möglicherweise besser geeignet. Große Ausrichtungszeiträume sind in der Regel nicht geeignet, um kurzfristige anomale Bedingungen zu betrachten. Wenn Sie beispielsweise einen mehrwöchigen Ausrichtungszeitraum verwenden, ist das Vorhandensein einer Anomalie in diesem Zeitraum vielleicht noch erkennbar, aber die ausgerichteten Daten sind möglicherweise zu grob, um viel zu helfen.
Abtastrate
Die Häufigkeit, mit der die Daten geschrieben werden, die Stichprobenrate, kann sich auch auf die Auswahl des Ausrichtungszeitraums auswirken. Die Abtastraten für integrierte Messwerte können Sie der Liste der Messwerte entnehmen. Die folgende Abbildung zeigt eine Zeitreihe mit einer Abtastrate von einem Punkt pro Minute:
Wenn der Ausrichtungszeitraum mit dem Stichprobenzeitraum übereinstimmt, gibt es in jedem Ausrichtungszeitraum einen Datenpunkt. Das bedeutet, dass beispielsweise bei der Anwendung von max
-, mean
- oder min
-Alignern dieselbe Zeitachse ausgerichtet wird. In der folgenden Abbildung ist dieses Ergebnis zusammen mit der ursprünglichen Zeitachse als verblasste Linie dargestellt:
Weitere Informationen zur Funktionsweise von Ausrichtungsfunktionen finden Sie unter Aligner.
Wenn für den Ausrichtungszeitraum zwei Minuten festgelegt wurden oder der Stichprobenzeitraum verdoppelt wurde, gibt es für jeden Zeitraum zwei Datenpunkte. Wenn die Aligner max
, mean
oder min
auf die Punkte innerhalb des zweiminütigen Ausrichtungszeitraums angewendet werden, weichen die resultierenden Zeitachsen ab. In der folgenden Abbildung sind diese Ergebnisse zusammen mit der ursprünglichen Zeitachse als verblasste Linie dargestellt:
Wenn Sie einen Ausrichtungszeitraum auswählen, sollte dieser länger als der Stichprobenzeitraum sein, aber kurz genug, um relevante Trends anzuzeigen. Möglicherweise müssen Sie experimentieren, um einen geeigneten Ausrichtungszeitraum zu ermitteln. Wenn beispielsweise Daten mit einer Rate von einem Punkt pro Tag erfasst werden, ist ein Ausrichtungszeitraum von einer Stunde zu kurz, um nützlich zu sein: Für die meisten Stunden gibt es keine Daten.
Ausrichter
Nachdem die Daten in Ausrichtungszeiträume aufgeteilt wurden, wählen Sie eine Funktion, den Ausrichter, aus, der auf die Datenpunkte in diesem Zeitraum angewendet werden soll. Der Ausrichter erzeugt einen einzelnen Wert, der am Ende jedes Ausrichtungszeitraums platziert wird.
Zu den Ausrichtungsoptionen gehören das Addieren der Werte oder das Ermitteln des Maximal-, Minimal- oder Mittelwerts der Werte, das Suchen eines ausgewählten Perzentilwerts, das Zählen der Werte usw. Die Cloud Monitoring API unterstützt eine große Anzahl von Ausrichtungsfunktionen, die weitaus mehr sind als die hier gezeigte einfache Auswahl. Die vollständige Liste finden Sie unter Aligner
. Eine Beschreibung der Raten- und Delta-Aligner, die Zeitachsendaten transformieren, finden Sie unter Arten, Typen und Umwandlungen.
Wenn Sie beispielsweise die gruppierten Daten aus der Rohzeitachse verwenden (siehe Abbildung 1), wählen Sie einen Ausrichter aus und wenden Sie ihn auf die Daten in jedem Bucket an. Die folgende Tabelle zeigt die Rohwerte und die Ergebnisse von drei verschiedenen Ausrichtern: Maximalwert, Mittelwert und Mindestwert:
Period | Werte | Ausrichter: Maximalwert | Ausrichter: Mittelwert | Ausrichter: Mindestwert |
---|---|---|---|---|
1:01–2:00 | 400, 350, 300, 200 | 400 | 312.5 | 200 |
2:01–3:00 | 200, 100 | 200 | 150 | 100 |
3:01–4:00 | 300, 250, 200 | 300 | 250 | 200 |
Die folgende Abbildung zeigt die Ergebnisse der Anwendung der Ausrichtungsoptionen max., Mittelwert oder min. mit einem Ausrichtungszeitraum von einer Stunde auf die ursprüngliche rote Zeitachse (in der Abbildung durch die verblasste Linie dargestellt):
Einige andere Ausrichter
Die folgende Tabelle zeigt dieselben Rohwerte und die Ergebnisse von drei anderen Ausrichtern:
- Count zählt die Anzahl der Werte im Ausrichtungszeitraum.
- Summe addiert alle Werte im Ausrichtungszeitraum.
- Nächste Ältere verwendet den neuesten Wert im Zeitraum als Ausrichtungswert.
Period | Werte | Ausrichter: Anzahl | Ausrichter: Summe | Ausrichter: nächst Ältere |
---|---|---|---|---|
1:01–2:00 | 400, 350, 300, 200 | 4 | 1250 | 200 |
2:01–3:00 | 200, 100 | 2 | 300 | 100 |
3:01–4:00 | 300, 250, 200 | 3 | 750 | 200 |
Diese Ergebnisse werden nicht in einem Diagramm angezeigt.
Reduktion: Kombination von Zeitachsen
Der nächste Schritt, die Reduzierung, ist das Kombinieren mehrerer ausgerichteter Zeitachsen zu einer neuen Zeitachse. In diesem Schritt werden alle Werte an der Grenze des Ausrichtungszeitraums durch einen einzelnen Wert ersetzt. Da die Reduzierung über verschiedene Zeitachsen hinweg funktioniert, wird sie auch als seriöse Aggregation bezeichnet.
Reduzierungen
Ein Reduzierer ist eine Funktion, die auf die Werte in einer Reihe von Zeitachsen angewendet wird, um einen einzelnen Wert zu erzeugen.
Zu den Reduzierungsoptionen gehören das Addieren der ausgerichteten Werte oder das Ermitteln des Maximal-, Minimal- oder Mittelwerts der Werte. Die Cloud Monitoring API unterstützt eine Vielzahl von Reduzierungsfunktionen. Die vollständige Liste finden Sie unter Reducer
.
Die Liste der Reduzierer entspricht der Liste der Ausrichter.
Zeitachsen müssen ausgerichtet werden, bevor sie reduziert werden können. Die folgende Abbildung zeigt die Ergebnisse, bei denen alle drei Rohzeitachsen (aus Abbildung 1) in 1-Stunden-Zeiträume mit dem Mittelwert ausgerichtet werden:
Die Werte aus den drei Mittelwert-Zeitachsen (siehe Abbildung 4) sind in der folgenden Tabelle aufgeführt:
Begrenzung der Ausrichtung | Rot | Blau | Grün |
---|---|---|---|
2:00 | 312.5 | 133.3 | 400 |
3:00 | 150 | 283.3 | 433.3 |
4:00 | 250 | 300 | 350 |
Verwenden Sie die ausgerichteten Daten in der obigen Tabelle, um einen Reduzierer auszuwählen und auf die Werte anzuwenden. Die folgende Tabelle zeigt die Ergebnisse der Anwendung verschiedener Reduzierungen auf die Mittelwertdaten:
Begrenzung der Ausrichtung | Reduzierer: Maximalwert | Reduzierer: Mittelwert | Reduzierer: Mindestwert | Reduzierer: Summe |
---|---|---|---|---|
2:00 | 400 | 281.9 | 133.3 | 845.8 |
3:00 | 433.3 | 288.9 | 150 | 866.7 |
4:00 | 350 | 300 | 250 | 900 |
Standardmäßig wird die Reduzierung auf alle Zeitachsen angewendet, sodass nur eine Zeitachse entsteht. Die folgende Abbildung zeigt das Ergebnis der Aggregation der drei mit Mittelwert ausgerichteten Zeitachsen mit dem maximalen Reduzierer, der die höchsten Mittelwerte über die Zeitachse liefert:
Die Reduzierung kann auch mit einer Gruppierung kombiniert werden, bei der Zeitachsen in Kategorien organisiert werden und der Reduzierer auf die Zeitachsen in jeder Gruppe angewendet wird.
Gruppierung
Mit der Gruppierung können Sie einen Reduzierer auf Teilmengen Ihrer Zeitachse und nicht auf die gesamte Reihe von Zeitachsen anwenden. Um Zeitachsen zu gruppieren, wählen Sie ein oder mehrere Labels aus. Die Zeitachsen werden dann basierend auf ihren Werten für die ausgewählten Labels gruppiert. Durch Gruppierung entsteht eine Zeitreihe für jede Gruppe.
Wenn ein Messwerttyp Werte für die Labels zone
und color
aufzeichnet, können Sie Zeitachsen nach einem oder beiden Labels gruppieren. Wenn Sie den Reduzierer anwenden, wird jede Gruppe auf eine einzelne Zeitachse reduziert. Wenn Sie nach Farbe gruppieren, erhalten Sie eine Zeitachse für jede Farbe, die in den Daten dargestellt wird.
Wenn Sie nach Zone gruppieren, erhalten Sie eine Zeitachse für jede Zone, die in den Daten angezeigt wird. Wenn Sie nach beiden gruppieren, erhalten Sie für jede Kombination aus Farben und Zonen eine Zeitachse.
Angenommen, Sie haben viele Zeitachsen mit den Werten "rot", "blau" und "grün" für das Label color
erfasst. Nachdem alle Zeitachsen ausgerichtet wurden, können sie nach color
-Wert gruppiert und dann nach Gruppe reduziert werden. Daraus ergeben sich drei farbspezifische Zeitachsen:
Im Beispiel wird nicht der verwendete Ausrichter oder der verwendete Reduzierer angegeben. Der Punkt hier ist, dass Sie durch Gruppieren einen großen Satz von Zeitachsen in einen kleineren Satz reduzieren können, wobei jede Zeitachse eine Gruppe mit einem gemeinsamen Attribut darstellt, in diesem Beispiel dem Wert des Labels color
.
Sekundäre Aggregation
Cloud Monitoring führt zwei Aggregationsschritte aus.
Bei der primären Aggregation werden die gemessenen Daten normalisiert und dann mithilfe eines Reducers kombiniert. Wenn Sie die Gruppierung verwenden, kann dies zu mehr als einer Zeitachse führen.
Mit der sekundären Aggregation, die auf die Ergebnisse des primären Aggregationsschritts angewendet wird, können Sie die gruppierten Zeitreihen mithilfe eines zweiten Reduzierers zu einem Ergebnis kombinieren.
Die folgende Tabelle zeigt die Werte der gruppierten Zeitachsen (siehe Abbildung 6):
Begrenzung der Ausrichtung | Rote Gruppe | Blaue Gruppe | Grüne Gruppe |
---|---|---|---|
2:00 | 400 | 150 | 450 |
3:00 | 200 | 350 | 450 |
4:00 | 300 | 300 | 400 |
Diese drei bereits verkürzten Zeitachsen können durch sekundäre Aggregation noch weiter reduziert werden. Die folgende Tabelle zeigt die Ergebnisse der Anwendung ausgewählter Reduzierungen:
Begrenzung der Ausrichtung | Reduzierer: Maximalwert | Reduzierer: Mittelwert | Reduzierer: Mindestwert | Reduzierer: Summe |
---|---|---|---|---|
2:00 | 450 | 333.3 | 150 | 1000 |
3:00 | 450 | 333.3 | 200 | 1000 |
4:00 | 400 | 333.3 | 300 | 1000 |
Die folgende Abbildung zeigt das Ergebnis der Aggregation der drei gruppierten Reihen mit dem Mittelwert:
Arten, Typen und Conversions
Zur Erinnerung: Die Datenpunkte in einer Zeitachse sind durch eine Messwertart und einen Werttyp gekennzeichnet. Weitere Informationen finden Sie unter Werttypen und Messwertarten. Die entsprechenden Ausrichter und Redigenten für einen Datensatz sind möglicherweise nicht für einen anderen Datensatz geeignet. Zum Beispiel eignet sich ein Ausrichter oder Reduzierer, der die Anzahl falscher Werte zählt, für boolesche Daten, aber nicht für numerische Daten. Gleichermaßen ist ein Ausrichter oder Reduzierer, der einen Mittelwert berechnet, auf numerische Daten anwendbar, aber nicht auf boolesche Daten.
Einige Ausrichtungs- und Reduzierungsfunktionen können auch verwendet werden, um entweder den Messwerttyp oder den Werttyp von Daten in einer Zeitachse explizit zu ändern. Einige, z. B. ALIGN_COUNT
, tun dies als Nebeneffekt.
Messwertart: Ein kumulativer Messwert ist ein Messwert, bei dem jeder Wert die Summe seit Beginn der Werterfassung darstellt. Sie können kumulative Messwerte nicht direkt in Diagrammen verwenden, aber Sie können Delta-Messwerte verwenden, bei denen jeder Wert die Änderung seit der vorherigen Messung darstellt.
Sie können auch kumulative und Delta-Messwerte in Messwerte umwandeln. Beispiel: Ein Deltamesswert, dessen Zeitachse so lautet:
(Startzeit, Endzeit] (Minuten) Wert (MiB) (0, 2] 8 (2, 5] 6 (6, 9] 9 Angenommen, Sie haben einen
ALIGN_DELTA
-Aligner und einen Ausrichtungszeitraum von drei Minuten ausgewählt. Da der Ausrichtungszeitraum nicht mit (Startzeit, Ende] für jede Stichprobe übereinstimmt, wird eine Zeitachse mit interpolierten Werten erstellt. In diesem Beispiel umfasst die interpolierte Zeitachse Folgendes:(Startzeit, Endzeit] (Minuten) Interpolierter Wert (MiB) (0, 1] 4 (1, 2] 4 (2, 3] 2 (3, 4] 2 (4, 5] 2 (5, 6] 0 (6, 7] 3 (7, 8] 3 (8, 9] 3 Als Nächstes werden alle Punkte innerhalb des dreiminütigen Ausrichtungszeitraums addiert, um die ausgerichteten Werte zu generieren:
(Startzeit, Endzeit] (Minuten) Ausgerichteter Wert (MiB) (0, 3] 10 (3, 6] 4 (6, 9] 9 Für
ALIGN_RATE
ist der Vorgang identisch, außer dass die ausgerichteten Werte durch den Ausrichtungszeitraum geteilt werden. In diesem Beispiel beträgt der Ausrichtungszeitraum drei Minuten. Die ausgerichteten Zeitachsen haben dabei die folgenden Werte:(Startzeit, Endzeit] (Minuten) Ausgerichteter Wert (MiB/Sekunde) (0, 3] 0.056 (3, 6] 0.022 (6, 9] 0.050 Für die grafische Darstellung eines kumulativen Messwerts muss dieser in einen Deltamesswert oder in einen Ratenmesswert umgewandelt werden. Der Vorgang für kumulative Messwerte ist mit dem vorherigen Vorgehen identisch. Sie können eine Zeitachse vom Typ „Delta“ aus einer kumulativen Zeitachse durch Ermittlung der Differenz von benachbarten Begriffen berechnen.
Werttyp: Bei einigen Ausrichtern und Reduzierern bleibt der Werttyp der Eingabedaten unverändert. Ganzzahldaten sind beispielsweise nach der Ausrichtung immer noch Ganzzahldaten. Andere Ausrichter und Reduzierer konvertieren Daten von einem Typ in einen anderen. Dies bedeutet, dass die Informationen auf eine Weise analysiert werden können, die nicht dem ursprünglichen Werttyp entspricht.
Beispielsweise kann der
REDUCE_COUNT
-Reduzierer auf numerische, boolesche, String- und Verteilungsdaten angewendet werden. Das Ergebnis ist jedoch eine 64-Bit-Ganzzahl, die die Anzahl der Werte im Punkt zählt.REDUCE_COUNT
kann nur auf Gauge- und Delta-Metriken angewendet werden und lässt die Art der Metrik unverändert.
In den Referenztabellen für Aligner
und Reducer
ist angegeben, für welche Art von Daten jeweils eine Conversion geeignet ist. Hier ist beispielsweise der Eintrag für ALIGN_DELTA
: