Couchbase Advances N1QL Delivering 2-3x Faster Query Performance and Full Data Manipulation Support
December 15, 2015
New features and capabilities in Couchbase Server 4.1 make it easier for developers to build agile enterprise applications that operate at any scale
MOUNTAIN VIEW, Calif. – December 15, 2015 – Couchbase today announced general availability of Couchbase Server 4.1, demonstrating rapid delivery of powerful new functionality and better performance on its landmark 4.0 release. The new release adds full CRUD support, as well as covering indexes and prepared statements to reduce latency of complex queries. It also expands platform support to further accelerate the adoption of Couchbase by large enterprises and the developer community. These improvements are driving upgrades from earlier versions with 20 percent of Couchbase enterprise customers already actively working on version 4.0 to expand the use cases running on Couchbase Server.
“Couchbase is the only database vendor to bring the power and benefits of SQL to the new JSON data model and marry it with the performance of a distributed architecture that can both scale out and scale up,” said Ravi Mayuram, senior vice president, products and engineering, Couchbase. “This new release makes it easier than ever for developers to build agile enterprise applications on a NoSQL database that has the architecture to operate at any scale.”
“We chose Couchbase to underpin one of our mission-critical applications for several reasons. Its best in class architecture and performance at scale are clear differentiators, but lesser known is that with the introduction of N1QL, its document capabilities make it possible to replace use cases where we’ve previously used relational,” said Suresh Subasinghe, principal architect, enterprise applications architecture, United Airlines. “N1QL’s similarity to SQL makes it easier for us to introduce NoSQL to the enterprise, and the introduction of covering indexes in the 4.1 release significantly increases the performance of N1QL queries, making my team even more excited for what we can do with Couchbase."
Industry Standard CRUD Operations for NoSQL
In October, Couchbase introduced N1QL, a new SQL-based query language, which makes it easy for developers familiar with SQL to build applications on top of a JSON data model. With the release of Couchbase Server 4.1, Couchbase has extended N1QL and is offering full support for all CRUD (Create, Read, Update, Delete) operations with industry standard SQL-based N1QL:
- INSERT allows both singleton and multi-document inserts;
- UPDATE and DELETE enable the manipulation of a set of documents based on specific criteria. Both of these statements use available indices to efficiently identify and update documents;
- UPSERT and MERGE statements combine two sets of documents based on given criteria.
Support of CRUD operations through standard SQL syntax makes it exponentially faster for developers to manipulate JSON documents just as simply as they would handle tables with SQL. Additionally, these new N1QL statements are fully supported in Couchbase SDKs, REST APIs, and Simba’s JDBC and ODBC drivers.
“We continue to be impressed with Couchbase’s speed of innovation. By further extending N1QL for support of CRUD, Couchbase is giving SQL developers a faster and easier on-ramp to NoSQL,” says Simba Technologies Chief Technology Officer George Chow. “With the release of Couchbase Server 4.1, the Simba Couchbase ODBC and JDBC drivers now offer full data-manipulation support in either N1QL or SQL syntax, meaning developers can access the Couchbase buckets with N1QL, or read data with the ODBC/JDBC tables via SQL. Additionally, DML queries can operate on either the bucket or table level. This allows for an unprecedented level of query scope control while reducing the number of operations and reducing the amount of network bandwidth required to complete a task.”
Faster Query Results in Distributed Database Environment
Couchbase Server 4.1 introduces two new features that reduce latency of complex queries in a distributed database environment: covering indexes and prepared statements. These two features bring performance improvements for N1QL queries that make it even easier for developers to build applications and enterprises to expand use cases running on Couchbase Server:
- Covering Indexes: A covering index is an index that contains all the fields required by a specific query. With a standard index, a query request will first scan the index for data and then spend additional time searching for the right data to complete the query. By using a covering index, only the scan of that covering index is required for data access. The result is lower query latency and a faster performing application.
- Prepared Statements: A prepared statement enables execution of the same or similar query many times with high efficiency by avoiding repeated query parsing and optimization. Many applications require repeated execution of pre-defined queries with different parameters. Performing these repeated queries as ad-hoc statements requires query parsing, planning and execution each time the query is launched. Using a prepared statement template, where the execution plan is fixed and only specific variables are substituted each time the query is run, removes the overhead computing required to parse and compile an execution plan for these often-repeated queries. The result is lower latency and reduced CPU cycles – and a faster performing application.
“Seenit recently made the jump from Couchbase Server 3.1 to the 4.0 release so we could take advantage of N1QL for our ad-hoc querying needs. So far it’s been great and we’ve managed to release a lot of new features using N1QL that would have previously taken us much longer to develop,” said Dave Starling, chief technology officer at Seenit. “With 4.1, we’ve been able to take this even further and improve the performance for our users using the new covering indexes and prepared statements, as well as develop new features that take advantage of the new CRUD operations.”
Extended Support for Major Platforms
Couchbase Server 4.1 extends support to Windows 10 and OSX El Capitan. Couchbase Server now has full support for Red Hat Enterprise Linux, SUSE Enterprise Linux, Oracle Enterprise Linux, Ubuntu Linux, CentOS, Debian Linux, Windows and Mac OSX. For a list of supported versions, visit the Couchbase Developer Portal.
At Couchbase, we believe data is at the heart of the enterprise. We empower developers and architects to build, deploy, and run their most mission-critical applications. Couchbase delivers a high-performance, flexible and scalable modern database that runs across the data center and any cloud. Many of the world’s largest enterprises rely on Couchbase to power the core applications their businesses depend on. For more information, visit www.couchbase.com.