Join us at MongoDB.local London on 7 May to unlock new possibilities for your data. Use WEB50 to save 50%.
Register now >
Docs Menu
Docs Home
/

Mejore las operaciones de vuelo con análisis en tiempo real

Aprende cómo transformar las operaciones de vuelo con potentes análisis en tiempo real. Recorte costos, minimice retrasos y aumente la eficiencia mediante la supervisión inteligente de datos.

caso de uso: Análisis, IoT, Modernización, Vista única

Industrias: Fabricación y movilidad

Productos y herramientas: MongoDB Atlas, pipeline de agregación, Colecciones de series temporales, MongoDB Change Streams

emparejar: Google Cloud, Next.js, FastAPI, TensorFlow, Scikit-learn

La solución de gestión de vuelos en tiempo real permite a las aerolíneas gestionar proactivamente y mitigar costosos retrasos de vuelos. Solo en 2019, los retrasos de vuelos cuestan a las aerolíneas europeas un promedio de €4,320 por hora por vuelo.

La solución aprovecha el manejo inteligente de datos y la respuesta inmediata para brindar monitoreo en tiempo real, información predictiva y una asignación optimizada de recursos. Utiliza una arquitectura basada en eventos con:

  • FastAPI para simulación

  • GCP PubSub para transmisión de mensajes

  • Vertex IA para análisis avanzado

  • Funciones de Google Cloud para el procesamiento basado en eventos sin servidor.

Construida sobre el modelo orientado a documentos flexible y las colecciones de series de tiempo de MongoDB, la solución ofrece un enfoque integral para minimizar las interrupciones operativas.

Componentes de una arquitectura basada en eventos

Figura 1. Componentes de una arquitectura basada en eventos

La solución ofrece:

  • Propagación reducida de retrasos: el monitoreo en tiempo real y las capacidades de respuesta inmediata ayudan a prevenir que los retrasos se propaguen en cadena a lo largo de los cronogramas de vuelos.

  • Asignación de recursos optimizada: El análisis inteligente de datos permite una reasignación eficiente de recursos durante perturbaciones.

  • Mejora en la experiencia del cliente: Mejor gestión de las interrupciones conduce a una mayor satisfacción y lealtad de los pasajeros.

  • Operaciones escalables: La arquitectura flexible soporta volúmenes de datos en crecimiento y demandas operativas.

  • Toma de decisiones en tiempo real: Acceso inmediato a los datos de vuelo para tomar decisiones operativas rápidas e informadas.

La solución de gestión de vuelos en tiempo real implementa una arquitectura basada en eventos para la gestión de retrasos, que proporciona monitorización en tiempo real, información predictiva y optimización de recursos. La arquitectura consta de varios componentes clave:

1. Generación y procesamiento de datos

  • Microservicio FastAPI que alberga un simulador de datos en tiempo real y un buscador de rutas.

  • Temas de PubSub que manejan transmisiones de datos tanto estáticas como en tiempo real.

  • Cloud Functions para el procesamiento de datos de aplicaciones y telemetría.

2. Análisis y gestión de costos

  • Calculadora de costos de Vertex AI para el análisis de impacto financiero.

  • Función en la Nube de creador de datos analíticos para la transformación de datos.

  • Canal de agregación para el procesamiento de datos complejos.

3. Estructura de la base de datos

  • Base de datos MongoDB como almacenamiento central de datos.

  • Colecciones especializadas:

    • flight_costs colección para rastrear y analizar los gastos relacionados con vuelos.

    • flight_plane colección de simulaciones para modelado predictivo y planificación de escenarios.

    • flight_realtimeCF Colección diseñada para el seguimiento de datos en tiempo real y el análisis histórico (Colección deseries de tiempo).

    • flights colección para la gestión integral de la información general de vuelos.

4. Componentes de integración

  • Flujos de cambios para cambios de datos en tiempo real.

  • API de Google Maps para visualizar datos geográficos.

  • Next.js para la interfaz y visualización front-end.

Como se ilustra en la Figura 2, esta arquitectura permite los siguientes flujos de datos:

  • Flujo de datos operativos (líneas azules): Gestiona operaciones de vuelo en tiempo real.

  • Flujo de datos analíticos (líneas verdes): Gestiona la business intelligence.

  • Conexiones internas (líneas negras): Mantiene la integración del sistema.

Arquitectura basada en eventos

Figura 2. Arquitectura orientada a eventos

Para obtener una guía detallada paso a paso que implemente esta solución, incluyendo muestras de código e instrucciones específicas de configuración, visite este repositorio de GitHub. Esta solución proporciona una arquitectura escalable y basada en eventos para gestionar las operaciones de vuelo y minimizar retrasos y interrupciones.

Para implementar la solución, siga estos pasos:

1

Instala las siguientes dependencias:

  • Node.js (v14 o posterior)

  • MongoDB (local o en la nube)

  • Next.js (v12 o posterior)

  • Google Cloud SDK

2
  • Almacene datos de vuelo en un esquema flexible.

  • Activa las actualizaciones en tiempo real.

  • Gestiona datos de series de tiempo para análisis.

  • Mantenga la información de vuelo operativa, asegurándose de obtener la cadena de conexión de MongoDB para los pasos de configuración e integración posteriores.

