couchdb-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Sebastian Cohnen <>
Subject Re: large attachments/huge databases ?`
Date Thu, 13 May 2010 18:35:45 GMT
>>> -another point is general performance of about e.g. 200.000 documents in a single
>>> database ... how is disk usage when maintaining versioning of each document ?
>>> -can the versioning be deactivated or deleted ?!
>> Again, there is no "versioning" of documents - at least not what most people expect
from document versioning. There are only two reasons why couchdb keep "versions" of documents:
MVCC and the append-only principle.
>> You need to compact your database on a regular bases (depending on your updates to
documents) and no, there is no way to completely disable "versioning" (and it wouldn't make
any sense to do that). The append-only approach leads automatically to higher disk usage compared
to in-place updates, thus you need to cleanup your database (run compaction) but you win robustness
and there is no fixup phase needed in case of hardware failure e.g.
> in fact i would like to use the versioning exthausive, because each version of a task
status should be
> accessible, can i access older versions of a document easily ?!
> the versioning feature is quite cool, because i would have to implement it using hibernate/spring
> otherwise ...

there is no document versioning in the conventional sense! old revisions are only kept for
conflict resolution and duo to the append-only approach. you should never rely on old versions
to be around. e.g. when you compact your database, old revisions are removed.

when you need versioning, you need to implement it explicitly.
View raw message