couchdb-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Chris Anderson <>
Subject View Performance (was Re: The 1.0 Thread)
Date Wed, 01 Jul 2009 09:01:54 GMT
On Wed, Jul 1, 2009 at 12:26 AM, Scott Shumaker<> wrote:
> Some of our views are invoked with stale=ok - but most of them can't
> afford to be - if a user takes an action, typically they need to see
> the results of that action if they continue on the site.
> We're using CouchDB as our main persistent storage underlying our
> entire site - which has data that is pretty darn complex.  We have
> very little back-end code - we do almost everything in run-time on the
> client in Javascript - loading in complex object hierarchies and
> resolving cross-object pointers.  So we use views very heavily,
> because typically you're loading a lot of different objects at once.
> We are using the view filter patch, which helped a tiny bit - but our
> data set isn't even that large yet (40k objects, admittedly many are
> several K in size, or more) and the performance isn't great.  So I'm
> definitely very concerned.  If we had the time to learn Erlang and the
> CouchDB codebase, maybe we'd muck around to try to find optimizations.
>  In lieu of that, we have to keep our fingers crossed for some
> speedups, or failing that abandon CouchDB entirely in the next few
> months.  :(

The slow performance you describe seems out of the ordinary. Perhaps
you would benefit from upgrading Erlang or CouchDB? Is there any
chance you are writing reduces which build up large data structures?

How many views do you have and in how many design documents are they stored?


> Scott
> On Tue, Jun 30, 2009 at 11:52 AM, Peter Hsu<> wrote:
>> Scott - I don't know the details of your application.  What we tend to do with our
couch-backed app is rely on stale=ok for user-facing views.  We then run a cron to update
the view so that users will never get really stale data.  This is acceptable for our application,
and may be for yours?
>> +1 on view performance
>> +1 on erlang view server
>> +1 on consolidating multiple views

Chris Anderson

View raw message