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

Best practices


Let's understand some best practices and considerations that you, as an administrator, need to keep in mind while configuring a Couchbase cluster.

Cluster design

While designing a Couchbase cluster, we need to think in terms of RAM, CPU cores, the number of nodes, and disk I/O:

  • RAM: The most crucial component in a Couchbase cluster is the RAM. The optimal response will be provided by the cluster whenever most of the working set data required by applications is located in the RAM. Hence, proper sizing of the RAM is required for good performance. The administrator should calculate the proper working set data and allocate enough memory for storing it to provide optimal performance, since all reads and writes will occur directly through the memory.

  • Nodes and cores: How many nodes should be there in a cluster? It's better to have more nodes than fewer nodes with high-capacity hardware resources. After calculating the required memory, you can find out the number of nodes required...