Analytics-Datenansichten

In diesem Dokument werden Analyseansichten beschrieben und wann Sie sie erstellen sollten. Außerdem werden die Unterschiede zwischen Analyseansichten und gespeicherten Abfragen erläutert.

Übersicht

Eine Analyseansicht ist eine Ressource, die Sie abfragen können. Nachdem Sie eine Analyseansicht definiert haben, können Sie Abfragen schreiben, in denen Sie Ihre Analyseansicht in der FROM-Klausel angeben.

Der Hauptvorteil von Analyseansichten besteht darin, dass Sie die Daten nicht im Format einer API oder eines Systems abfragen müssen. Mit einer Analyseansicht können Sie ein Schema definieren, mit dem Sie Ihre Abfragen vereinfachen oder die Zeit für das Schreiben von Abfragen verkürzen können. Die Abfrage in einer Analyseansicht kann beispielsweise nur bestimmte Felder beibehalten, Felder umbenennen, verschachtelte Felder in eine Spalte der obersten Ebene verschieben sowie Gruppierungen und Aggregationen ausführen.

Analyseansichten sind keine materialisierten Ansichten. Eine Analyseansicht ist keine vorab berechnete Ansicht, in der Abfrageergebnisse regelmäßig im Cache gespeichert werden. Daher entspricht das Abfragen einer Analyseansicht dem Abfragen der Ansichten, die in der Abfrage der Analyseansicht aufgeführt sind.

Analyseansichten sind leistungsstärker als gespeicherte Abfragen. Gespeicherte Abfragen sind Abfragen, die Sie auf der Seite Observability Analytics ausführen und dann speichern. Sie können eine gespeicherte Abfrage noch einmal ausführen, aber die Ergebnisse einer gespeicherten Abfrage nicht abfragen.

Arten von Analyseansichten

Es gibt zwei Arten von Analyseansichten: benutzerdefinierte und systemdefinierte:

  • Benutzerdefinierte Analyseansichten sind alle Analyseansichten, die Sie erstellen. Sie können benutzerdefinierte Analyseansichten abfragen, bearbeiten und löschen.

  • Systemdefinierte Analyseansichten sind Analyseansichten, die von Google Cloud Diensten erstellt wurden. Sie können systemdefinierte Analyseansichten abfragen. Sie können sie jedoch nicht bearbeiten oder löschen.

Informationen zum Auflisten der Analyseansichten in Ihrem Google Cloud Projekt finden Sie unter Analyseansichten auflisten.

Speicherort von Analyseansichten

Der Speicherort einer Analyseansicht wird durch den Speicherort der Ressourcen bestimmt, die sie abfragt. Wenn eine Analyseansicht beispielsweise eine Logansicht abfragt, die sich am Speicherort global befindet, muss der Speicherort der Analyseansicht ebenfalls global sein. Wenn Sie die Google Cloud Console verwenden, um eine Analyseansicht zu erstellen, wird der Speicherort automatisch festgelegt.

Beispielanwendungsfälle

Der Hauptvorteil einer Analyseansicht besteht darin, dass Sie die Daten nicht im Format des Systems abfragen müssen. Mit einer Analyseansicht können Sie ein Schema definieren, mit dem Sie Ihre Abfragen vereinfachen oder die Zeit für das Schreiben von Abfragen verkürzen können.

Nach Netzwerkdetails suchen

Sie möchten die Netzwerkleistung mit VPC-Flusslogs analysieren. Sie müssen die allgemeine Netzwerkleistung analysieren und bestimmte Netzwerke, IP-Adressen und Hosts identifizieren. Diese Informationen werden in verschachtelten Feldern im Feld json_payload eines Logeintrags gespeichert.

Um Ihre Analyseabfragen zu vereinfachen, erstellen Sie die folgende Analyseansicht und nennen sie network_details:

