Couchbase Releases Second Java SDK 2.0 Developer Preview
- By John K. Waters
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.
John has been covering the high-tech beat from Silicon Valley and the San Francisco Bay Area for nearly two decades. He serves as Editor-at-Large for Application Development Trends (www.ADTMag.com) and contributes regularly to Redmond Magazine, The Technology Horizons in Education Journal, and Campus Technology. He is the author of more than a dozen books, including The Everything Guide to Social Media; The Everything Computer Book; Blobitecture: Waveform Architecture and Digital Design; John Chambers and the Cisco Way; and Diablo: The Official Strategy Guide.