Wyznaczanie trasy

0

Witam,

Temat wiele razy wałkowany jednak chciałbym zapytać nieco konkretniej:
Niemiecki Bahn (http://www.bahn.de) ma bardzo ciekawie rozwiązane wyszukwianie połączeń (pokazywane jest nawet czas na przejście na przystanek) a wyszukiwanie działa bardzo szybko nawet dla kilku przesiadek.

Zastanawiam się jakich technologii od strony samego języka jak i bazy użyli (mogli użyć) do wykonania tego?
Czy przy takim projeckie scentralizowana baza jest dobrym rozwiązaniem?
Jak mogłaby wyglądać struktura bazy do takiego projektu (same połaczenia, dojścia na przystanek itp)?
Jakie algorytymy konkretnie tutaj zostały zastosowane? Słuszałem o Oracle Spatial i jest to w zasadzie gotowe rozwiązanie ale czy tutaj się nadaje?

0

Może cała baza połączeń jest w RAMie?
Mogą ją co pewien czas synchronizować z bazą główną.
Zmiany w tej bazie są bardzo rzadkie, a zapytania muszą się wykonywać bardzo szybko.

Druga sprawa, to że baza może stać na kilku maszynach.

Co do algorytmu, to trzeba użyć zmodyfikowanej Dijkstry, która uwzględnia godziny przyjazdów i odjazdów (a nie tylko czas podróży) oraz minimalny czas na przesiadkę.

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.