Google PDE: Analítica de BigQuery e Ingeniería de Almacenes de Datos — Guía de estudio

Forma parte de la Google Professional Data Engineer — Guía de estudio. Practica con respuestas verificadas en el centro de exámenes de Google, o realiza tests cronometrados en ExamRoll.io.

Descripción general

BigQuery es un almacén de análisis de datos MPP (procesamiento masivamente paralelo), columnar y sin servidor que separa el almacenamiento del cómputo, proporcionando escalabilidad casi infinita, SQL ANSI y gobernanza integrada. La ingeniería del almacén de datos en BigQuery equilibra el diseño de esquemas (particionamiento, clustering, desnormalización vs. normalización, registros anidados), los patrones de ingesta (cargas por lotes, streaming, Storage Write API) y la gestión de cargas de trabajo (ediciones bajo demanda vs. basadas en capacidad y reservaciones). Una seguridad robusta (vistas autorizadas, políticas de fila/columna, etiquetas de política) coexiste con controles de costos y herramientas de rendimiento para minimizar los bytes escaneados y reducir la latencia. Esta sección cubre el diseño central, las operaciones y los modos de fallo que debes anticipar en producción.

Almacenamiento y semántica: Conjuntos de datos, tablas, vistas y acceso al lago de datos

undefined

.

Optimización de Consultas y Gestión de la Carga de Trabajo

Ingesta, Federación y Recuperación

Seguridad, Gobernanza y Control de Costos

Escenario de un Problema Práctico

NovaCare Health opera una plataforma regional de telemedicina. Un diseño de tabla única, patient_and_visit, sirvió para un piloto, pero a una escala 100 veces mayor, los informes agotan el tiempo de espera, aparecen duplicados por los upserts de streaming y los socios requieren un aislamiento de datos estricto.

Enfoque:

  1. Rediseñar el esquema y la disposición

    • Crear tablas principales normalizadas: patients(patient_id, demographics, updated_at) y visits(visit_id, patient_id, visit_ts, metrics, updated_at).
    • Convertir visits en una tabla particionada por DATE(visit_ts), clusterizada por patient_id y visit_id. Mantener las dimensiones de referencia pequeñas desnormalizadas dentro de visits para acelerar los paneles.
    • Justificación: La normalización evita self-joins costosos y actualizaciones pesadas de filas en una única tabla activa (hot table). La partición poda los escaneos históricos; la clusterización coubica los joins y filtros en patient_id, reduciendo el shuffle.
  2. Ingerir con la Storage Write API y forzar la idempotencia

    • Usar una canalización de Dataflow para analizar eventos entrantes, validarlos y escribirlos en flujos con nombre en la Storage Write API con offsets idempotentes.
    • Dirigir los eventos malformados a una tabla de mensajes fallidos (dead-letter) en BigQuery para su clasificación.
    • Justificación: La Storage Write API ofrece mayor rendimiento, menor latencia y mejores garantías de deduplicación que el streaming heredado. El mecanismo de dead-lettering preserva la visibilidad sobre los problemas de calidad de los datos de los socios.
  3. Diseñar para la actualidad y la deduplicación en las consultas

    • Para análisis interactivos, añade un watermark corto (por ejemplo, 2 veces la disponibilidad observada) antes de consultar la partición más reciente; o filtra por _PARTITIONDATE donde partition_date <= CURRENT_DATE() para excluir filas en tránsito.
    • Usa ROW_NUMBER() OVER (PARTITION BY visit_id ORDER BY event_ts DESC) = 1 en vistas que deban tolerar reintentos en el origen.
    • Justificación: El streaming es eventualmente consistente durante un breve intervalo. El uso de watermarks y la deduplicación basada en ventanas protegen los paneles de brechas y duplicados transitorios.
  4. Acelerar agregados comunes con vistas materializadas

    • Crear MVs alineadas con la partición sobre visits para KPIs diarios agrupados por DATE(visit_ts) y cohortes de pacientes. Asegurarse de que los predicados sean compatibles con la reescritura.
    • Justificación: Las MVs reducen la latencia y los bytes escaneados para informes recurrentes; BigQuery reescribe las consultas para usar la MV de forma transparente.
  5. Forzar el aislamiento de tenants y la seguridad detallada

    • Ubicar a cada socio en un conjunto de datos dedicado. Otorgar roles de conjunto de datos con privilegio mínimo a los grupos de socios.
    • Publicar vistas autorizadas para benchmarks compartidos entre socios sin revelar las tablas sin procesar.
    • Aplicar etiquetas de política a las columnas con PII y añadir políticas de acceso a filas a visits para restringir el acceso por partner_id para análisis internos multi-tenant.
    • Justificación: La segmentación por conjunto de datos por tenant, junto con las vistas autorizadas y las etiquetas de política, impone el privilegio mínimo al tiempo que permite el uso compartido curado.
  6. Gestionar cargas de trabajo con ediciones, reservas y autoescalado

    • Adquirir capacidad en las ediciones de BigQuery y crear dos reservas: etl (receptores de Dataflow, transformaciones programadas) y bi (ad hoc/informes). Asignar los proyectos correspondientemente y habilitar el autoescalado para absorber los picos.
    • Programar consultas ELT como lote con SLAs claros; establecer maximum_bytes_billed para proyectos interactivos.
    • Justificación: Las reservas separadas evitan que el ETL consuma los recursos del BI. El autoescalado se adapta a las cargas en ráfagas sin sobreaprovisionar.
  7. Gobernar el costo y observar el uso

    • Requerir filtros en visit_ts; rechazar SELECT * en las vistas compartidas. Usar INFORMATION_SCHEMA.JOBS para detectar escaneos no podados y joins desequilibrados.
    • Exportar los registros de auditoría de BigQuery a Pub/Sub con un receptor de registros filtrado para trabajos de inserción en visits para activar alertas de monitoreo ante aumentos inesperados.
    • Justificación: La poda de bytes y la proyección de columnas controlan el costo; los registros de auditoría revelan patrones de acceso y anomalías casi en tiempo real.
  8. Planificar la recuperación y los backfills

    • Habilitar políticas de vencimiento de tablas predeterminadas que se alineen con el cumplimiento y las necesidades de viaje en el tiempo (time-travel). Para ediciones grandes, crear un snapshot, ejecutar los cambios y revertir rápidamente si es necesario. Usar clones de tabla para análisis de hipótesis (what-if) de desarrollo/prueba sin duplicar el almacenamiento.
    • Justificación: Los snapshots y los clones proporcionan redes de seguridad rápidas y eficientes en espacio; el viaje en el tiempo (time-travel) cubre pequeñas restauraciones correctivas.
  9. Integrar ML dentro del almacén de datos

    • Almacenar engineered features en tablas particionadas y entrenar modelos de clasificación de BigQuery ML para el riesgo de readmisión. Para modelos externos alojados en Vertex AI, crear modelos remotos y almacenar en caché las predicciones en una tabla clusterizada para joins de baja latencia.
    • Justificación: Mantener el ML cerca de los datos reduce el movimiento y la complejidad de la gobernanza; almacenar en caché la inferencia remota amortiza la latencia y el costo.

