Sono curioso di sapere come i motori di ricerca di voli / treni combinano i risultati di più fonti. Per esempio, diciamo che sto chiedendo di andare da Londra a Parigi, e supponiamo che non ci siano voli diretti per qualsiasi motivo. Tuttavia, c'è un volo da Londra a Lille (nord della Francia), e poi un treno da lì a Parigi. Un esempio estremo potrebbe essere quello in cui non esiste neanche una connessione diretta, ma puoi raggiungere la tua destinazione combinando aereo, treno, autobus e infine taxi o un servizio di condivisione del viaggio.
In che modo un motore di ricerca potrebbe trovare l'opzione migliore? Ha accesso a un'API di base da ciascun fornitore che gli consente di chiedere corse dal punto A al punto B in un momento specifico. Non ha un database di tutte le giostre e voli disponibili, ma può solo interrogare l'API di ciascun provider, ma quelle query sono piuttosto lente (se si devono fare centinaia di esse) e costose, quindi l'obiettivo è minimizzare la quantità di query .
Sto pensando di creare un piccolo comparatore di condivisione del percorso come un progetto collaterale (e forse includere anche autobus / treno / taxi) e non sono sicuro da dove cominciare o se è fattibile considerando i vincoli.
Credo che il mio problema non riguardi semplicemente il "collegamento dei punti": le domande suggerite presuppongono che tu conosca tutti i punti e che tu abbia solo bisogno di trovare il percorso migliore. Nel mio caso è un po 'diverso perché non solo non conosco il percorso migliore, ma non so nemmeno quali "punti" ho. Posso fare domande come "c'è un passaggio da A a B", ma non posso chiedere "dammi tutte le corse che offri", il che significa che sto cercando consigli su come posso interrogare in modo efficiente per potenziali "punti" "senza usare l'approccio bruteforce di chiedere tutte le combinazioni possibili (che farebbe il sito del fornitore).