3.2. Starting the Database

Documentation

VoltDB Home » Documentation » Administrator's Guide

3.2. Starting the Database

Once you have an application catalog and a deployment file, you start a VoltDB database cluster[2] for the first time using the voltdb create command. You issue this command, specifying the same application catalog, deployment file, and host on each node of the cluster. For example:

$ voltdb create myapplication.jar \           1
                --deployment=deployment.xml \ 2
                --host=voltsvr1 \             3
                --license=~/license.xml       4

On the command line, you specify four arguments:

1

The application catalog, which contains the schema for the database and any stored procedure definitions

2

The deployment file, which specifies the physical layout of the cluster and configures specific VoltDB features

3

One node of the cluster identified as the "host", to coordinate the initial startup of the cluster

4

The license file (when using the VoltDB Enterprise Edition)

What happens when you start the database is that each server contacts the named "host" server. The host then:

  1. Waits until the necessary number of servers (as specified in the deployment file) are connected

  2. Creates the network mesh between the servers

  3. Distributes the catalog and deployment file to ensure all nodes are using the same configuration

At this point, the cluster is fully initialized and the "host" ends its special role and becomes a peer to all the other nodes. All nodes in the cluster then write an informational message to the console verifying that the database is ready:

Server completed initialization.


[2] When testing with a single server, several of the command line arguments have defaults and can be left out. However, in production when starting a multi-node cluster, the arguments are required.