Database systems rely on data replication and synchronization to maintain continuous system availability. Typically, in such a system, a complete copy of the database is stored at a first database system and the same complete copy of the database is stored at a second database system. The first and second database systems may be in different locations. Since the data in the second database system needs to be the same as the data in the first database system, a synchronization mechanism is typically employed to handle synchronization of the data. If there is a failure associated with the first database system, the overall system can switch to using the second database system without significant issues.
Since the second database system may be asked to perform all of the same tasks as the first database system, typically, the second database system has the same hardware and software requirements as the first database system. Sometimes more than two database systems may be included within the overall system.