couchdb-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Ian Hobson <ian.hob...@ntlworld.com>
Subject Re: Design considerations
Date Wed, 10 Nov 2010 11:49:20 GMT
On 09/11/2010 19:40, roger.moffatt@gmail.com wrote:
> Thanks Zach, that's most helpful.
>
> Regarding the number of databases that can be open at once, how
> quickly are the connections closed down? If a user loads a web page
> (via a server side application layer) which accesses their database
> for example, is their connection closed pretty much immediately, or
> does it linger around for a while? If so ... how long is "a while"?
> Does this make sense? I'll give some thought to the sharding we could
> use to keep within sensible limits in the meantime.
>
> Shame about COPY not working between databases, but I guess not
> surprising. Replication filters sound interesting ... and looking at
> the docs I see I can do named document replication, which is
> effectively a COPY and hence perfect I think?
>
>> Finally, you'll really need to consider if/how/when folks will update
>> this data. If two users both want to update the same document on their
>> slices, and replicate their modifications back to the central
>> database, you're going to have to build conflict resolution into your
>> system.
> Experience shows that data tends to be edited shortly after document
> creation and rarely thereafter. Equally it's almost always edited by
> the person that created it - so the two users simultaneously editing a
> document scenario will be extraordinarily rare, but we will indeed
> need to handle conflict resolution if it happens. I've seen that in
> action with some of my tests and think that should all be fine.
>
Hi Roger,

An idea occurs to me. If you have one central database containing all 
the documents,
then you would not have the vast requirements of disk space.

Each user has his own, small database of index records. When he wants a 
document
the software would have to use the index document to get the _id in the main
database and load that.

You may have to work round cross site scripting issues either by using a 
proxy
or writing code run on the client. No sure.

Please treat these ideas as a start point - I'm no couchDB expert. 
Perhaps someone who
knows can comment?

Regards

Ian





Mime
View raw message