En este tema, aprenderás cómo implementar auditoría y monitoreo en BigQuery para asegurar la integridad, seguridad y eficiencia de tus datos y consultas. La auditoría y el monitoreo son componentes esenciales para mantener un entorno de datos seguro y optimizado.

Conceptos Clave

  1. Auditoría: Proceso de registrar y analizar las actividades realizadas en BigQuery para asegurar el cumplimiento de políticas y detectar actividades sospechosas.
  2. Monitoreo: Supervisión continua de las operaciones y el rendimiento de BigQuery para identificar y resolver problemas de manera proactiva.

Auditoría en BigQuery

  1. Habilitación de Auditoría

Google Cloud proporciona registros de auditoría a través de Cloud Audit Logs. Estos registros capturan todas las actividades administrativas y de acceso a datos en BigQuery.

Pasos para habilitar la auditoría:

  1. Accede a la consola de Google Cloud.
  2. Navega a "Logging" en el menú de navegación.
  3. Selecciona "Logs Router" para configurar los destinos de los registros.
  4. Configura los registros de auditoría para que se envíen a un bucket de Cloud Storage, un tema de Pub/Sub o una tabla de BigQuery.

  1. Tipos de Registros de Auditoría

  • Registros de Actividad Administrativa: Capturan operaciones administrativas como la creación o eliminación de conjuntos de datos y tablas.
  • Registros de Acceso a Datos: Capturan operaciones de lectura y escritura de datos, como consultas y cargas de datos.

  1. Consultar Registros de Auditoría

Puedes usar BigQuery para consultar los registros de auditoría almacenados en tablas de BigQuery.

SELECT
  protopayload_auditlog.methodName,
  protopayload_auditlog.resourceName,
  protopayload_auditlog.authenticationInfo.principalEmail,
  timestamp
FROM
  `my_project.my_dataset.cloudaudit_googleapis_com_data_access`
WHERE
  protopayload_auditlog.methodName = "jobservice.jobcompleted"
ORDER BY
  timestamp DESC
LIMIT 100;

Explicación del Código:

  • protopayload_auditlog.methodName: Método de la API que se invocó.
  • protopayload_auditlog.resourceName: Recurso en el que se realizó la operación.
  • protopayload_auditlog.authenticationInfo.principalEmail: Usuario que realizó la operación.
  • timestamp: Momento en que se realizó la operación.

Monitoreo en BigQuery

  1. Habilitación de Monitoreo

Google Cloud Monitoring proporciona herramientas para supervisar el rendimiento y la disponibilidad de BigQuery.

Pasos para habilitar el monitoreo:

  1. Accede a la consola de Google Cloud.
  2. Navega a "Monitoring" en el menú de navegación.
  3. Configura un "Workspace" para tu proyecto.
  4. Crea dashboards y alertas para supervisar métricas clave.

  1. Métricas Clave para Monitorear

  • Uso de CPU y Memoria: Para identificar cuellos de botella en el rendimiento.
  • Latencia de Consultas: Para asegurar que las consultas se ejecutan en un tiempo razonable.
  • Errores de Consultas: Para detectar y resolver problemas en las consultas.

  1. Configuración de Alertas

Configura alertas para recibir notificaciones cuando las métricas superen ciertos umbrales.

Ejemplo de Configuración de Alerta:

  1. Accede a "Monitoring" y selecciona "Alerting".
  2. Crea una política de alerta.
  3. Define una condición basada en una métrica, como la latencia de consultas.
  4. Configura las notificaciones para recibir alertas por correo electrónico o a través de otros canales.

Ejercicio Práctico

Ejercicio 1: Consultar Registros de Auditoría

  1. Objetivo: Consultar los registros de auditoría para identificar las operaciones de consulta realizadas en las últimas 24 horas.
  2. Instrucciones:
    • Accede a la consola de BigQuery.
    • Ejecuta la siguiente consulta:
SELECT
  protopayload_auditlog.methodName,
  protopayload_auditlog.resourceName,
  protopayload_auditlog.authenticationInfo.principalEmail,
  timestamp
FROM
  `my_project.my_dataset.cloudaudit_googleapis_com_data_access`
WHERE
  protopayload_auditlog.methodName = "jobservice.jobcompleted"
  AND timestamp >= TIMESTAMP_SUB(CURRENT_TIMESTAMP(), INTERVAL 1 DAY)
ORDER BY
  timestamp DESC;

Ejercicio 2: Configurar una Alerta de Latencia de Consultas

  1. Objetivo: Configurar una alerta para recibir notificaciones si la latencia de consultas supera los 5 segundos.
  2. Instrucciones:
    • Accede a Google Cloud Monitoring.
    • Crea una política de alerta con la métrica query_latency.
    • Define un umbral de 5 segundos.
    • Configura las notificaciones para recibir alertas por correo electrónico.

Conclusión

En esta sección, has aprendido cómo habilitar y utilizar la auditoría y el monitoreo en BigQuery para asegurar la integridad y el rendimiento de tus datos y consultas. La auditoría te permite rastrear y analizar las actividades en BigQuery, mientras que el monitoreo te ayuda a supervisar el rendimiento y detectar problemas de manera proactiva. Con estas herramientas, puedes mantener un entorno de datos seguro y eficiente.

En el próximo tema, exploraremos el Cumplimiento y Mejores Prácticas en BigQuery para asegurar que tu entorno de datos cumpla con las normativas y estándares de la industria.

Curso de BigQuery

Módulo 1: Introducción a BigQuery

Módulo 2: SQL Básico en BigQuery

Módulo 3: SQL Intermedio en BigQuery

Módulo 4: SQL Avanzado en BigQuery

Módulo 5: Gestión de Datos en BigQuery

Módulo 6: Optimización del Rendimiento de BigQuery

Módulo 7: Seguridad y Cumplimiento en BigQuery

Módulo 8: Integración y Automatización de BigQuery

Módulo 9: Machine Learning en BigQuery (BQML)

Módulo 10: Casos de Uso de BigQuery en el Mundo Real

© Copyright 2024. Todos los derechos reservados