incubator-couchdb-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Volker Mische <>
Subject Re: using couchdb for 100GB geodata from openstreetmap
Date Sun, 22 Mar 2009 23:07:46 GMT
Is there a difference between a custom view engine and the approach I
try to pursue with GeoCouch? It still comes down to the fact that you
need to store the spatial information in some kind of (external) spatial


Damien Katz wrote:
> Random idea: a custom view engine for geospatial data
> Store the documents like normal and have the custom engine index them
> for geospatial queries. Then you query the view engine (GET
> /db/_geo?yada=... )
> -Damien
> On Mar 22, 2009, at 6:54 PM, Volker Mische wrote:
>> pablo platt wrote:
>>> On Mon, Mar 23, 2009 at 12:32 AM, Volker Mische
>>> <>wrote:
>>>> Hi,
>>>> I'll only reply to the GeoCouch bit:
>>>>> I've read about geocouch -
>>>>> and my question is if a geo aware couchdb can be built without any
>>>>> python
>>>>> and SpatiaLite code?
>>>>> If I want to be able to make proximity searches - find banks in 3km
>>>>> range
>>>>> from st some-street
>>>>> do I need to create some kind of index docs for the views?
>>>> The problem is that proximity searches are kind of dynamic. CouchDB
>>>> views are like precomputed result-sets, but you can't precompute all
>>>> possible values, as the center of the search could possibly be
>>>> anywhere.
>>>> Therefore you need something that makes such dynamic requests possible.
>>>> Pure CouchDB could be used if you constrain your searches. You would
>>>> need to restrict to things like, a certain number for the center of
>>>> searches, only a fixed number of radii, and a fixed number of location
>>>> types (like banks, restaurants etc).
>>>> Cheers,
>>>>  Volker
>>> I've asked on the #couchdb channel and got the same answer.
>>> The 'Name Finder' on OSM
>>> divides the map to region and add a field to each element(place)
>>> indicating
>>> what region it belongs.
>>> When you make a search "banks near someRoad" it find in which region
>>> someRoad is and find all the banks in that road.
>>> So you are limited to predefined distances but the above design will
>>> work in
>>> couchdb as well.
>>> There is an assumption that they used this design because they used
>>> MySQL
>>> but I can't verify that.
>>> My question is if arbitrary distances are not a requirement of my
>>> app, is it
>>> better to use couchdb for storing the geodata
>>> or is it better to use a spatial db like postGIS in any case.
>>> Thanks
>> As much as I love CouchDB, your application sounds like a typical case
>> for PostGIS. The tools to import OSM data into PostGIS are there, and
>> you have a spatial index. Though you would obviously lose all the other
>> nice CouchDB features (like replication etc).
>> Cheers,
>>  Volker

View raw message