Hi I ran some benchmarks using httperf against a small EC2 instance.
Read performance was roughly the same whether I requested a doc by id or via a map view. CouchDB consistently served about 100 req/sec. The number of docs made no difference to the query time for map views, or reduce views with group=false. Things change as soon as a group_level is specified. With 38k key/doc pairs emitted by the map function, response rate dropped to about 2.5 req/sec when querying with group_level=2. For 1580k docs, it was down to 0.5 req/sec. Querying the 1580k docs with differing group levels gave me the following response times group_level=0 - 0.035s (1 x reduce, 1 x rereduce - 271 bytes) group_level=1 - 0.120s (1 x reduce, 1 x rereduce - 308 bytes) group_level=2 - 2.010s (79 x reduce, 79 x rereduce - 26531 bytes) What I'm wondering is why the per group level results of a reduce aren't stored in the view index. Thanks Paul