On Feb 26, 2013, at 12:19 PM, Daniel Gonzalez 
<[email protected]<mailto:[email protected]>> wrote:

Just curious: is there a major technical reason not to have that capability
integrated in couchdb, or is just a matter of separation of
responsibilities and specialization?

The latter, I think. CouchDB is lower-level than that. Its views are the types 
of indexes that, say, a SQL database would generate, but view queries are 
pretty limited to doing the types of queries you can natively do on a 
pre-existing index, like subranges and grouping.

The kind of more complex queries you want require an engine that’s built on top 
of that, which can plan out what indexes are needed for a query, generate them 
if necessary, extract data from one or more indexes, and then 
merge/collate/transform it. In other words, the kind of code you’re complaining 
about writing. :) Architecturally, this would be a layer on top of CouchDB, and 
fairly separable from it, so it’s best done with a plugin or extension like the 
ones that have been mentioned already.

I realize that there are mature
projects out there which have very powerful querying capabilities, but for
simple setups a limited querying support would be very useful.

Are you sure you’ve exhausted what CouchDB can do? I don’t know how much 
experience you have, but a lot of new users don’t realize the tricks you can do 
with complex keys, subranges, grouping, etc.

—Jens

Reply via email to