incubator-couchdb-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Konrad Förstner <kon...@foerstner.org>
Subject Why do my CouchDB databases grow so fast?
Date Mon, 31 May 2010 12:10:24 GMT
Hi,

I have an issue with CouchDB and posted the question on stackoverflow
[1] but did not get any helpful answer. I would be great if somebody
could answer this here or a stackoverflow (there I also had a problem
with the compaction which was just a timing issue as explaint in the
comment)

I was wondering why my CouchDB database was growing to fast so I wrote
a little test script [2]. This script changes an attributed of a CouchDB
document 1200 times and takes the size of the database after each
change. After performing these 1200 writing steps the database is
doing a compaction step and the db size is measured again. In the end
the script plots the databases size against the revision numbers. The
benchmarking is run twice: 

* The first time the default number of document revision (=1000) is used (_revs_limit).  

* The second time the number of document revisions is set to 1.

The first run produces the following plot
http://www.flickr.com/photos/konradfoerstner/4656011444/

The second run produces this plot second run
http://www.flickr.com/photos/konradfoerstner/4656012732/

For me this is quite an unexpected behavior. In the first run I would
have expected a linear growth as every change produces a new
revision. When the 1000 revisions are reached the size value should be
constant as the older revisions are discarded.

In the second run the first revision should result in certain database
size that is then keeps during the following writing steps as every
new revision leads to the deletion of the previous one.

I could understand if there is a little bit of overhead needed to
manage the changes but this growth behavior seems weird to me. Can
anybody explain this phenomenon or correct my assumptions that lead to
the wrong expectations?

Many thanks in advance

Konrad

[1] http://stackoverflow.com/questions/2921151/why-do-my-couchdb-databases-grow-so-fast
[2] http://github.com/konrad/couchdb-benchmarking






Mime
View raw message