Use cases for multiple data centers
There are several key use cases that involve deploying Cassandra across multiple data centers, including the obvious failover and load balancing scenarios. Let's examine a few of these cases.
Live backup
Traditional database backups involve taking periodic snapshots of the data and storing them offsite in case the system fails. In such a case, there will be downtime as a new system is brought up and the data is restored. This strategy also inevitably leads to data loss for the time period between the last backup and the point of failure.
Cassandra supports these types of backups, and we will discuss this in greater depth in Chapter 9, Failing Gracefully. While snapshot backups are still useful to protect against data corruption or accidental updates, Cassandra's data center support can be used to provide a current backup for cases such as hardware failures.
The basic idea involves setting up a second data center that maintains a current set of...