The Fast, Scalable Open-Source DBMS You'll Never Outgrow

Created by DBMS R&D pioneer, Mike Stonebraker, VoltDB is a next-generation open-source DBMS for applications that require:

  • Fast OLTP performance that easily scales to millions of transactions per second 
  • Linear scalability on scale-out clusters of commodity servers
  • SQL as the DBMS interface
  • ACID transactions to ensure immediate data consistency and integrity
  • High availability 24x7x365

What makes VoltDB perform so fast—it keeps the ACID, but loses the baggage
Most OLTP DBMS engines were designed decades before the Internet. Traditional DBMS features like Logging, Locking, Latching and Buffer Management help ensure data integrity (ACID transactions), but waste lots of CPU cycles (roughly 90% of the transaction time) and prevent traditional databases from scaling to meet 21st-century workloads.

VoltDB eliminates traditional OLTP DBMS overhead

VoltDB is the only SQL DBMS that ensures transactional consistency (ACID) and also eliminates this legacy overhead, which permits it to beat any other OLTP DBMS in price/performance.

How VoltDB works
Here's how VoltDB provides such high performance and still maintains support for ACID transactions:

  • Data and the processing associated with it are partitioned together and distributed across the CPU cores in a shared-nothing hardware cluster. Unlike custom sharding solutions, VoltDB automatically maintains data consistency across nodes.
  • Data is held in memory for maximum throughput and removes the need for buffer management.
  • Each single-threaded partition autonomously executes its transaction queue sequentially, eliminating the need for locking & latching.
  • Data is replicated to multiple nodes for durability and high availability with log-less recovery.
  • Data is manipulated via a stored procedure interface to minimize network overhead

 Inside a VoltDB Partition

These innovations enable VoltDB to execute transactions in microseconds while maintaining ACID compliance, and to scale linearly as additional CPU cores are added to the system.

Using VoltDB
Defining the database - Unlike custom-sharding approaches, VoltDB automatically partitions and distributes data for you. Using the database schema, the stored procedures required by the application and the hardware topology as inputs, the VoltDB application compiler creates a VoltDB application archive. The compiler automatically partitions and replicates the data as necessary to optimize performance and ensure high availability. This archive is deployable to one or more VoltDB clusters.

Accessing data - VoltDB hosts and executes stored procedures. Each procedure invocation is a single ACID transaction. Procedures are written in Java and use SQL to read and write VoltDB tables and rows. Applications call stored procedures using the Java, C++, Erlang or HTTP+JSON libraries.

See what types of applications people are building with VoltDB...

Visit the Open-Source VoltDB Community Edition Site
If you’re curious to learn more about VoltDB, please download the free open-source VoltDB Community Edition, read product documentation and participate in developer support forums.