Implementamos JSON BigQuery para optimizar los flujos de procesamiento de Dataflow de MongoDB

MAR 12, 2025
Zi Wang Partner engineer
Venkatesh Shanbhag Sr Solutions Architect

Nos complace presentar una considerable mejora a nuestras plantillas de Dataflow de Google Cloud para MongoDB Atlas. Al habilitar la compatibilidad directa con los tipos de datos JSON, los usuarios pueden integrar de manera fluida sus datos de MongoDB Atlas en BigQuery, lo que elimina la necesidad de transformaciones de datos complejas.

Este enfoque optimizado ahorra tiempo y recursos, por lo que permite a los usuarios aprovechar todo el potencial de sus datos a través del análisis avanzado de datos y el aprendizaje automático.

JSON feature for user options on Dataflow Templates
Figura 1: Función JSON para opciones para usuarios en las plantillas de Dataflow

Limitaciones sin compatibilidad con JSON

Tradicionalmente, los flujos de procesamiento de Dataflow diseñados para manejar los datos de MongoDB Atlas requieren la transformación de datos en cadenas JSON o la compactación de estructuras complejas a un solo nivel de anidamiento antes de cargarlas en BigQuery. Aunque este enfoque es viable, tiene varios inconvenientes:

  • Mayor latencia: Las múltiples conversiones de datos requeridas pueden generar una mayor latencia y ralentizar significativamente el tiempo total de ejecución del flujo de procesamiento.

  • Mayores costos operativos: Las transformaciones de datos adicionales y los requisitos de almacenamiento asociados con este enfoque pueden incrementar los costos operativos.

  • Menor rendimiento de las consultas: La compactación de estructuras complejas de documentos en formato de cadena JSON puede afectar el rendimiento de las consultas y dificultar el análisis de los datos anidados.


¿Cuáles son las novedades?

El formato JSON nativo de BigQuery resuelve estos desafíos permitiendo a los usuarios cargar directamente datos JSON anidados de MongoDB Atlas en BigQuery sin requerir ninguna conversión.

Este enfoque ofrece numerosos beneficios:

  • Reducción de los costos operativos: Al eliminar la necesidad de transformaciones de datos adicionales, los usuarios pueden reducir significativamente los gastos operativos, incluidos los asociados con la infraestructura, el almacenamiento y los recursos informáticos.

  • Mejora en el rendimiento de consultas: El motor de almacenamiento y consultas optimizado de BigQuery está diseñado para procesar datos de manera eficiente en formato JSON nativo, lo que resulta en tiempos de ejecución de consultas significativamente más rápidos y un mejor rendimiento general de las consultas.

  • Mejor flexibilidad de datos: Los usuarios pueden consultar y analizar fácilmente estructuras de datos complejas, incluidos datos anidados y jerárquicos, sin recurrir a procesos de compactación o normalización que consumen mucho tiempo y son propensos a errores.

Una ventaja significativa de este flujo de procesamiento radica en su capacidad para aprovechar directamente las potentes funciones JSON de BigQuery en los datos de MongoDB cargados en BigQuery. Esto elimina la necesidad de un proceso de transformación de datos complejo y lento. Los datos JSON dentro de BigQuery se pueden consultar y analizar utilizando consultas BQML estándar.

Ya sea que prefieras un enfoque optimizado basado en la nube o una solución práctica y personalizable, el flujo de procesamiento de Dataflow se puede implementar a través de Google Cloud Console o ejecutando el código desde el repositorio de Github.


Habilitamos la toma de decisiones basada en datos

En resumen, la plantilla Dataflow de Google proporciona una solución flexible para transferir datos de MongoDB a BigQuery. Puede procesar colecciones completas o capturar cambios incrementales utilizando la funcionalidad Change Stream de MongoDB. El formato de salida del flujo de procesamiento se puede personalizar para satisfacer tus necesidades específicas. Ya sea que prefieras una representación JSON sin procesar o un esquema compacto con campos individuales, puedes configurarlo fácilmente a través del parámetro userOption. Además, la transformación de datos se puede realizar durante la ejecución de la plantilla utilizando funciones definidas por el usuario (UDF).

Si adoptas el formato JSON nativo de BigQuery en tus flujos de procesamiento de Dataflow, podrás mejorar significativamente la eficiencia, el rendimiento y la rentabilidad de tus flujos de trabajo de procesamiento de datos. Esta poderosa combinación te permite extraer información valiosa de tus datos y tomar decisiones basadas en datos.

Consulta la Documentación de Google a fin de obtener información para configurar las plantillas de Dataflow para MongoDB Atlas y BigQuery.