Search code examples
cachingservercluster-computingignite

Apache Ignite - move data from one server to another


I have Ignite instance started as a 'server mode' on computer A, created cache in it and stored 1M Key->Values inside the cache.

Then I started Ignite instance as a 'server mode' on computer B which joined Ignite instance on computer A and now have a cluster of 2 nodes.

Is it possible to move all 1M K->V from computer A to computer B (without any interruption for querying data or ingesting data) so that computer A can be shut down for maintenance and everything continue to work from computer B?

If this is possible - what are the steps and code to do that (move data from A -> B)?


Solution

  • Ignite distributes data across server nodes according to Cache Modes.

    In REPLICATED mode each server holds a copy of all data, so you can shut down any node and data won't be lost.

    In PARTITIONED mode you can set CacheConfiguration.backups to 1 (or more) so that data is evenly distributed across server nodes, but each server also holds a copy of data from some other server. In this scenario you can shut down any single node and data won't be lost.