3
  • Implementa la aplicación como un servicio en contenedor utilizando Cloud Run de Google Cloud.

  • Configura Cloud Build de Google Cloud para implementaciones automatizadas.

  • Configura Cloud Storage de Google Cloud para activos.

  • Utiliza Google Cloud Pub/Sub para la distribución de datos en tiempo real.

  • Implementar las Cloud Functions de Google Cloud para el procesamiento de datos. El snippet se ejecuta en una función nube. Cuando el sistema identifica una interrupción, la función actualiza la nueva ruta obtenida del algoritmo de búsqueda de rutas. Esta funcionalidad asegura el re-enrutamiento óptimo, lo que minimiza el consumo de combustible y reduce los costos.

import base64
import json
from bson import ObjectId
import os
from pymongo import MongoClient
import functions_framework
# Triggered from a message on a Cloud Pub/Sub topic.
@functions_framework.cloud_event
def postPath(cloud_event):
# Access URI in secrets
MONGO_URI = os.environ.get('MONGO_URI', "MONGO_URI is not set.")
MONGO_DATABASE = os.environ.get('MONGO_DATABASE', "MONGO_DATABASE is not set.")
MONGO_COLLECTION = os.environ.get('MONGO_COLLECTION', "MONGO_COLLECTION is not set.")
if not all([MONGO_URI, MONGO_DATABASE, MONGO_COLLECTION]):
print("Error: One or more environment variables are not set.")
return
client = MongoClient(MONGO_URI)
db = client[MONGO_DATABASE]
collection = db[MONGO_COLLECTION]
try:
# Parse the data in the message
byte_message = base64.b64decode(cloud_event.data["message"]["data"])
json_str = byte_message.decode('utf-8')
data_dict = json.loads(json_str)
print(data_dict)
# Work with the dictionary fields
flight_id = data_dict.get("flight_id")
initial_path = data_dict.get("initial_path_airps")
new_path = data_dict.get("new_path_airps")
disruption_coords = data_dict.get("disruption_coords")
# Check if all required fields are present
if not flight_id:
print("Error: flight_id is missing.")
return
if initial_path is None or new_path is None:
print("Error: One or more path fields are missing.")
return
# Find the document in the MongoDB collection and update the path field
result = collection.update_one(
{"_id": ObjectId(flight_id)},
{"$set": {
"initial_path": initial_path,
"new_path": new_path,
"disruption_coords": {
"lat": disruption_coords[0],
"long": disruption_coords[1]
}
}}
)
if result.matched_count > 0:
print("Document successfully updated.")
else:
print("No document found with the specified flight_number.")
except Exception as e:
print(f"Error updating document: {e}")
finally:
client.close()
  • Implementa Vertex AI de Google Cloud para análisis. Asegúrate de obtener una clave de API de Google Maps para mejorar el análisis geoespacial y la visualización.

4
  • Clona el repositorio e instala las dependencias.

  • Configura las variables de entorno.

  • Configurar la conexión MongoDB.

  • Ejecuta el servidor de desarrollo.

5
  • Conteneriza la aplicación usando Docker.

  • Implementa en Cloud Run de Google Cloud para un escalado automático.

  • Configura la implementación continua con Cloud Build.

  • Configurar variables de entorno y secretos.

Después de completar estos pasos, la aplicación debería verse así:

Panel de gestión de vuelos con filtros
haga clic para ampliar

Figura 3. Tablero de gestión de vuelos con filtros

Supervisión de rutas de vuelo y costos
haga clic para ampliar

Figura 4. Supervisión de rutas de vuelo y costos

  • Utilice modelos flexibles: El esquema flexible y las colecciones de series temporales de MongoDB brindan una base sólida para las operaciones de vuelo. Estas funcionalidades permiten a las aerolíneas gestionar eficazmente tanto la planificación previa al vuelo como los datos de telemetría, adaptándose a los requisitos cambiantes.

  • Habilite la monitorización en tiempo real: Una arquitectura basada en eventos, impulsada por la integración de MongoDB con servicios de Google Cloud, como Pub/Sub y Cloud Functions, permite una respuesta inmediata ante interrupciones en los vuelos. Al procesar flujos de datos en tiempo real, este enfoque ayuda a las aerolíneas a minimizar los retrasos, que pueden costar un promedio de, €4 320 por hora.

  • Obtén conocimientos avanzados: Los pipelines de agregación de MongoDB convierten los datos operativos de vuelo en perspectivas accionables, permitiendo a las aerolíneas optimizar rutas y recursos. Google Cloud Vertex AI ofrece análisis predictivo que ayuda a las aerolíneas a gestionar costos y retrasos.

  • Gestiona datos de manera eficiente: Esta solución muestra cómo MongoDB gestiona diversos tipos de datos y cargas de trabajo, desde la colección de telemetría en tiempo real hasta el procesamiento analítico. Su arquitectura distribuida y sus capacidades de flujos de cambios garantizan un rendimiento coherente.

  • Dr. Humza Akhtar, MongoDB

  • Rami Pinto, MongoDB

  • Sebastian Rojas Arbulu, MongoDB

  • Patricia Renart, MongoDB

  • Asesor de incidentes de flotas conectadas con tecnología de IA de Agentic

  • Entrada de blog: Análisis de datos en tiempo real para aerolíneas

  • Excelencia en el mantenimiento predictivo con MongoDB Atlas

Volver

Asistente de voz Agentic para la gestión de operaciones aeroportuarias

En esta página