couchdb-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Robert Koberg <>
Subject Re: Considerations for lots and lots of databases?
Date Sat, 10 Jan 2009 18:42:20 GMT

On Jan 10, 2009, at 1:16 PM, Jan Lehnardt wrote:

> On 10 Jan 2009, at 19:07, Chris Anderson wrote:
>> On Sat, Jan 10, 2009 at 9:19 AM, Kurt Mackey <>  
>> wrote:
>>> Now, the obvious downside is that it makes it more difficult to do  
>>> cross-customer queries.  But what other problems are there with  
>>> this idea?  Assuming that there were lots and lots and lots of  
>>> accounts, what performance implications are there to giving each  
>>> their own DB rather than making them all share?
>> CouchDB keeps each database in it's own file, so if you can spread  
>> the
>> files across disks (using symlinks for now) you should get better
>> performance with many databases. DB-per-user is a good pattern also
>> because it means you can let users replicate their entire account
>> locally, without worrying about filtering out extra data.
> In addition, if you name your databases "foo/bar" CouchDB will  
> actually
> create that as a structure on disk to avoid running into trouble with
> filesystems that don't like a lot of files in a single directory.

Is this new? From:


"Note also that a / character in a DB name must be escaped when used  
in a URL; if your DB is named his/her then it will be available at  
[WWW] http://localhost:5984/his%2Fher. "

I thought it would just create the directory 'his%2Fher'

If new, do you still need to escape the slash in a URL?


> Setups with 1 million databases representing users have been tested
> successfully.
> Cheers
> Jan
> --

View raw message