Replication models in distributed systems

来源:互联网 发布:java objectsnmp 编辑:程序博客网 时间:2024/04/25 06:16

A number of widely cited models exist for data replication, each having its own properties and performance:

  1. Transactional replication. This is the model for replicatingtransactional data, for example a database or some other form of transactional storage structure. Theone-copy serializability model is employed in this case, which defines legal outcomes of a transaction on replicated data in accordance with the overallACID properties that transactional systems seek to guarantee.
  2. State machine replication. This model assumes that replicated process is adeterministic finite automaton and that atomic broadcast of every event is possible. It is based on a distributed computing problem calleddistributed consensus and has a great deal in common with the transactional replication model. This is sometimes mistakenly used as synonym of active replication. State machine replication is usually implemented by a replicated log consisting of multiple subsequent rounds of thePaxos algorithm. This was popularized by Google's Chubby system, and is the core behind the open-sourceKeyspace data store.[1][2]
  3. 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 newmembership view to the processes in the group.
原创粉丝点击