SELECT
  -- Create a column for each network field.
  JSON_VALUE(resource.labels.subnetwork_name) subnetwork_name,
  JSON_VALUE(json_payload.src_instance.vm_name) vm_name,
  JSON_VALUE(json_payload.connection.src_ip) as src_ip,
  JSON_VALUE(json_payload.connection.src_port) as src_port,
  JSON_VALUE(json_payload.connection.dest_ip) as dest_ip,
  JSON_VALUE(json_payload.connection.dest_port) as dest_port,
  CAST(JSON_VALUE(json_payload.bytes_sent) as INT64) as bytes_sent,
  CAST(JSON_VALUE(json_payload.packets_sent) as INT64) as packets_sent
FROM
  -- Query one log view.
  `PROJECT_ID.LOCATION.BUCKET_ID.LOG_VIEW_ID`
WHERE
  -- Only query the VPC Flow Logs log.
  log_id = "compute.googleapis.com/vpc_flows"
  AND SEARCH(json_payload.reporter, "SRC")

Legen Sie vor der Verwendung der Abfrage Werte für die folgenden Variablen fest:

  • PROJECT_ID: Die Kennung des Projekts.
  • LOCATION: Der Speicherort der Logansicht.
  • BUCKET_ID: Der Name oder die ID des Log-Buckets.
  • LOG_VIEW_ID: Die Kennung der Logansicht. Sie ist auf 100 Zeichen begrenzt und darf nur Buchstaben, Ziffern, Unterstriche und Bindestriche enthalten.

Wenn Sie die Netzwerkleistung analysieren möchten, fragen Sie Ihre Analyseansicht ab. Wenn Sie beispielsweise nur an dem Namen der Instanz und der Menge der gesendeten Daten interessiert sind, können Sie die folgende Abfrage schreiben:

SELECT vm_name, bytes_sent, packets_sent,
FROM `analytics_view.my_project.global.network_details`
ORDER BY bytes_sent DESC
LIMIT 100

Basisabfrage für die API-Latenzanalyse

Mehrere Teams benötigen wöchentliche Leistungsdaten, um ihre Analyse abzuschließen. Anstatt dass jedes Team die wöchentlichen Daten generiert, erstellen Sie eine Analyseansicht, die die wöchentlichen Daten extrahiert. Andere Teams können die Analyseansicht abfragen und dann ihre Analyse durchführen.

Die folgende Abfrage zeigt, wie Sie mit SQL die minimale, maximale und durchschnittliche Anfrage-Latenz berechnen:

SELECT week, MIN(took_ms) as min, MAX(took_ms) AS max, AVG(took_ms) AS avg
FROM (
  SELECT TIMESTAMP_TRUNC(timestamp, WEEK) AS week,
  CAST( JSON_VALUE(json_payload, '$."http.resp.took_ms"') AS INT64) as took_ms
  FROM
    -- Query one log view.
    `PROJECT_ID.LOCATION.BUCKET_ID.LOG_VIEW_ID`
  WHERE json_payload IS NOT NULL
    AND SEARCH(labels,"frontend")
    AND JSON_VALUE(json_payload.message) = "request complete"
  ORDER BY took_ms DESC, timestamp ASC
)
GROUP BY week ORDER BY week

Beschränkungen

Für Analyseansichten gelten die folgenden Einschränkungen:

  • Eine Analyseansicht kann nur Logansichten abfragen.
  • Die übergeordnete Ressource einer Analyseansicht muss ein Google Cloud Projekt sein.
  • Sie können eine Analyseansicht nur über die Seite Observability Analytics und nur mit der Abfrage-Engine Observability Analytics (Standard) abfragen.
  • Alle Ansichten, die eine Analyseansicht abfragt, müssen sich am selben Speicherort befinden.
  • Sie müssen die Google Cloud Console verwenden, um Ihre Analyseansichten zu erstellen oder zu verwalten.
  • Sie können maximal 100 Analyseansichten pro Google Cloud Projekt erstellen.
  • Sie können maximal 50 Analyseansichten pro Region erstellen.
  • Pro Google Cloud Projekt können maximal 10 Regionen eine Analyseansicht enthalten.

Nächste Schritte