15
Outline • Introduction (what’s it all about) • Data-centric consistency • Client-centric consistency • Replica management Consistency protocols

Outline Introduction (what’s it all about) Data-centric consistency Client-centric consistency Replica management Consistency protocols

Embed Size (px)

Citation preview

Page 1: Outline Introduction (what’s it all about) Data-centric consistency Client-centric consistency Replica management Consistency protocols

Outline

• Introduction (what’s it all about)

• Data-centric consistency

• Client-centric consistency

• Replica management

• Consistency protocols

Page 2: Outline Introduction (what’s it all about) Data-centric consistency Client-centric consistency Replica management Consistency protocols

Consistency protocol

• Describes the implementation of a specific consistency model.

Continuous consistence

Sequential consistence

Primary-based protocols

Replicated-write protocols

Page 3: Outline Introduction (what’s it all about) Data-centric consistency Client-centric consistency Replica management Consistency protocols

Continuous Consistency (1)• Degree of consistency based on deviations of numerical values

(due to operation performed)

Page 4: Outline Introduction (what’s it all about) Data-centric consistency Client-centric consistency Replica management Consistency protocols

Continuous consistency

Page 5: Outline Introduction (what’s it all about) Data-centric consistency Client-centric consistency Replica management Consistency protocols

And it meets the above bound \delta_i.

Si propagate a write originated from Sj to Sk.

Page 6: Outline Introduction (what’s it all about) Data-centric consistency Client-centric consistency Replica management Consistency protocols

Consistency protocol

• Describes the implementation of a specific consistency model.

Continuous consistence

Sequential consistence

Primary-based protocols

Replicated-write protocols

Page 7: Outline Introduction (what’s it all about) Data-centric consistency Client-centric consistency Replica management Consistency protocols

Consistency protocol• Primary-based protocols

– sequential consistency The result of any execution is the same as if the (read and

write) operations by all processes were executed in some sequential order specified by its program

– Data item x has a primary to coordinate write operation.

• Two types of protocols:– Remote-Write Protocols (primary-backup)

• Write operations submit to a single remote server. • Read op locally,

– Local-Write Protocols (primary-backup w local writes)• the primary migrates to the process wanting to perform an

update.

Page 8: Outline Introduction (what’s it all about) Data-centric consistency Client-centric consistency Replica management Consistency protocols

Primary-based protocols Remote-Write Protocols

• Figure 7-20. The principle of a primary-backup protocol.

•Long time to finish – blocking or nonblocking the initiatorFault tolerance issue related

•Primary does the ordering

Page 9: Outline Introduction (what’s it all about) Data-centric consistency Client-centric consistency Replica management Consistency protocols

Primary-based protocols Local-Write Protocols

• Multiple, successive writes can be loca• Nonblocking

Page 10: Outline Introduction (what’s it all about) Data-centric consistency Client-centric consistency Replica management Consistency protocols

Consistency protocol

– Primary-based protocols– Which protocol?

– Example: Traditionally applied in distributed databases and file systems that require a high degree of fault tolerance. Replicas are often placed on same LAN.

– Example: Mobile computing in disconnected mode (ship all relevant files to user before disconnecting, and update later on). Other processes can not update.

Page 11: Outline Introduction (what’s it all about) Data-centric consistency Client-centric consistency Replica management Consistency protocols

Consistency protocol

• Describes the implementation of a specific consistency model.

Continuous consistence

Sequential consistence

Primary-based protocols

Replicated-write protocols

Page 12: Outline Introduction (what’s it all about) Data-centric consistency Client-centric consistency Replica management Consistency protocols

Replicated-write protocols• Write operations can be carried out at multiple replicas

instead of one.

• Active replication– Propagate the process (write operation) that cause the updates

(in stead of the updates) to replica– Operations need to be carried in the same order everywhere.– Totally ordered Multicast or a central coordinator – sequencer.

• Quorum-Based Protocols– Client need to request and acquire the permission of multiple

servers before reading or writing a replicated data item

Page 13: Outline Introduction (what’s it all about) Data-centric consistency Client-centric consistency Replica management Consistency protocols

Quorum-Based Protocols

• Ensure that each operation is carried out in such a way that a majority vote is established– more than half of the N servers (and plus 1) – So to allow determine the consistency and perform

the operation• Version numbers

- Newer versions

Quorum - the smallest number of people needed to be present at a meeting before it can officially begin and before official decisions can be taken.

Page 14: Outline Introduction (what’s it all about) Data-centric consistency Client-centric consistency Replica management Consistency protocols

Quorum-Based Protocols

• distinguish read quorum and write quorum

– For update: When agreed, update and increase version of the data

– For read: also need more than half of the N servers (and plus 1) to agree and to send data. and increase version of the data

• How many data with same version?

– But can be relaxed to– Nw>N/2 -- prevent write-write conflict– Nw + Nr > N -- prevent read-write conflict

Page 15: Outline Introduction (what’s it all about) Data-centric consistency Client-centric consistency Replica management Consistency protocols

Replicated-write protocolsQuorum-Based Protocols

• Three examples of the voting algorithm. (a) A correct choice of read and write set. (b) A choice that may lead to write-write conflicts. (c) A correct choice, known as ROWA (read one, write all).