Oopse, meant for this to go to the whole list.


-------- Original Message --------
Subject:        Re: [OSM-dev] OSM and MongoDB
Date:   Tue, 12 Apr 2011 15:26:41 -0500
From:   Nolan Darilek <no...@thewordnerd.info>
To:     Ian Dees <ian.d...@gmail.com>



I had/am having a somewhat bad experience storing OSM data in MongoDB.

Initially I stored all map data in MongoDB, but queries took ages. The same queries that happen in 100-200 MS now often took nearly a second. Additionally, some took upwards of 5, and I even found spots on my map sparsely populated with points, but which reliably performed the queries I need in 30+ seconds.

I filed a thorough bug in their tracker, including a dataset and queries that reliably duplicated the issue. It was marked wontfix, I abandoned MongoDB, and it was apparently re-opened and fixed several months later. So perhaps it's a non-issue now.

I'm still using MongoDB for part of my current project, user POI storage. It does indeed use geohashes, and I'm experiencing strange accuracy issues. My platform is pedestrian navigation with many small distance queries. Points in the non-MongoDB dataset are reliably detected in a radius roughly 100 meters around the traveler. Points in MongoDB queried with the same bounding boxes don't appear until they're within 30-40 meters. I recently updated from an older version to a new build of 1.8. The older version widely varied the detection range. Some points were detected 100 or so meters out, while others weren't picked up until 30 or so. It was always the same points, too. The point for my apartment remains reliably visible for ~100 meters or so, while the corner store and restaurant didn't appear until I was very close. 1.8 at least appears to be consistent, always detecting at 30 meters or so. I can only assume that this is a geohash oddity that only appears for very small differences, something that works out to rounding error for larger values.

I like MongoDB for many things, but not for geospatial data more complicated than a series of points. I'm working on migrating user/POI storage to a geospatial store.


On 04/12/2011 01:20 PM, Ian Dees wrote:
Yep, and I think Mongo uses geohashes as their index behind the scenes. One of the problems with that, though, is they have some arbitrary length that they compute the geohash to and when you have lots of points (as OSM data does) the buckets they're searching are very full.

On Tue, Apr 12, 2011 at 1:00 PM, Steve Coast <st...@asklater.com <mailto:st...@asklater.com>> wrote:

    bbox queries using the built in spatial indexing presumably? OSM
    has it's own magical bitmask for that, that may also be as fast in
    mongo, who knows.


    On 4/11/2011 5:58 PM, Ian Dees wrote:
    On Mon, Apr 11, 2011 at 6:36 PM, Sergey Galuzo
    <ser...@microsoft.com <mailto:ser...@microsoft.com>> wrote:

        Hi,

        I am working on evaluation of MongoDB for several storage
        solutions at hand. Some of them resemble current OSM editing
        database. I have heard that OSM dev is/was evaluating MongoDB
        also. I was wondering whether it possible to share the findings?


    In my experimentation with MongoDB (seen here:
    https://github.com/iandees/mongosm/) I found it to be very slow.
    Inserts were speedy, but bounding-box queries took a long time.

    The most recent dev version of MongoDB includes "multi-location
    documents" support:
    
http://www.mongodb.org/display/DOCS/Geospatial+Indexing#GeospatialIndexing-MultilocationDocuments

    This would allow a single way document to be indexed at multiple
    locations and vastly speed up the map query.


    _______________________________________________
    dev mailing list
    dev@openstreetmap.org <mailto:dev@openstreetmap.org>
    http://lists.openstreetmap.org/listinfo/dev

    _______________________________________________
    dev mailing list
    dev@openstreetmap.org <mailto:dev@openstreetmap.org>
    http://lists.openstreetmap.org/listinfo/dev



_______________________________________________
dev mailing list
dev@openstreetmap.org
http://lists.openstreetmap.org/listinfo/dev

_______________________________________________
dev mailing list
dev@openstreetmap.org
http://lists.openstreetmap.org/listinfo/dev

Reply via email to