Jump to content

Snapshot algorithm

From Wikipedia, the free encyclopedia
This is an old revision of this page, as edited by Aurora2500 (talk | contribs) at 20:13, 23 March 2024 (Reworded to fit a more encyclopedic tone.). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

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.

To calculate the overall balance, just requesting the balance of each participant can lead to an incorrect result, as different accounts might be recorded before or after any transfers in progress. But a snapshot algorithm would avoid this as it makes sure to record the whole state in a point in time.

Algorithms

References

  1. ^ Vijay K. Garg (23 May 2002). Elements of Distributed Computing. John Wiley & Sons. p. 121. ISBN 978-0-471-03600-5.