jspωiki
Replication

Overview#

Replication is a form of data synchronization that is used to ensure that changes in the data environment are reflected in each instance of the data. That is, whenever a change is made in one replica instance, that same change is also made in every replica instance.

Replication may be performed in Distributed systems or Decentralised systems.

Active Repliciton#

Active Repliciton is wehn every replica processes the same request.

Passive Replication#

Passive Replication is when one replica processes the request and then distributes the result to other replicas.

master-slave#

master-slave is when one master replica is designated to process all the requests and maintain the state.

multi-master replication#

multi-master replication is when any replica processes a request and then distributes a new state

Replication Frameworks in Distributed systems#

A number of widely cited models exist for data Replication, each having its own properties and performance:
  • Transactional replication - Is used for replicating transactional data fitting ACID properties.
  • Stateful Replication - Is a Framework which assumes that there is a known state that is transitioned to a new known state and are often used within Distributed Consensus protocols. Stateful Replication is may be implemented by a replicated log consisting of multiple subsequent rounds of the Paxos Protocols.
  • Virtual synchrony. This computational model is used when a group of processes cooperate to replicate in-memory data or to coordinate actions. The model defines a distributed entity called a process group. A process can join a group, and is provided with a checkpoint containing the current state of the data replicated by group members. Processes can then send multicasts to the group and will see incoming multicasts in the identical order. Membership changes are handled as a special multicast that delivers a new membership view to the processes in the group.

LDAP#

Many LDAP Server Implementations use Replication to provide Eventual consistency data Store

More Information#

There might be more information for this subject on one of the following: