couchdb-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Ben Hood <>
Subject Re: Temporal data
Date Sun, 08 Mar 2009 11:35:49 GMT

On Sun, Mar 8, 2009 at 3:30 AM, Chris Anderson <> wrote:
> CouchDB does not do document versioning. Because of it's append-only
> files, the storage model will allow access to snapshots of the
> database at each seq num. The file driver needs a little work to close
> the gap, but once the code is written, you'll be able to roll back to
> point in time snapshots of the database (as long as you don't compact,
> which means storage is unbounded.)

Cool. Does this mean that you guys this in the pipeline or is just
something that you think would be doable?

Also - when you say that you can rollback to an arbitrary snapshot -
will this restore the entire database's state to that point in time,
or can this be done as a per-user view?

The requirement I am investigating is allowing individual users to run
diffs between two arbitrary snapshots, so I am not so much interested
in restoring or rolling back, rather producing an intertemporal view
of the database. I imagine this is similar to the zfs send/receive
functionality, so that you're not restoring in place, rather you just
poking around in different snapshots.

> The solution is to store each document version as a different CouchDB
> document. Jan is building an example wiki these days.

Do you mean to say that it is more effective to version on a document
level rather than snapshotting the underlying storage?


View raw message