Have Your Data and Query It Too

Dipti Borkar, Ravi Mayuram, Gerald Sangudi, Michael Carey
2016 Proceedings of the 2016 International Conference on Management of Data - SIGMOD '16  
Couchbase Server is a rethinking of the database given the current set of realities. Memory today is much cheaper than disks were when traditional databases were designed back in the 1970's, and networks are much faster and much more reliable than ever before. Application agility is also an extremely important requirement. Today's Couchbase Server is a memory-and network-centric, shared-nothing, auto-partitioned, and distributed NoSQL database system that offers both key-based and secondary
more » ... x-based data access paths as well as API-and query-based data access capabilities. This is a major change from Couchbase's roots; in its early days, its focus was entirely on high performance and highly available key-value (memcache) based caching. Customer needs and competitive pressures in the evolving nonrelational database market also accelerated this change. This paper describes the architectural changes needed to address the requirements posed by next-generation database applications. In addition, it details the implementation of such an architecture using Couchbase Server and explains the evolution of Couchbase Server from its early roots to its present form. Particular attention is paid to how today's Couchbase Server cluster architecture is influenced by the memory-first, high-performance, and scalability demands of typical customer deployments. Key features include a layer-consolidated cache, a consistency-controllable interplay between updates, indexes, and queries, and a unique "multidimensional" approach to cluster scaling. The paper closes with a look at future plans for supporting semi-structured operational data analytics in addition to today's more OLTP-like, front-facing use cases by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from Permissions@acm.org. SIGMOD'16,
doi:10.1145/2882903.2904443 dblp:conf/sigmod/BorkarMSC16 fatcat:drhqy62livgdjd7pnjs4nhjvgi