Chapter 2. Hello, World! Revisited


VoltDB Home » Documentation » Guide to Performance and Customization

Chapter 2. Hello, World! Revisited

The VoltDB software kit includes a Hello World example in the directory /doc/tutorials/helloworld that shows you how to create a simple VoltDB application, including a schema, stored procedures, and a client application. However, storing five records and doing a single SELECT is not a terribly interesting database application.

VoltDB is designed to process hundreds of thousands of transactions a second, providing unparalleled throughput. Hello World does little to demonstrate that. But perhaps we can change it a bit to better emulate real world situations and, in the process, learn how to write applications that maximize the power of VoltDB.

2.1. Optimizing your Application for VoltDB

VoltDB can be used generically like any other database to insert, select, and update records. But VoltDB also specializes in:

  • Scalability

  • Throughput performance

  • Durability

Durability is built into the VoltDB database server software through several different functions, including snapshots, K-Safety, and command logging, features that are described in more detail in the Using VoltDB manual. Scalability and throughput are related to server configuration (e.g. number of servers, memory capacity, etc.). However, there are several things that can be done in the design of the database and the client application to maximize the throughput on any cluster. In particular, this update to the Hello World tutorial focuses on designing your application to take advantage of:

  • Partitioned and replicated tables

  • Asynchronous stored procedure calls

  • Client connections to all nodes in the database cluster