Return-Path: X-Original-To: apmail-couchdb-user-archive@www.apache.org Delivered-To: apmail-couchdb-user-archive@www.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id C6D7979B2 for ; Thu, 11 Aug 2011 18:03:00 +0000 (UTC) Received: (qmail 63248 invoked by uid 500); 11 Aug 2011 18:02:58 -0000 Delivered-To: apmail-couchdb-user-archive@couchdb.apache.org Received: (qmail 63228 invoked by uid 500); 11 Aug 2011 18:02:58 -0000 Mailing-List: contact user-help@couchdb.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: user@couchdb.apache.org Delivered-To: mailing list user@couchdb.apache.org Received: (qmail 63220 invoked by uid 99); 11 Aug 2011 18:02:58 -0000 Received: from athena.apache.org (HELO athena.apache.org) (140.211.11.136) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 11 Aug 2011 18:02:58 +0000 X-ASF-Spam-Status: No, hits=-0.7 required=5.0 tests=FREEMAIL_FROM,RCVD_IN_DNSWL_LOW,SPF_PASS,T_TO_NO_BRKTS_FREEMAIL X-Spam-Check-By: apache.org Received-SPF: pass (athena.apache.org: domain of kxepal@gmail.com designates 209.85.212.52 as permitted sender) Received: from [209.85.212.52] (HELO mail-vw0-f52.google.com) (209.85.212.52) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 11 Aug 2011 18:02:53 +0000 Received: by vws16 with SMTP id 16so2819384vws.11 for ; Thu, 11 Aug 2011 11:02:32 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :content-type; bh=pKzKG1CUjO3INpDOJwauTwoW8CC+UVbHxrn9hMjM8mM=; b=gVDqGHK87boDGc3Tsl64SRWqIoZdrRCI67rYW+Dn6naDVX/TsrKz0xcDEUVnOHHRB0 G/Sbqy6kihp+ChI7u4FgrzP7JQIwhJjijZcZhjZB6ObY1JfX/QbEyWUI9imvKI3j8AsH f9hlXBRIJEq5bDorjJaUL0nyLe98FPw4WACAg= MIME-Version: 1.0 Received: by 10.220.162.143 with SMTP id v15mr2893912vcx.115.1313085752626; Thu, 11 Aug 2011 11:02:32 -0700 (PDT) Received: by 10.220.201.2 with HTTP; Thu, 11 Aug 2011 11:02:32 -0700 (PDT) In-Reply-To: References: Date: Thu, 11 Aug 2011 22:02:32 +0400 Message-ID: Subject: Re: CouchDB performance From: Alexander Shorin To: user@couchdb.apache.org Content-Type: text/plain; charset=UTF-8 Hi, John! Regarding couchdb-python there is opened issue about insert performance: http://code.google.com/p/couchdb-python/issues/detail?id=193 Suddenly, nothing serious could be done there, but you may take a look at PyCurl solution and solution using raw sockets instead of httplib module. ------------------ ,,,^..^,,, On Thu, Aug 11, 2011 at 9:54 PM, John Cheng wrote: > 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. >