VoltDB 2.0 Features Summary

written by Scott Jarr on September 21, 2011 with no comments

VoltDB 2.0 was released last week and I wanted to take this opportunity to summarize the important new features, including enhancements for database durability and recovery; key performance and interoperability improvements; and many enhancements geared at helping developers use VoltDB productively. Here are the details:

  • Durability and recovery.  Version 2.0 introduces a new feature called Command Logging that allows VoltDB databases to be fully recoverable in the face of severe failures caused by hardware and software crashes.  Available in VoltDB Enterprise Edition, Command Logging ensures that every transaction applied to a VoltDB database is separately logged to disk.  Following a system crash, VoltDB automatically assembles a recovery plan from available database snapshots and command logs, and then executes that plan to recover the database for normal operations.  Importantly, Command Logging includes tuning features that allow systems administrators to optimally balance database durability and performance.
  • Query performance optimizations.  Version 2.0 includes performance improvements that allow distributed read operations to run faster.  VoltDB’s query planner has been enhanced to distribute workloads across the VoltDB cluster, allowing those queries to execute directly on nodes where the data is stored.  This optimization significantly improves performance for a broad class of real-time analytic applications.
  • Database interoperability.  Version 2.0 includes enhancements to VoltDB’s streaming export subsystem, which is designed to provide high performance interoperability between VoltDB and other companion datastores such as Hadoop and OLAP databases.  Version 2.0 allows VoltDB’s in-memory export buffer to “overflow” data to disk when downstream systems are ingesting data more slowly than VoltDB makes it available.  By overflowing export data to disk, VoltDB maintains extremely high export performance while automatically managing the “impedance mismatch” that often exists among datastores with different performance profiles.
  • JDBC support.  Version 2.0 introduces support for the popular JDBC programming interface.  VoltDB’s new JDBC feature includes support for ad hoc operations, invocation of prepared SQL statements and accessibility to VoltDB stored procedures.  VoltDB has also implemented the JDBC metadata class, providing programmatic access to all database metadata.  VoltDB also supports relevant JDBC return codes.  By providing support for JDBC, VoltDB 2.0 offers developers a choice of using VoltDB’s high performance stored procedure interface or JDBC.  In addition, JDBC support opens VoltDB for interoperability with a wide variety of RDBMS ecosystem tools such as report writers and business intelligence solutions.
  • VoltDB Studio.  Version 2.0 introduces VoltDB Studio, a browser based tool designed to help developers rapidly build, test and optimize VoltDB applications.  VoltDB Studio complements a developer’s chosen integrated development environment, providing database catalog browsing, ad hoc query tools and graphs that reveal key database performance metrics such as memory utilization, latency, transaction throughput and workload profiles.  VoltDB Studio helps developers to optimize their application databases prior to production deployment.
  • VoltKV and VoltCache.  Many developers come into the VoltDB world after having developed systems using alternative data and distribution models.  In response, we’ve created two reference implementations that illustrate how VoltDB can be used as an uber-fast Key/Value store (VoltKV) and as a high performance alternative to the popular combination of Memcached/MySQL (VoltCache).  VoltKV and VoltCache ship with all versions of VoltDB, and are also downloadable separately.  All source code is included.

Check out the different download options for VoltDB 2.0 software here.