[Talk-de] Ich verzeifle daran eine .osc-Datei zu filtern

Jochen Topf jochen at remote.org
Fr Aug 4 11:22:31 UTC 2017


On Fri, Aug 04, 2017 at 12:46:56PM +0200, Kevin Hemker wrote:
> > Ja, aber das muss eine Datenbank sein, die komplett alle Daten enthält.
> > In den .osc-Dateien sind nur geänderte Objekte drin, nicht ungeänderte
> > Objekte, die mit den geänderten zusammenhängen, wie es bei Nodes in Ways
> > oder Ways in Relationen der Fall ist.
> > 
> Verstehe ich das also richtig: Wenn an einem Way nur Tags geändert wurden
> ist im .osc nur der Way mit den Tags, sowie den ID-Referenzen auf die Knoten
> enthalten - die zugehörigen Nodes als solche fehlen aber, weil unverändert.
> Wurde aber das Element in seiner Lage verändert, so sind neben den
> Referenzen auch diejenigen Nodes komplett enthalten, die verschoben wurden?

Jopp, das ist richtig.

> > Aber eine allgemeine Empfehlung: Das OSM-Datenmodell ist komplex und das
> > mit den Änderungen richtig hinzubekommen ist schwierig. Wenn es irgend
> > geht, dann würde ich lieber einmal am Tag oder einmal die Woche einen
> > kompletten Neuimport durchlaufen lassen oder so. Das macht es viel
> > einfacher.
> > 
> > Jochen
> 
> Nach Erstsicht der augmented diffs teile ich diese Einschätzung; das
> auseinanderzufriemeln wäre von der Performance her wahrscheinlich auch nicht
> produktiver.
> Allerdings ist ein kompletter Neuimport schon ein ziemlicher Overhead,
> zurzeit ist die Updateroutine beim Projekt in PHP umgesetzt.
> Für einen häufigeren Neuimport müsste ich mich dann wohl in C|Java
> einarbeiten.

Normalerweise ist der Bottleneck bei einem Datenbankimport der Import
selbst, also die Datenbank bzw. der damit einhergehende I/O. Da macht es
wenig Unterschied welche Programmiersprache Du verwendest. Um welche
Daten geht es denn hier? So wie ich das verstanden habe, sind es ja nur
ein paar POIs, die Du importieren willst, das sollte nicht wirklich sehr
aufwändig sein.

Jochen
-- 
Jochen Topf  jochen at remote.org  https://www.jochentopf.com/  +49-351-31778688




Mehr Informationen über die Mailingliste Talk-de