couchdb-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Jens Alfke <j...@mooseyard.com>
Subject Re: Performance
Date Wed, 18 Feb 2009 16:52:54 GMT

On Feb 18, 2009, at 5:28 AM, evgeny_n wrote:

> i can't understand some thing, please explain me =)
> I have writing performance about 30 documents per second.

If you're writing documents in individual transactions, that's around  
what I would expect. I'm not experienced with CouchDB, but I've done a  
lot of work with sqlite, which is similar in that it's a local  
filesystem-based database. Transactions are expensive because each one  
requires updating the file and flushing the filesystem changes to disk  
(the latter cost can be very significant.)

> Best result that I get is about 30 sends per second! Why so slow?
> Performance monitor on server shows that CPU is 40% all time (Disk and
> Network is 30-40% too). On test machine - there is no full CPU  
> activity too.

You could try to get some more detailed statistics...

How does the CPU usage break down by process? (If there are view  
updates going on, the map and reduce functions will be running in  
external spidermonkey processes, if I understand the architecture  
correctly.)

I'm not a Windows user, but does it have facilities that let you do  
runtime profiling of processes? (I'm thinking of the 'sample' tool on  
Mac OS X, which is an essential tool for diagnosing where a process is  
spending its time.)

Can you log the filesystem calls (again, the tool I would use on my  
platform is fs_usage.)

—Jens
Mime
View raw message