Saiba como transformar as operações de voo com análises avançadas em tempo real. Reduza custos, reduza atrasos e aumente a eficiência por meio do monitoramento inteligente de dados.
Casos de uso: Análise, IoT, Modernização, Visualização individual
Setores: Manufatura e Mobilidade
Produtos e ferramentas: MongoDB Atlas, Pipeline de Agregação, Coleçõesde Séries Temporais, MongoDBChange Streams
Parceiros: Google Cloud, Next.js, FastAPI, TensorFlow, Scikit-learn
Visão Geral da Solução
A solução de gerenciamento de voo em tempo real permite que as companhias aéreas gerenciem e mitiguem proativamente os atrasos de voo dispendiosas. Somente em 2019, os atrasos de voo custam às companhias aéreas da Europa uma média de euros4,320 por hora por voo.
A solução aproveita o tratamento inteligente de dados e a resposta imediata para fornecer monitoramento em tempo real, insights preditivos e alocação otimizada de recursos. Ele usa uma arquitetura orientada a eventos com:
FastAPI para simulação
GCP PubSub para mensagens
Vertex AI para análises avançadas
Google Cloud Functions para processamento orientado a eventos sem servidor.
Construída com base no modelo de documento flexível e nas coleções de séries temporais do MongoDB, a solução oferece uma abordagem abrangente para minimizar as interrupções operacionais.
Figura 1. Componentes de uma arquitetura orientada por eventos
A solução entrega:
Redução da propagação de atrasos: o monitoramento em tempo real e as funcionalidades de resposta imediata ajudam a evitar que os atrasos se propaguem pelos cronogramas de voos.
Alocação otimizada de recursos: uma análise inteligente de dados possibilita a realocação eficiente de recursos durante interrupções.
Experiência aprimorada do cliente: um melhor gerenciamento de interrupções leva a uma maior satisfação e fidelidade dos passageiros.
Operações dimensionáveis: a arquitetura flexível suporta volumes crescentes de dados e demandas operacionais.
Tomada de decisão em tempo real: o acesso imediato aos dados de voo permite decisões operacionais rápidas e informadas.
Arquiteturas de referência
A solução de gerenciamento de voo em tempo real implementa uma arquitetura orientada a eventos para o gerenciamento de atrasos, que fornece monitoramento em tempo real, insights preditivos e otimização de recursos. A arquitetura consiste em vários componentes principais:
1. Geração e processamento de dados
Microsserviço FastAPI que abriga o simulador de dados em tempo real e o localizador de caminhos.
Tópicos do PubSub que gerenciam fluxos de dados estáticos e em tempo real.
Funções de nuvem para processar dados de aplicativo e de telemetria.
2. Análise e gerenciamento de custos
Calculadora de custos Vertex AI para análise de impacto financeiro.
Função de nuvem do criador de dados analíticos para transformação de dados.
Pipeline de agregação para o processamento de dados complexos.
3. Estrutura do banco de dados
Banco de dados MongoDB como o armazenamento central de dados.
Coleções especializadas:
flight_costscollection para acompanhar e analisar as despesas relacionadas ao voo.flight_planecoleção de simulação para modelagem preditiva e planejamento de cenário.flight_realtimeCFprojetada para rastreamento de dados em tempo real e análise histórica ( Coleçãode séries temporais ).flightscollection para gerenciamento abrangente de informações gerais de voo.
4. Componentes de integração
Change Streams para alterações de dados em tempo real.
API do Google Maps para visualização de dados geográficos.
Next.js para interface de front-end e visualização.
Conforme ilustrado na figura 2, esta arquitetura habilita os seguintes fluxos de dados:
Fluxo de dados operacionais (linhas azuis): lida com operações de voos em tempo real.
Fluxo de dados analíticos (linhas verdes): gerencia a business intelligence.
Conexões internas (linhas pretas): mantêm a integração do sistema.
Figura 2. Arquitetura orientada a eventos
Construir a solução
Para obter um guia passo a passo detalhado que implementa essa solução, incluindo amostras de código e instruções de configuração específicas, visite este repositório do GitHub. Essa solução fornece uma arquitetura escalável e orientada a eventos para gerenciar as operações de voo e minimizar atrasos e interrupções.
Para implementar a solução, siga estas etapas:
Configure o MongoDB
Armazene dados de voo em um esquema flexível.
Habilite atualizações em tempo real.
Lide com dados de série temporal para análise.
Mantenha as informações operacionais de voo, garantindo que você obtenha a string de conexão do MongoDB para as etapas subsequentes de configuração e integração.
Configure serviços do GCP
Implemente o aplicação como um serviço em contêiner usando o Cloud Run do Google Cloud.
Configure o Cloud Build do Google Cloud para implantações automatizadas.
Configure o armazenamento em nuvem do Google Cloud para os ativos.
Utilize o Google Cloud Pub/Sub para obter distribuição de dados em tempo real.
Implemente as funções de nuvem do Google Cloud para processamento de dados. O trecho de código é executado em uma função de nuvem. Quando o sistema identifica uma interrupção, a função atualiza o novo caminho obtido do algoritmo do localizador de caminho. Esta funcionalidade garante o reenvio de rota ideal, o que minimiza o consumo de gás e reduz os custos.
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. 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()
Implemente a IA Vertex do Google Cloud para análises. Certifique-se de obter uma chave de API do Google Maps para análise e visualização geoespacial aprimoradas.
Depois de seguir essas etapas, seu aplicativo deverá ficar assim:
Figura 3. Dashboard de gerenciamento de voos com filtros
Figura 4. Monitoramento de rotas de voos e custos
Principais Aprendizados
Utilize modelos flexíveis: o esquema flexível e as coleções de séries temporais do MongoDB fornecem uma base sólida para as operações de voo. Esses recursos permitem que as companhias aéreas manipulem com eficiência os dados de planejamento pré-voo e de telemetria, enquanto se adaptam aos requisitos em constante mudança.
Habilitar monitoramento em tempo real: uma arquitetura orientada a eventos alimentada pela integração do MongoDB com os serviços do Google Cloud, como Pub/Sub e Cloud Functions, permite resposta imediata a interrupções de voo. Ao processar fluxos de dados em tempo real, essa abordagem ajuda as companhias aéreas a minimizar os atrasos, que podem custar uma média de4 euros,320 por hora.
Obtenha insights aprimorados: os pipelines de agregação do MongoDB transformam dados operacionais de voo em insights acionados, permitindo que as companhias aéreas otimizem rotas e recursos. A IA do Google Cloud Vertex oferece análise preditiva que ajuda as companhias aéreas a gerenciar custos e atrasos.
Gerencie dados com eficiência: esta solução mostra como o MongoDB lida com diversos tipos de dados e cargas de trabalho, desde a coleta de telemetria em tempo real ao processamento analítico. Sua arquitetura distribuída e seus recursos de change streams garantem um desempenho consistente.
Autores
Dr. Humza Akhtar, MongoDB
Rami Pinto, MongoDB
Sebastian Rojas Arbulu, MongoDB