Introducció

En aquest tema, explorarem les capacitats d'auditoria i monitoratge de BigQuery. Aquestes funcionalitats són essencials per garantir la seguretat, el compliment normatiu i l'eficiència operativa de les teves dades i consultes a BigQuery.

Objectius

  • Comprendre la importància de l'auditoria i el monitoratge.
  • Aprendre a configurar i utilitzar les eines d'auditoria de BigQuery.
  • Aprendre a monitorar l'ús i el rendiment de BigQuery.

  1. Importància de l'auditoria i el monitoratge

Auditoria

L'auditoria és crucial per:

  • Seguretat: Identificar accessos no autoritzats i activitats sospitoses.
  • Compliment: Assegurar-se que les operacions compleixen amb les normatives legals i de l'empresa.
  • Transparència: Proporcionar un registre detallat de totes les operacions realitzades.

Monitoratge

El monitoratge és important per:

  • Rendiment: Identificar i resoldre colls d'ampolla en les consultes.
  • Costos: Controlar l'ús de recursos per gestionar els costos.
  • Disponibilitat: Assegurar que els serveis estan funcionant correctament i detectar problemes proactivament.

  1. Configuració de l'auditoria a BigQuery

Registres d'auditoria de Google Cloud

Google Cloud proporciona registres d'auditoria que inclouen:

  • Registres d'activitat d'administrador: Registres de les operacions administratives.
  • Registres d'accés a dades: Registres de les operacions de lectura i escriptura de dades.

Activació dels registres d'auditoria

Els registres d'auditoria estan activats per defecte a Google Cloud. No obstant això, pots configurar-los per personalitzar quines operacions es registren.

Pas a pas per activar els registres d'auditoria:

  1. Accedeix a la consola de Google Cloud.
  2. Navega a "IAM & Admin" > "Audit Logs".
  3. Selecciona el projecte on vols activar els registres d'auditoria.
  4. Configura els registres d'auditoria segons les teves necessitats.

Exemple de consulta de registres d'auditoria

SELECT
  protopayload_auditlog.methodName,
  protopayload_auditlog.resourceName,
  protopayload_auditlog.status.code,
  timestamp
FROM
  `my-project-id.cloudaudit_googleapis_com_data_access_`
WHERE
  protopayload_auditlog.methodName = "jobservice.jobcompleted"
ORDER BY
  timestamp DESC
LIMIT 100;

  1. Monitoratge de BigQuery

Monitoratge amb Stackdriver

Google Cloud Monitoring (anteriorment Stackdriver) permet monitorar l'ús i el rendiment de BigQuery.

Configuració de Stackdriver:

  1. Accedeix a la consola de Google Cloud.
  2. Navega a "Monitoring".
  3. Crea un nou espai de treball o selecciona un existent.
  4. Afegeix BigQuery com a font de dades.

Mètriques clau per monitorar

  • Temps de resposta de les consultes: Per identificar consultes lentes.
  • Ús de recursos: Per controlar l'ús de CPU i memòria.
  • Errors de consultes: Per detectar i solucionar errors.

Exemple de monitoratge de consultes lentes

SELECT
  job_id,
  creation_time,
  end_time,
  total_bytes_processed,
  total_slot_ms
FROM
  `region-us`.INFORMATION_SCHEMA.JOBS_BY_PROJECT
WHERE
  state = "DONE"
  AND error_result IS NULL
ORDER BY
  total_slot_ms DESC
LIMIT 10;

  1. Exercici pràctic

Exercici 1: Consultar registres d'auditoria

  1. Objectiu: Consultar els registres d'auditoria per identificar les operacions de lectura de dades.
  2. Instruccions:
    • Utilitza la taula de registres d'auditoria de Google Cloud.
    • Filtra per operacions de lectura de dades.
    • Ordena els resultats per data.

Solució:

SELECT
  protopayload_auditlog.methodName,
  protopayload_auditlog.resourceName,
  protopayload_auditlog.status.code,
  timestamp
FROM
  `my-project-id.cloudaudit_googleapis_com_data_access_`
WHERE
  protopayload_auditlog.methodName = "tabledata.list"
ORDER BY
  timestamp DESC
LIMIT 100;

Exercici 2: Monitorar consultes lentes

  1. Objectiu: Identificar les 10 consultes més lentes en el teu projecte.
  2. Instruccions:
    • Utilitza la taula INFORMATION_SCHEMA.JOBS_BY_PROJECT.
    • Filtra per consultes completades sense errors.
    • Ordena per temps total de ranures (total_slot_ms).

Solució:

SELECT
  job_id,
  creation_time,
  end_time,
  total_bytes_processed,
  total_slot_ms
FROM
  `region-us`.INFORMATION_SCHEMA.JOBS_BY_PROJECT
WHERE
  state = "DONE"
  AND error_result IS NULL
ORDER BY
  total_slot_ms DESC
LIMIT 10;

Conclusió

En aquest tema, hem après la importància de l'auditoria i el monitoratge a BigQuery, com configurar els registres d'auditoria i com utilitzar Stackdriver per monitorar l'ús i el rendiment de BigQuery. Aquestes eines són essencials per mantenir la seguretat, el compliment i l'eficiència operativa de les teves dades i consultes.

Curs de BigQuery

Mòdul 1: Introducció a BigQuery

Mòdul 2: SQL bàsic a BigQuery

Mòdul 3: SQL intermedi a BigQuery

Mòdul 4: SQL avançat a BigQuery

Mòdul 5: Gestió de dades a BigQuery

Mòdul 6: Optimització del rendiment de BigQuery

Mòdul 7: Seguretat i compliment de BigQuery

Mòdul 8: Integració i automatització de BigQuery

Mòdul 9: Aprenentatge automàtic a BigQuery (BQML)

Mòdul 10: Casos d'ús de BigQuery en el món real

© Copyright 2024. Tots els drets reservats