A quorum is the minimum number of votes that a distributed transaction has to obtain in order to be allowed to perform an operation in a distributed System.
All Data items are associated with a version number
As the Data items are modified their associated version number is changed
Any write operation performed is executed on a subset of all Replicas (Write Quorum)
To Read client must contact to subset of replicas to find newest version of data item
(Read Quorum)
Quorum based protocol requires client to request and acquire permission of multiple servers before performing any operation on replicas
Any pair of Read and Write quorum must contain common copies,resulting in no conflicting operation on same copy
Two Write Quorums must also overlap preventing write-write conflict
Say Data is replicated across N Servers let N be equal to 5
Now say N1,N2,N3 are the read quorums(NR) and N3,N4,N5 are write quorums(NW)
The two conditions
1)NR+NW>N
2)NW>N/2
1st condition make sure no conflicting operation is performed on same copy
2nd condition make sure that only one write operation will get the quorum preventing 2 write operations writing at the same time(Write-Write Conflict)