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

Built-in reduce functions


Often, we want to perform summarized/aggregate operations on data, such as count or grouping of documents by some attributes and using it to report or get statistics about some documents. This kind of grouping of data or documents takes place in the reduce function of the view. For example, we want to find the total number of users in our LearningCouchbase bucket, the total number of skill sets by the user, and so on. The reduce() function will reduce an array of values emitted by the corresponding map() function. Couchbase ensures that the reduce function is applied to each record of the input parameter, and the returned value is the result of the view. The output of the reduction is stored along with the view information. There are three in-built reduce functions provided by Couchbase out-of-the-box.

count

The count function is used to count the number of documents emitted by the map function. You need to set the reduce parameter equal to true to use the reduce...