[Talk-de] Relationen aus osm-Dateien extrahieren

Andre Joost Andre+Joost at nurfuerspam.de
Di Sep 28 12:01:23 UTC 2010


Steffen Wolf schrieb:
> 
> Du koenntest doch alle Relationen gleichzeitig (in verschiedene Dateien)
> rausschreiben. Dann brauchst du fuer alle insgesamt 2min, muesstest
> natuerlich immer noch alles dreimal lesen.

Stell ich mir etwas mühselig vor, >200 Dateien zum Schreiben zu öffnen.
Leider kann man den Schreibkanal nicht in ein array schreiben
(jedenfalls nicht in Visual Basic).

Derzeit lese ich aus den Relationselementen und Wegelementen einfach
alle zutreffenden Wege bzw Knoten ein. Wenn man nach allen Relationen
(bzw nur routes oder nur boundaries) filtern möchte, muß man sich die
Elementlisten doch wieder im Speicher als zweidimensionale arrays
vorhalten. Und irgendwann ist dann halt Schluß mit dem Arbeitsspeicher.
Deshalb kommt man wohl ab einer gewissen Größe der Quelldaten um eine
Datenbanklösung nicht herum.

> 
> Das Skript fuer osm2ai.pl haelt sich zum Beispiel alles noetige im
> Speicher, aber es braucht halt nicht die Nutzer-, Version- und
> Zeitinformationen. 

Soweit ich das durchblicke, kümmert sich das Programm nur um Wege und
Knoten. Damit ist natürlich einiges einfacher.

> Auch von den Tags werden nur die gespeichert, die
> spaeter ausgewertet werden.

Das mache ich auch schon. Für die optionale gpx-Ausgabe sind die ja eh
unnütz.

> Aber wart mal, die 10MB-Datei kannst du doch
> einfach im Speicher halten.

Die 10MB schon, aber ich habs ja auf die nrw.osm von 1980MB abgesehen...

-- 
Gruß,
André Joost





Mehr Informationen über die Mailingliste Talk-de