Make the MongoDB docs better! We value your opinion. Share your feedback for a chance to win $100.
Click here >
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: Manufactura 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 proporcionar supervisión en tiempo real, perspectivas predictivas y asignación de recursos optimizada. Utiliza una arquitectura basada en eventos con:

  • FastAPI para simulación

  • GCP PubSub para transmisión de mensajes

  • Vertex IA para análisis avanzado

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

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 impulsada por eventos

La solución ofrece:

  • Reducción en la propagación de retrasos: la supervisión en tiempo real y las capacidades de respuesta inmediata ayudan a prevenir que los retrasos se propaguen en los horarios de vuelo.

  • 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 impulsada por eventos para la gestión de retrasos que proporciona una supervisión en tiempo real, percepciones predictivas y optimización de recursos. La arquitectura consta de varios componentes clave:

1. Generación y procesamiento de datos

  • Microservicio FastAPI que aloja el Simulador de datos en tiempo real y Path Finder.

  • Temas de PubSub que manejan tanto flujos de datos estáticos 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.

  • Pipeline 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 de series de tiempo).

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

4. Componentes de integración

  • Change Streams 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 orientada a 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 los datos de vuelo en un esquema flexible.

  • Activa las actualizaciones en tiempo real.

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

  • Mantén la información operativa del vuelo, asegurándote de obtener la cadena de conexión de MongoDB para las siguientes etapas de configuración e integración.

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.

  • Configura la conexión a 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 las variables de entorno y los secretos.

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

Tablero 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 supervisión en tiempo real: Una arquitectura impulsada por eventos potenciada por la integración de MongoDB con los servicios de Google Cloud, como Pub/Sub y Cloud Functions, permite una respuesta inmediata a las interrupciones de vuelos. Mediante el procesamiento de datos en tiempo real, este enfoque ayuda a las compañías aéreas a minimizar los retrasos, que pueden costar una media 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 automatizado de incidentes de flotas conectadas potenciado por IA

  • 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