Snapshot algorithm
From HandWiki
A snapshot algorithm is used to create a consistent snapshot of the global state of a distributed system.[1] Due to the lack of globally shared memory and a global clock, this is not trivially possible.
Example
Several computers work together in a distributed system. Each of them represents a bank account holding a certain amount of money. The participants can transfer money between their accounts by exchanging the messages.
Assume the overall balance shall be calculated. Just requesting the balance of each participant can lead to an incorrect result, if one of them just sent a transfer message to another one (and thus has already decreased its own balance), which did not yet receive it.
A snapshot algorithm avoids such inconsistencies.
Algorithms
- Chandy–Lamport algorithm
- Lai–Yang algorithm
- Spezialetti–Kearns algorithm
- Mattern's algorithm
References
- ↑ Vijay K. Garg (23 May 2002). Elements of Distributed Computing. John Wiley & Sons. pp. 121. ISBN 978-0-471-03600-5. https://books.google.com/books?id=NlVBtVPeR0QC&dq=%22Snapshot+algorithm%22&pg=PA121.
Original source: https://en.wikipedia.org/wiki/Snapshot algorithm.
Read more |