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
