OSM-Poi -> mySQL-Datenbank ... ?

Hallo Jan,

auch wenn es etwas spät ist, will ich meinen Senf anfügen. Zunächst: Die Idee mit einer vernünftigen Datenbank ist auf alle Fälle gut und sehr vernünftig. Trotzdem gibt es natürlich Alternativen für spezielle Fälle.

Mache ich häufig, klappt recht flott mit osmconvert und der Option “–all-to-nodes” (es werden dann sogar Relationen umgewandelt).

Guter Plan.

Klappt auch mit osmconvert und der neuen Option “–csv=”, siehe http://wiki.openstreetmap.org/wiki/DE:Osmconvert#Schreiben_von_CSV-Dateien

Ja, sie macht das so. Genauso läuft es auch bei der openptmap.org und der openfiremap.org. Details hier: https://wiki.openstreetmap.org/wiki/Openptmap/Installation#An_Advanced_Approach:_Diff-based_Rendering

Aber - wie gesagt - das ist nur eine Möglichkeit an das Problem heranzugehen. Es gibt da mehrere verschiedene gute Wege.

Vielen Dank für Deine Tools. Die sind echt super! Insbesondere die --all-to-nodes-Funktion erleichert einiges.

Wenn ich das richtig sehe, muß ich drei Aufrufe verwenden, um aus einem Planet bzw. Extrakt die POI-Datei zu generieren.

  1. osmconvert mit –all-to-nodes

  2. osmfilter um nach bestimmten Tags zu filtern

  3. wieder osmconvert, diesmal mit –out-csv

Oder geht das auch einfacher?

Ist eigentlich mal geplant Deine Programme zusammenzulegen? Oder willst Du bewußt die verschiedenen Funktionen in separaten Programmen haben?

Christian

Hallo Christian

Bin zwar nicht Marqqs, aber ich denke, das hat durchaus Sinn dies als getrennte Programme zu haben.
1 osmconvert: Unterstützt sehr viele Formate, kann einfacher Filterungen.
2 osmfilter: Komplexe Filterungen, wenige Formate
3 osmupdate: Kann OSM-Datei per Diff aktuell halten.

Wenn man das alles in ein Programm packen wollte, würde ein komplexes, schwieriger zu wartendes Programm entstehen. Dann schlägt man sich als Anwender eventuell mit Problemen rum, die kaum etwas mit der eigenen Aufgabenstellung zu tun hat. Die Methode “Eine Aufgabe - ein Programm” hat schon ihre Vorzüge.

Edbert (EvanE)

Danke, hätte es auch nicht besser schreiben können. :slight_smile:

Ich glaub nicht, dass es einfacher geht. Außer, du nimmst Osmosis mit entsprechenden Plugins, dann tut es wahrscheinlich auch ein einziger Aufruf. Allerdings ist der dann eine Ecke komplizierter, und die Verarbeitung wahrscheinlich einiges langsamer als bei den einzelnen Programmen. Hat halt alles zwei Seiten.

Deine Reihenfolge ist ok. Bisher hab ich es aber immer so gemacht:
1 osmconvert, um die Daten ins .o5m-Format zu wandeln (idealerweise sind sie aber schon in diesem Format)
2 osmfilter um nach bestimmten Tags zu filtern
3 wieder osmconvert, diesmal mit –all-to-nodes und –out-csv

Mein Weg ist nicht einfacher, sondern einfach nur anders. :slight_smile: Einfacher wirds nur, wenn du deine Eingangs-Daten generell im .o5m-Format hast und z.B. mit osmupdate aktualisierst, denn das unterstützt .o5m.

Da fällt mir gleich eine Frage ein:
Bedingt durch die Lizenzumstellung gibt es ja gelöschte Knoten, die keine Koordinaten haben. Sind deine Programme von dieser Änderung der Datenstruktur betroffen?

Oder anders gefragt:
Hast du in den Input-Daten überhaupt gelöschte Objekte? In einem Change-File könnte das ja durchaus vorkommen.

Edbert (EvanE)

hallo Jan - hallo @ all

komme etwas spaet auf diesen Thread. Aber er ist sehr interessant. Dieselbe " Aufgabe " beschäftigt mich auch derzeit. OSM Poi in eine mysql DB zu bringen.

Das ist ja eine gute Nachricht - meinst du denn dass du das Script ggf. weitergeben würdest.

Freu mich auf einen Tipp / Hinweis oder Antwort

tagtheworld