Analytics-Datenansichten

In diesem Dokument werden Analyseansichten beschrieben und es wird erläutert, wann Sie sie erstellen sollten. Außerdem werden die Unterschiede zwischen Analyseansichten und Konzepten beschrieben, die Ihnen möglicherweise bekannt sind, z. B. gespeicherte Abfragen und Protokollansichten.

Übersicht

Eine Analytics-Ansicht 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 der Verwendung 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, um Ihre Abfragen zu vereinfachen oder den Zeitaufwand für das Schreiben von Abfragen zu reduzieren. Mit der Abfrage in einer Analytics-Ansicht können Sie beispielsweise nur bestimmte Felder beibehalten, Felder umbenennen, verschachtelte Felder in eine Spalte der obersten Ebene verschieben sowie gruppieren und aggregieren.

Analytics-Datenansichten sind keine materialisierten Ansichten. Eine Analyseansicht ist keine vorausberechnete 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.

Analytics-Ansichten sind leistungsfähiger als gespeicherte Abfragen. Das sind Abfragen, die Sie auf der Seite Log Analytics ausführen und dann speichern. Sie können eine gespeicherte Abfrage noch einmal ausführen, aber die Ergebnisse einer gespeicherten Abfrage können nicht abgefragt werden.

Arten von Analytics-Datenansichten

Es gibt zwei Arten von Analyseansichten: benutzerdefinierte und systemdefinierte:

  • Benutzerdefinierte Analytics-Datenansichten sind alle Analytics-Datenansichten, die Sie erstellen. Sie können benutzerdefinierte Analytics-Ansichten abfragen, bearbeiten und löschen.

  • Systemdefinierte Analyseansichten sind Analyseansichten, die vonGoogle Cloud -Diensten erstellt werden. Sie können systemdefinierte Analytics-Ansichten abfragen. Sie können sie jedoch nicht bearbeiten oder löschen.

Informationen zum Auflisten der Analytics-Ansichten in IhremGoogle Cloud -Projekt finden Sie unter Analytics-Ansichten auflisten.

Speicherort von Analyseansichten

Der Standort einer Analyseansicht wird durch den Standort der Ressourcen bestimmt, die abgefragt werden. Wenn beispielsweise in einer Analytics-Ansicht eine Log-Ansicht abgefragt wird, die sich am Standort global befindet, muss auch der Standort der Analytics-Ansicht global sein. Wenn Sie die Google Cloud Console verwenden, um eine Analyseansicht zu erstellen, wird der Standort automatisch festgelegt.

Beispielanwendungsfälle

Der Hauptvorteil einer Analyseansicht besteht darin, dass Sie die Daten nicht im vom System definierten Format abfragen müssen. In einer Analyseansicht können Sie ein Schema definieren, um Ihre Abfragen zu vereinfachen oder den Zeitaufwand für das Schreiben von Abfragen zu reduzieren.

Netzwerkdetails abfragen

Sie möchten die Netzwerkleistung mithilfe von 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.

Zur Vereinfachung Ihrer Analyseabfragen erstellen Sie die folgende Analyseansicht und geben ihr den Namen 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")

Bevor Sie die Abfrage verwenden, müssen Sie die Werte der folgenden Variablen festlegen:

  • 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 sich beispielsweise nur für den Namen der Instanz und die Menge der gesendeten Daten interessieren, 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 Analysen durchzuführen. Anstatt dass jedes Team die wöchentlichen Daten generiert, erstellen Sie eine Analyseansicht, in der die wöchentlichen Daten extrahiert werden. Andere Teams können die Analyseansicht abfragen und dann ihre Analysen durchführen.

Die folgende Abfrage veranschaulicht, wie Sie mit SQL die minimale, maximale und durchschnittliche Anfragelatenz 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:

  • In einer Analyseansicht können nur Log-Ansichten abgefragt werden.
  • Die übergeordnete Ressource einer Analyseansicht muss ein Google Cloud -Projekt sein.
  • Sie können eine Analyseansicht nur über die Seite Log Analytics abfragen und nur, wenn Sie die Abfrage-Engine Log Analytics (Standard) verwenden.
  • Alle Ansichten, die von einer Analytics-Ansicht abgefragt werden, müssen sich am selben Standort befinden.
  • Sie müssen die Google Cloud Console verwenden, um Ihre Analyseansichten zu erstellen oder zu verwalten.
  • Sie können maximal 100 Analytics-Ansichten pro Google Cloud Projekt erstellen.
  • Sie können maximal 50 Analytics-Ansichten pro Region erstellen.
  • Pro Google Cloud Projekt kann eine Analyseansicht in maximal 10 Regionen enthalten sein.

Nächste Schritte