Couchbase Releases Second Java SDK 2.0 Developer Preview
- By John K. Waters
- July 29, 2014
Couchbase, the Mountain View, Calif.-based provider of database management systems built with the Apache CouchDB database, has released a second developer preview of the upcoming 2.0 version of its Java/JVM software development kit (SDK). Codenamed "Armstrong," the Couchbase Java SDK preview includes both the JMV core package (core-io 0.2) and the Java SDK 2.9 preview 2.
The company built its Java SDK on RxJava and uses Netty as a consolidated IO layer. RxJava is a Java implementation of the open-source Reactive Extensions project (Rx), which is actively developed by Microsoft Open Technologies. Rx is a library for composing asynchronous and event-based programs using observable sequences and LINQ-style query operations for Java, Groovy, Clojure, Scala and JRuby. Netty is a non-blocking I/O client-server framework that simplifies network programming in Java.
The first developer preview, released in May of this year, added the Typesafe Config library (a configuration library for JVM languages from the company behind Scala and Akka), but the company didn't mention it at the time, so it seems new in this preview. The Typesafe library provides "a versatile way to configure application libraries," Couchbase product marketing manager Don Pinto wrote in a blog post, but added, "We certainly believe that this is also a library that you can reuse in your own applications, since it provides a wide range of useful methods and configuration options."
Definitely new in this release are APIs for both View and N1QL. "Views" process information stored in a Couchbase Server database, creating an index on that information according to the format and structure defined within the View. N1QL (pronounced "nickel") is a Couchbase query language designed to work with semi-structured and unstructured data.
With this preview release, the company extends the core package to support rebalance -- adding, removing, failing over nodes -- while it's running. This capability makes it possible to change cluster configuration while running workloads, according to the company. This feature is still undergoing testing, Pinto noted, and the company is anxious to hear about any rebalance-related bugs.
The company expects the next release to be a beta aimed at feature completeness, Pinto said. He gave no date for that release. But he did say that the next major server version would likely include support client-side encryption, which is already built into this developer preview.
About the Author
John K. Waters is the editor in chief of a number of Converge360.com sites, with a focus on high-end development, AI and future tech. He's been writing about cutting-edge technologies and culture of Silicon Valley for more than two decades, and he's written more than a dozen books. He also co-scripted the documentary film Silicon Valley: A 100 Year Renaissance, which aired on PBS. He can be reached at [email protected].