Forum: Managing VoltDB

Post: Partitioning and downtime

Partitioning and downtime
ccherng
Apr 29, 2013
Does adding more Voltdb machines to a cluster to handle extra load require downtime? The partitioning is based on a hash function on the number of nodes in the cluster. Adding a new node to the cluster would drastically change the hash function. How would Voltdb redistribute data without downtime in such a case?
vtkstef
Apr 30, 2013
Hi,

As of now, adding new nodes to a cluster requires a database restart.

Ciao
Stefano
ccherng
Apr 30, 2013
Have there been any discussions of Voltdb having something similar to "virtual partitions" in Xeround and "virtual nodes" in Riak with the purpose of supporting rebalancing the data across new machines added to the cluster without the downtime of restarting the database.

Hi,

As of now, adding new nodes to a cluster requires a database restart.

Ciao
Stefano
jpiekos
Apr 30, 2013
We have thought a lot about it! In fact, adding nodes to a running cluster is an effort we're working on now, to be released later this year. Until this feature is released, as Stefano indicates, re-partitioning the data occurs only at database startup.

John
Sabrina
Mar 31, 2014
Hello,

I knew the thread is one year old. But I'm asking the same question. Is it possible to add nodes to a cluster without downtime? Where I can find the information? At the moment I always start the servers with changing the deployment.xml file.

Thank you.

Ciao,
Sabrina
jpiekos
Mar 31, 2014
Hi Sabrina,

Yes, with VoltDB v4.0 you can add nodes to a running cluster without blocking or taking the cluster down. See this page: https://voltdb.com/docs/UsingVoltDB/UpdateHw.php
section 7.4.1.

Thanks,

John
scooper
Mar 31, 2014
Is it possible to add nodes to a cluster without downtime? Where I can find the information?


Hi Sabrina,

Elastic scaling has been released since you last checked. It allows you to add nodes to a running VoltDB cluster.

https://voltdb.com/docs/UsingVoltDB/UpdateHw.php#UpdateElasticAdd

Cheers,
Steve