A file synchronization and backup service such as Dropbox offers high availability of files for reading and
Question:
A file synchronization and backup service such as Dropbox offers high availability of files for reading and writing from any location and on any device. The goals of these services are simple: (i) all replicas eventually become consistent and (ii) there are no lost updates, i.e., new versions are not replaced with older ones.
How would you design such a service?
Your report should describe the architecture of such a system, discussing any issues that might arise. You need to consider the following questions:
Will you employ a peer-to-peer architecture or a client-server one?
What will be the main entities in your system?
What consistency model will your system implement? How will synchronization happen?
How many replicas will you include in your system?
How will your system allow for updates to files without the clients being connected?
Does your system handle the following scenario: At location A you access one file doing reads and updates. You get on a plane, and arrive at location B seven hours later. At location B you continue your work, but unless you access the same server as the one at location A, you may detect inconsistencies. However, the only thing you really want is that the entries you updated and/or read at A, are in B the way you left them in A. What if somebody else, in the meantime, has edited the file you updated in A?
Accounting Information Systems
ISBN: 9780132871938
11th Edition
Authors: George H. Bodnar, William S. Hopwood