Anfänger: Entfernung berechnen und in DB speichern

Hallo Leute,

ich befasse mich erst seit Kurzem mit Openstreetmap und sammle einige Informationen für mein Projekt. Allerdings bin ich mir in einigen Punkten noch nicht sicher:

Mein Projekt
Ich möchte ein Portal bauen, auf dem Unterkünfte mit der Entfernung zu den Orten angezeigt werden.
Zum Beispiel: man wählt den Ort “Kölner Dom” aus und erhält eine Auflistung von 50 Hotels mit der jeweiligen Entfernung zum Kölner Dom “wie es bei vielen anderen Anbietern wie booking auch möglich ist”.

Meine Vorgehensweise
Um die Entfernungen von jeder Unterkunft zum Ort zu berechnen, würde ich ein PHP-Script schreiben, welcher mit Hilfe der Distance Matrix API die Entfernungen berechnet und in meine Datenbank speichert.

Offene Fragen

  1. Welche Distance Matrix API würdet ihr empfehlen? Ich habe bis jetzt etwas von “Openrouteservice” und “Graphhopper” gelesen. Hat da jemand Erfahrung damit?
  2. Mein Vorhaben könnte ich zwar mit Google Distance Matrix API durchführen, allerdings schreibt Google vor, dass die ausgerechneten Daten nicht in die Datenbank gespeichert werden dürfen. Ist das bei Openstreetmap anders? Soweit ich das jetzt gelesen habe, gibt es dazu keine Enschränkungen, aber da möchte ich auf Nummer sicher gehen.

Wie gesagt, ich bin in dem Gebiet absoluter Anfänger und bitte um Verständnis :wink:

Würde mich über eure Unterstützung sehr freuen!

Hi,
so wie ich die ODBL verstehe, müsstest Du deine DB auf Anfrage zur Verfügung stellen.

https://wiki.openstreetmap.org/wiki/Open_Database_License

Wo stehen diese Informationen und woher kommen diese?

welche Datenbank? Software, Datenschema, Datenquelle - in anderen Worten: “was steht da drin”?

Sowas macht man - eigentlich - mit PostGIS. Kann aber erst was dazu sagen. wenn die ersten beiden Fragen beantwortet wurden.

welche Datenbank meinst du jetzt genau? Deine lokale DB oder etwa die zentrale OSM-DB?

Mer haben alle mal klein angefangen :wink:

Gruss
walter

ps: Ich muss hier so pingelig nachfragen, damit wir genau wissen, wovon du in Wirklichkeit redest.

@chris66: werde mich mit der ODBL Licence mal auseinandersetzt. Danke für den Hinweis.

@wambacher:

Also vorerst soll dieser Portal natürlich online sein und öffentlich über eine Domain erreichbar werden.

Die Einzelne Informationen zu den Unterkünften würde man nach und nach aus unterschiedlichen Quellen sammeln.

Die Datenbank ist eine MySQL 5.6 und ist mit einem CMS verbunden, mit dem die einzelne Einträge (Orte und Unterkünfte) verwaltet werden.

Ich formulier das mal etwas ausführlicher:

Die Frage ist, was du genau von OSM willst. Sind die “Orte” schon bei dir vorhanden, ist das eine Whitelist in die du von dir speziell ausgesuchte und geokodierte Orte einträgst, oder willst du auch die Orte aus OSM beziehen?
Gleiches für die Unterkünfte: deine eigenen Daten oder OSM-Daten?

Wenn Du OSM nur fürs Routing/für die Entfernungsberechnung nutzen willst, kannst Du das mit einer beliebigen Routing-Anwendung auf OSM-Basis machen, Liste z.B. hier: https://wiki.openstreetmap.org/wiki/List_of_OSM-based_services#Routing .

Wenn Du auch die Orte und die Unterkünfte aus OSM brauchst, kannst Du das entweder mit online services (z.B. der Overpass API) machen, die aber alle keine garantierten Servicelevel o.ä. haben und meist von Freiwilligen betrieben werden, die damit auch mal aufhören (dh wenn dein Geschöftsmodell darauf basiert und der Dienst wegfällt biste gekniffen), oder die Daten in deine eigene DB ziehen und die ganzen Auswertungen (geht sogar bis hin zum Routing) auf deiner DB fahren.

Ich nehm einfach an, das du mit “Entfernung” nicht Luftlinie sondern Laufstrecke meintest. Falls du Luftlinie meinst fällt natürlich das Routing weg :wink:

Also die GEO-Koordinaten der Unterkünfte und Orte liegen mir bereits vor. Wie du bereits erkannt hast, geht es mir nur um die Entfernung (mit dem Auto) zwischen zwei GEO-Koordinaten.

Speichern darfst du auf jeden Fall, die OSM-Daten sind frei. Ob deine so erstellte Entfernungs-Datenbank ein abgeleitetes Werk ist (das du unter einer kompatiblen Lizenz zur Verfügung stellen musst, share-alike) oder doch eher eine Auswertung und nicht eine Bearbeitung der OSM-Daten (wo das für mein Empfinden nicht gilt), müssen Rechtskundigere als ich beurteilen. Immerhin dürfen aus OSM erzeugte Kartenbilder unter einer CC-BY-Lizenz angeboten werden, die restriktiver ist als die ODbL (letztere verlangt keine Urhebernennung).

–ks

@kreuzschnabel: danke für deinen Beitrag. Dann muss man jetzt nur noch herausfinden ab wann eine Datenbank, ein abgeleitetes Werk ist… :wink:

Und bei der CC-By Lizenz muss der Urheber des Originals genannt werden. Dies kann nach meinem Verständnis auch im Impressum erwähnt werden und nicht auf den jeweiligen Seiten, wo die Entfernungen verwendet werden oder?