couchdb-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From John Cheng <johnlich...@gmail.com>
Subject CouchDB performance
Date Thu, 11 Aug 2011 17:54:02 GMT
I published some Python scripts to help me evaluate the performance of
CouchDB (https://github.com/jlcheng/couchdb-test). I was hoping the folks
here can help me understand what I am seeing.

The raw spreadsheet of my findings:
https://spreadsheets0.google.com/spreadsheet/pub?hl=en_US&hl=en_US&key=0AtagEcs-wlFDdGVfMGItdUIxQXcyTmZxdVdOMUw4TWc&output=html

First, I've found that the Document Update Handler API performed worse than
using Python to get, modify, then update the document when the application
code is running on the same machine as CouchDB. This is surprising to me. It
leads me to believe that when the network is not a bottleneck, it might be
better to avoid update handers.

Second, the insert performance is not as good as I'd hoped - at least for
large documents (100 kB+). The update performance is even worse. When using
the "benchbulk.sh" script with a DOCSIZE of 100 kB and a BULKSIZE of 15, I
am seeing about 12 inserts per second. Using my Python script, I was seeing
81 inserts/second and 30 updates/seconds for 100 kB documents. This is on a
single 7200 rpm SATA drive. A write performance of 3 MB per second seems
low.

In brief, there are two things I can learn more about: Is is expected for
the Document Update API to be slower? Two, does this kind of write and
update performance look right?

This is a Ubunut 10.01 system with

4GB RAM
900GB 7200 rpm SATA drive
CouchDB 1.0.2 compiled using https://github.com/couchone/build-couchdb

And the stock CouchDB 0.10.0 from Ubuntu has similar performance as well.

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message