Book Image

Learning Couchbase

By : Henry Potsangbam
Book Image

Learning Couchbase

By: Henry Potsangbam

Overview of this book

This book achieves its goal by taking up an end-to-end development structure, right from understanding NOSQL document design to implementing full fledged eCommerce application design using Couchbase as a backend. Starting with the architecture of Couchbase to get you up and running, this book quickly takes you through designing a NoSQL document and implementing highly scalable applications using Java API. You will then be introduced to document design and get to know the various ways to administer Couchbase. Followed by this, learn to store documents using bucket. Moving on, you will then learn to store, retrieve and delete documents using smart client base on Java API. You will then retrieve documents using SQL like syntax call N1QL. Next, you will learn how to write map reduce base views. Finally, you will configure XDCR for disaster recovery and implement an eCommerce application using Couchbase.
Table of Contents (12 chapters)
Index

Mapping with SQL to MapReduce


We can perform most SQL operations in views also. We only need to change the way we visualize data extraction from the database using SQL and think in terms of the map and reduce functions. Here, we will see how to incorporate SQL queries into the MapReduce format.

Select and where conditions

Any fields or attributes selection for a document from a bucket can be performed by adding it to the emitted key or the value of the map function, which can be used for selection of attributes in the result set or for performing aggregation in the reduce function. The key generated by the map() function determines the ability of the view to query the bucket. Whenever you want to select documents based on some attributes of a document, you need to mention all those attributes that need to be part of the conditions as part of the key emitted by the map function.

Wherever conditions enable filtering of result set is required, it can be in cooperated using parameters such as key...