En este documento, se describen las vistas de estadísticas y cuándo te conviene crearlas. También se describen las diferencias entre las vistas de estadísticas y las consultas guardadas.
Descripción general
Una vista de estadísticas es un recurso que puedes consultar. Es decir, después de definir una vista de estadísticas, puedes escribir consultas en las que especificas tu vista de estadísticas en la cláusula FROM.
El principal beneficio de usar vistas de estadísticas es que no estás limitado a consultar los datos en el formato que define una API o un sistema. Una vista de estadísticas te permite definir un esquema, lo que te permite simplificar tus consultas o reducir el tiempo que dedicas a escribirlas. La consulta en una vista de estadísticas puede realizar acciones como retener solo campos específicos, cambiar el nombre de los campos, mover campos anidados a una columna de nivel superior y realizar agrupaciones y agregaciones.
Las vistas de estadísticas no son vistas materializadas. Una vista de estadísticas no es una vista precalculada que almacena en caché periódicamente los resultados de la consulta. Por lo tanto, consultar una vista de estadísticas equivale a consultar las vistas que se enumeran en la consulta de la vista de estadísticas.
Las vistas de estadísticas son más potentes que las consultas guardadas, que son consultas que ejecutas en la página Observability Analytics y, luego, guardas. Puedes volver a ejecutar una consulta guardada, pero no puedes consultar los resultados de una consulta guardada.
Tipos de vistas de estadísticas
Existen dos tipos de vistas de estadísticas: definidas por el usuario y definidas por el sistema:
Las vistas de estadísticas definidas por el usuario son todas las vistas de estadísticas que creas. Puedes consultar, editar y borrar vistas de estadísticas definidas por el usuario.
Las vistas de estadísticas definidas por el sistema son vistas de estadísticas creadas por Google Cloud los servicios. Puedes consultar vistas de estadísticas definidas por el sistema. Sin embargo, no puedes editarlas ni borrarlas.
Para obtener información sobre cómo enumerar las vistas de estadísticas de tu Google Cloud proyecto, consulta Enumera vistas de estadísticas.
Ubicación de las vistas de estadísticas
La ubicación de una vista de estadísticas está determinada por la ubicación de los recursos que consulta. Por ejemplo, si una vista de estadísticas consulta una vista de registros que se encuentra en la ubicación global, la ubicación de la vista de estadísticas también debe ser global. Cuando usas la Google Cloud consola
para crear una vista de estadísticas, la ubicación se establece automáticamente.
Ejemplos de casos de uso
El principal beneficio de una vista de estadísticas es que no estás limitado a consultar los datos en el formato que define el sistema. Una vista de estadísticas te permite definir un esquema, lo que te permite simplificar tus consultas o reducir el tiempo que dedicas a escribirlas.
Consulta para obtener detalles de la red
Quieres analizar el rendimiento de la red con los registros de flujo de VPC. Debes analizar el rendimiento general de la red y, también, identificar redes, direcciones IP y hosts específicos. Esta información se almacena en campos anidados en el campo json_payload de una entrada de registro.
Para simplificar tus consultas de análisis, crea la siguiente vista de estadísticas y asígnale el nombre 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")
Antes de usar la consulta, establece los valores de las siguientes variables:
- PROJECT_ID: Es el identificador del proyecto.
- LOCATION: Es la ubicación de la vista de registros.
- BUCKET_ID: Es el nombre o el ID del bucket de registros.
- LOG_VIEW_ID: Es el identificador de la vista de registros, que está limitado a 100 caracteres y solo puede incluir letras, dígitos, guiones bajos y guiones.
Cuando quieras analizar el rendimiento de la red, consulta tu vista de estadísticas. Por ejemplo, si solo te interesa el nombre de la instancia y la cantidad de datos enviados, puedes escribir la siguiente consulta:
SELECT vm_name, bytes_sent, packets_sent,
FROM `analytics_view.my_project.global.network_details`
ORDER BY bytes_sent DESC
LIMIT 100
Consulta base para el análisis de latencia de la API
Varios equipos necesitan datos de rendimiento semanales para completar su análisis. En lugar de que cada equipo genere los datos semanales, creas una vista de estadísticas que extrae los datos semanales. Otros equipos pueden consultar la vista de estadísticas y, luego, realizar su análisis.
En la siguiente consulta, se muestra cómo usar SQL para calcular la latencia mínima, máxima y promedio de la solicitud:
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
Limitaciones
Se aplican las siguientes limitaciones a las vistas de estadísticas:
- Una vista de estadísticas solo puede consultar vistas de registros.
- El recurso superior de una vista de estadísticas debe ser un Google Cloud proyecto de.
- Solo puedes consultar una vista de estadísticas con la página Observability Analytics y solo cuando usas el motor de consultas Observability Analytics (default).
- Todas las vistas que consulta una vista de estadísticas deben estar en la misma ubicación.
- Debes usar la Google Cloud consola para crear o administrar tus vistas de estadísticas.
- Puedes crear como máximo 100 vistas de estadísticas por Google Cloud proyecto.
- Puedes crear como máximo 50 vistas de estadísticas por región.
- Por Google Cloud proyecto, como máximo, 10 regiones pueden contener una vista de estadísticas.
¿Qué sigue?
- Crea, consulta y administra vistas de estadísticas
- Descripción general de consultas y análisis de registros
- Guarda y comparte una consulta en SQL