Most people looking at a diagram showing the Cluster architecture
soon want to know if the system can scale online. Api nodes such
as MySQLD processes can be added online, and the storage capacity
of existing data nodes can be increased online, but it was not
always possible to add new data nodes to the cluster without an
initial system restart requiring a backup and restore.
An online add node and data repartitioning feature was finally
implemented in MySQL Cluster 7.0. It's not clear how often users
actually do scale their Clusters online, but it certainly is a
cool thing to be able to do.
There are two parts to the feature :
- Online add an empty data node to an existing cluster
- Online rebalance existing data across the existing and new data nodes
Adding an empty data node to a cluster sounds trivial, but is
actually fairly complex given the cluster's …