As described previously, the search key for flights would be source and destination airports, along with the dates. These would be used by customers while searching.
To ensure that performance and cost (look-to-book ratio) requirements are met, we need to ingest data from the sellers into our system, rather than hit the Seller Search APIs indiscriminately on demand. As part of ingestion, we need to store data in the same format to enable efficient searches.
One of the main microservices inside flight search is the Flights Catalog. This is the repository of all static content about the flight (aircraft types, services available in-flight, logos, and so on). The high-level design for the same is shown in the following diagram:
As you ...