Category: High Performance

Divide and Conquer: Couchbase GSI Index partitioning.
In Couchbase, data is always partitioned using the consistent hash value of the document key into vbukets which are stored on the data nodes. Couchbase Global Secondary Index (GSI) abstracts the indexing operations and runs as a distinct service within...

Building an Observation Deck
A distributed system is one in which the failure of a computer you didn’t even know existed can render your own computer unusable. – Leslie Lamport, 1987 While those prescient words were uttered in 1987, it remains the case in...

Understanding Index Grouping And Aggregation in Couchbase N1QL Query
Couchbase N1QL is a modern query processing engine designed to provide aggregate SQL for JSON by index on distributed data with a flexible data model. Modern databases are deployed on massive clusters. Using JSON provides a flexible data mode. N1QL...

Develop with Agility, Develop at any Scale with Couchbase on Cisco UCS
Author’s note: This excerpt from the Couchbase on Cisco UCS® solution brief is published on behalf of Cisco. Full solution brief for Couchbase on Cisco UCS® is available later in this blog. As the world migrates to a digital economy, businesses are...

Database Pagination: Using OFFSET and Keyset in N1QL
Read the pagination background in my previous article: https://www.couchbase.com/blog/optimizing-database-pagination-using-couchbase-n1ql/ Pagination is the task of dividing the potential result into pages and retrieving the required pages, one by one on demand. Using OFFSET and LIMIT is the easy way to write...

Comparing Couchbase Views with Couchbase N1QL & Indexing.
As Couchbase data platform evolved, services like N1QL and GSI Indexing handled the use cases Couchbase VIEWS used to handle and much more. It’s logical to ask the comparative question between them. Here is a table comparing both. This is...

Create the Right Index, Get the Right Performance.
Introduction There are three things important in database systems: performance, performance, performance. For NoSQL database systems, there are three important things: performance at scale, performance at scale, performance at scale. Understanding the index options, creating the right index, with the...

Tooling Improvements in Couchbase Server 5.0 (Update)
Tooling improvements have come to Couchbase Server 5.0. Note: this is an updated repost of Tooling Improvements in Couchbase 5.0 Beta. In this blog post, I’m going to show you some of the tooling improvements in: Query plan visualization –...

Profiling and Monitoring in Couchbase Server 5.0 Preview (Update)
Profiling and monitoring for N1QL are a big part of the Couchbase Server 5.0 release (now available for download). Note: this is an updated repost of Profiling and Monitoring in Couchbase Server 5.0 Preview (Update). Query Workbench Once again, I’ll...

Optimizing Database Pagination using Couchbase N1QL.
Background: How does Google do it? When you google something or anything, it gives you back top relevant results, tells you an approximate number of documents for your topic — all under a second. Here are some high-level pointers: https://www.google.com/search/howsearchworks/algorithms/...

N1QL: A Practical Guide. Second Edition
Two years and two weeks ago, on a crisp fall day at Wall Street in New York, we launched N1QL in Couchbase 4.0. Even before the launch, we had customers using pre-release N1QL because it solved the critical business problem:...

Optimize N1QL performance using request profiling
Monitoring uncovered the resource hog. Now what? Couchbase Server 4.5 introduced a mechanism to keep an eye on executing requests, so that slow performers could be highlighted. This DZone article covers the subject of N1QL monitoring in great detail, but...