incubator-couchdb-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Antony Blakey <>
Subject Re: partial/diff updates?
Date Thu, 27 Nov 2008 21:38:32 GMT

On 28/11/2008, at 3:29 AM, Timo Isokoski wrote:

> Is this talk about the "diff" feature related to
> a) How CouchDB physically stores the data on disk
> b) How data is transmitted between the client and CouchDB
> In case a) I think diffs are the devil and it goes aganist the  
> simplicity of
> CouchDB:s inner workings. In case b), wouldn't it be easy to  
> implement some
> kind of a prototype of this feature as a "proxy server" on top of  
> CouchDB.
> The proxy could route the normal requests directly to CouchDB and  
> the actual
> diff requests could be handled like this:
> 1. GET the original document from Couch
> 2. Apply diff
> 3. PUT the modified document back to the Couch
> The functionality can then be integrated into CouchDB inself if the
> prototype works well and and people start using it.

It's case b. Integrating it with CouchDB to test it isn't that  
difficult - certainly not difficult enough to justify implementing it  
as a separate proxy, which IMO would involve lots of unnecessary  

Those 3 steps are exactly what you would do as a plugin/extension.

I think that any real-world application that justifies partial updates  
probably also justifies partial gets, and not just a single access  
path selection.

Antony Blakey
CTO, Linkuistics Pty Ltd
Ph: 0438 840 787

There are two ways of constructing a software design: One way is to  
make it so simple that there are obviously no deficiencies, and the  
other way is to make it so complicated that there are no obvious  
   -- C. A. R. Hoare

View raw message