domingo, 1 de agosto de 2021

MongoDB y API de Amadeus

Si uno ya tiene experiencia en RDBSM, una pregunta razonable sería: ¿para que complicarme con una BBDD NoSQL?

En este artículo presento un ejemplo de uso de MongoDB para resolver rápidamente una necesidad específica.

La empresa Amadeus dispone de una API para desarrolladores que permite hacer diferentes tipos de consultas relacionadas con los sectores de aerolíneas, hoteles, etc.

Un ejemplo de consulta a esta API es: amadeus.shopping.flight_offers_search.get()

Esta llamada permite consultar los vuelos disponibles para una ruta y fecha determinadas. La informacion devuelta está en formato JSON.

En el script Python adjunto podemos ver lo fácil que es hacer la llamada a la API e insertar la información devuelta en la colección Amadeus.flight_offers.

 
No hay necesidad de procesos previos para crear la BBDD ni la colección. Tampoco necesitamos saber la estructura de la información, sólo la insertamos directamente en MongoDB.

 
Una vez que tenemos la colección creada, podemos hacer las consultas que queramos.

En el ejemplo mostrado en la pantalla siguiente, consultamos los vuelos con precio menor a 150€ y sólo nos interesa que nos muestre los campos aerolínea, precio, duración del vuelo y aeropuerto de salida de cada segmento del vuelo:

Hemos encontrado 15 vuelos que cumplen los criterios de la consulta.

Como podemos ver, una solución realmente rápida y eficiente.

No hay comentarios:

Publicar un comentario