Limitations of MapReduce

While very powerful and applicable to a wide variety of problems, MapReduce is not the answer to every problem. The index generated in the Map step is one dimensional, and the Reduce step must not generate a large amount of data or there will be a serious performance degradation. For example, CouchDB’s MapReduce may not be a good fit for full-text indexing or ad hoc searching. This is a problem better suited for a tool such as Lucene. Fortunately, you can integrate CouchDB with Lucene using couchdb-lucene, or by integrating ElasticSearch and CouchDB. Indexing and searching geospatial data is also not easily done within CouchDB, but is possible using a CouchDB extension called GeoCouch.

Get Writing and Querying MapReduce Views in CouchDB now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.