I've been working with imposm and Python, it's fairly easy to parallelise. I've hit a performance problem when trying to associate the coordinates to the ways.

Creating a dictionary from coordinate_id to lat,long and then using it turns out to be really slow.

Do you know of any alternatives that I can use?

Has anyone used a C++ library, or even Scala, or PostgreSQL

Btw, I've been able to iterate through 39GB of PBF, almost the whole globe in 17 minutes on a 32 core machine. That's the performance I'm looking for.

  • Which actual problem are you trying to solve? Maybe there are better solutions than your current approach. – scai Jan 22 '16 at 15:04
  • to get the center of all the ways – titus Jan 22 '16 at 15:14

Osmium is a very fast and flexible C++ library for working with OSM data: http://osmcode.org/libosmium/

It supports all types of osm entities such as nodes, ways, relations and even historical osm data. It's published under Boost Software License and therefore free to use.

| improve this answer | |

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.