3 ms·
Another thing I consider a great feature of CouchDB is the cached map-reduce views. It makes it easy to think and reason about indexing. I've seen this situati
by hasenj 14y ago
Another thing I consider a great feature of CouchDB is the cached map-reduce views. It makes it easy to think and reason about indexing.
I've seen this situation quite a bit with traditional SQL databases: somehow you end up with a giant complicated query, and it's becoming a bottle-neck and it's having a terrible impact on performance. Somehow you need to untangle the mess and figure out where the problem is. Sometimes you find out the query is just poorly written. Other times the problem is fixed by simply adding indexes to some table.
This is a terrible situation I don't want to run into.
I have a feeling MongoDB might also suffer from a smilar problem, because it doesn't have cached map-reduce views; it has a query language.
In CouchDB, views are pretty much indexes, and they're pretty much the only way to do a query. I'd argue that because it's explicit like that, it's easy to reason about.
- sbisbee 14y agoYeah, we call it Incremental MapReduce and we _LOVE_ it. I swear, it's one of the biggest "ah ha!" moments whenever I do training for Cloudant's customers. The basic idea is that the intermediate Map function results are persisted, while most other system (read: hadoop) throws them out. If you're interested in some of the MapReduce history, where it's going, incremental indexing, etc., then you should read this: http://gigaom.com/cloud/why-the-days-are-numbered-for-hadoop-as-we-know-it/ http://gigaom.com/cloud/why-the-days-are-numbered-for-hadoop... Cheers.