MoveTables is a new workflow based on VReplication. It enables you to relocate tables between keyspaces without downtime.
Identifying Candidate Tables
It is recommended to keep tables that need to join on eachother in the same keyspace, so typical candidates for a MoveTables operation are a set of tables which logically group together or are otherwise isolated.
If you have multiple groups of tables as candidates, which makes the most sense to move may depend on the specifics of your environment. For example, a larger table will take more time to move, but in doing so you might also be able to migrate to newer hardware which has more headroom before you need to perform additional operations such as sharding.
Similarly, tables that are updated at a more frequent rate could increase the move time.
Impact to Production Traffic
Internally, a MoveTables operation is comprised of both a table copy and a subscription to all changes made to the table. Vitess uses batching to improve the performance of both table copying and applying subscription changes, but you should expect that tables with lighter modification rates to move faster.
During the active move process, data is copied from replicas instead of the master server. This helps ensure minimal production traffic impact.
SwitchWrites phase of the MoveTables operation, Vitess may be briefly unavailable. This unavailability is usually a few seconds, but will be higher in the event that your system has a high replication delay.
Related Vitess Documentation