Con este diseño, NovaCare logra un rendimiento predecible bajo una carga 100 veces mayor, un fuerte aislamiento de tenants y costos gobernados, al tiempo que preserva análisis de baja latencia y una recuperación reproducible.


Almacenamiento de Datos · Todos los dominios · Procesamiento de Flujos con Dataflow y Apache Beam

Practica estas preguntas → · Práctica cronometrada en ExamRoll.io →

Pass the whole exam — not just this question

You found this answer. Get every verified question and explanation in one place, and save hours of prep. Free to start.

Aprueba tu examen →

Explorar Google →

Related guides

Acceso todo en uno

Una suscripción. Todos los exámenes.

Cada plan desbloquea la búsqueda ilimitada de respuestas, pruebas de práctica, explicaciones de AI y la biblioteca completa de recursos, en más de 20 idiomas.

Mensual
24.87
Just €0.83/day
Todo incluido:
  • Búsqueda ilimitada de respuestas
  • Pruebas de práctica ilimitadas
  • Explicaciones con tecnología AI
  • Biblioteca completa de recursos
  • Más de 20 idiomas
  • Actualizaciones semanales de contenido
  • Recompensas y referencias
  • Soporte prioritario
Iniciar prueba gratuita

No se requiere tarjeta de crédito*

Mejor valor
12 meses
179.87
Just €0.49/daySave 40%
Todo incluido:
  • Búsqueda ilimitada de respuestas
  • Pruebas de práctica ilimitadas
  • Explicaciones con tecnología AI
  • Biblioteca completa de recursos
  • Más de 20 idiomas
  • Actualizaciones semanales de contenido
  • Recompensas y referencias
  • Soporte prioritario
Iniciar prueba gratuita

No se requiere tarjeta de crédito*

✓ Plan gratuito incluido · ✓ Cancela en cualquier momento · ✓ Todos los planes desbloquean el producto completo