skip to main content
10.1145/2517349.2522721acmconferencesArticle/Chapter ViewAbstractPublication PagessospConference Proceedingsconference-collections
research-article
Open Access

Replication, history, and grafting in the Ori file system

Published:03 November 2013Publication History

ABSTRACT

Ori is a file system that manages user data in a modern setting where users have multiple devices and wish to access files everywhere, synchronize data, recover from disk failure, access old versions, and share data. The key to satisfying these needs is keeping and replicating file system history across devices, which is now practical as storage space has outpaced both wide-area network (WAN) bandwidth and the size of managed data. Replication provides access to files from multiple devices. History provides synchronization and offline access. Replication and history together subsume backup by providing snapshots and avoiding any single point of failure. In fact, Ori is fully peer-to-peer, offering opportunistic synchronization between user devices in close proximity and ensuring that the file system is usable so long as a single replica remains. Cross-file system data sharing with history is provided by a new mechanism called grafting. An evaluation shows that as a local file system, Ori has low overhead compared to a File system in User Space (FUSE) loopback driver; as a network file system, Ori over a WAN outperforms NFS over a LAN.

Skip Supplemental Material Section

Supplemental Material

d1-10-ali-mashtizadeh.mp4

mp4

1.1 GB

References

  1. Dropbox Inc. Dropbox - simplify your life. http://www.dropbox.com/, September 2012.Google ScholarGoogle Scholar
  2. R. Rodrigues and C. Blake. When multi-hop peer-to-peer routing matters. In 3rd International Workshop on Peer-to-Peer Systems, La Jolla, CA, 2004. Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. Inc. Software Freedom Conservancy. Git. http://www.git-scm.com/, September 2012.Google ScholarGoogle Scholar
  4. Yupu Zhang, Chris Dragga, Andrea Arpaci-Dusseau, and Remzi Arpaci-Dusseau. *-box: Towards reliability and consistency in dropbox-like file synchronization services. In Proceedings of the The Fifth Workshop on Hot Topics in Storage and File Systems, HotStorage '13, Berkeley, CA, USA, 2013. USENIX Association.Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. Sean Quinlan and Sean Dorward. Venti: A new approach to archival storage. In Proceedings of the Conference on File and Storage Technologies, FAST '02, pages 89--101, Berkeley, CA, USA, 2002. USENIX Association. Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. Mercurial scm. http://mercurial.selenic.com/, September 2012.Google ScholarGoogle Scholar
  7. Athicha Muthitacharoen, Benjie Chen, and David Mazières. A low-bandwidth network file system. In Proceedings of the eighteenth ACM symposium on Operating systems principles, SOSP '01, pages 174--187, New York, NY, USA, 2001. ACM. Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. Filebench. http://sourceforge.net/apps/mediawiki/filebench/index.php, 2013.Google ScholarGoogle Scholar
  9. Russell Coker. Bonnie++ now at 1.03e. http://www.coker.com.au/bonnie++/, September 2012.Google ScholarGoogle Scholar
  10. Joey Hess. git-annex. http://git-annex.branchable.com/, September 2012.Google ScholarGoogle Scholar
  11. B. Nowicki. NFS: Network File System Protocol specification. RFC 1094 (Informational), March 1989.Google ScholarGoogle Scholar
  12. Microsoft Corporation. Common internet file system (cifs) protocol specification. http://msdn.microsoft.com/en-us/library/ee442092.aspx, September 2012.Google ScholarGoogle Scholar
  13. Jose Barreto. Smb2, a complete redesign of the main remote file protocol for windows. http://blogs.technet.com/b/josebda/archive/2008/12/05/smb2-a-complete-redesign-of-the-main-remote-file-protocol-for-windows.aspx, December 2008.Google ScholarGoogle Scholar
  14. Gursharan S. Sidhu, Richard F. Andrews, and Alan B. Oppenheimer. Inside AppleTalk. Addison-Wesley, Boston, 1990.Google ScholarGoogle Scholar
  15. Mahadev Satyanarayanan. Scalable, secure, and highly available distributed file access. Computer, 23(5):9--18, 20--21, May 1990. Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. Mahadev Satyanarayanan, James J. Kistler, Puneet Kumar, Maria E. Okasaki, Ellen H. Siegel, and David C. Steere. Coda: A highly available file system for a distributed workstation environment. IEEE Trans. Comput., 39(4):447--459, April 1990. Google ScholarGoogle ScholarDigital LibraryDigital Library
  17. P. J. Braam, M. Callahan, and P. Schwan. The inter-mezzo file system. The Perl Conference 3, August 1999.Google ScholarGoogle Scholar
  18. Peter Reiher, John Heidemann, David Ratner, Greg Skinner, and Gerald Popek. Resolving file conflicts in the ficus file system. In Proceedings of the USENIX Summer 1994 Technical Conference on USENIX Summer 1994 Technical Conference - Volume 1, USTC'94, pages 12--12, Berkeley, CA, USA, 1994. USENIX Association. Google ScholarGoogle ScholarDigital LibraryDigital Library
  19. Björn Grönvall, Ian Marsh, and Stephen Pink. A multicast-based distributed file system for the internet. In Proceedings of the 7th workshop on ACM SIGOPS European workshop: Systems support for worldwide applications, EW 7, pages 95--102, New York, NY, USA, 1996. ACM. Google ScholarGoogle ScholarDigital LibraryDigital Library
  20. GlusterFS. http://www.gluster.org/.Google ScholarGoogle Scholar
  21. Jacob Strauss, Justin Mazzola Paluska, Chris Lesniewski-Laas, Bryan Ford, Robert Morris, and Frans Kaashoek. Eyo: device-transparent personal storage. In Proceedings of the 2011 USENIX conference on USENIX annual technical conference, USENIXATC'11, pages 35--35, Berkeley, CA, USA, 2011. USENIX Association. Google ScholarGoogle ScholarDigital LibraryDigital Library
  22. Venugopalan Ramasubramanian, Thomas L. Rodeheffer, Douglas B. Terry, Meg Walraed-Sullivan, Ted Wobber, Catherine C. Marshall, and Amin Vahdat. Cimbiosys: a platform for content-based partial replication. In Proceedings of the 6th USENIX symposium on Networked systems design and implementation, NSDI'09, pages 261--276, Berkeley, CA, USA, 2009. USENIX Association. Google ScholarGoogle ScholarDigital LibraryDigital Library
  23. Daniel Peek and Jason Flinn. Ensemblue: integrating distributed storage and consumer electronics. In Proceedings of the 7th symposium on Operating systems design and implementation, OSDI '06, pages 219--232, Berkeley, CA, USA, 2006. USENIX Association. Google ScholarGoogle ScholarDigital LibraryDigital Library
  24. Nalini Belaramani, Mike Dahlin, Lei Gao, Amol Nayate, Arun Venkataramani, Praveen Yalagandula, and Jiandan Zheng. Practi replication. In Proceedings of the 3rd conference on Networked Systems Design & Implementation - Volume 3, NSDI'06, pages 5--5, Berkeley, CA, USA, 2006. USENIX Association. Google ScholarGoogle ScholarDigital LibraryDigital Library
  25. Dave Hitz, James Lau, and Michael Malcolm. File system design for an nfs file server appliance. In Proceedings of the USENIX Winter 1994 Technical Conference on USENIX Winter 1994 Technical Conference, WTEC'94, pages 19--19, Berkeley, CA, USA, 1994. USENIX Association. Google ScholarGoogle ScholarDigital LibraryDigital Library
  26. J. Bonwick and B. Moore. Zfs: The last word in file systems. http://hub.opensolaris.org/bin/download/Community+Group+zfs/docs/zfslast.pdf, September 2012.Google ScholarGoogle Scholar
  27. Douglas J. Santry, Michael J. Feeley, Norman C. Hutchinson, and Alistair C. Veitch. Elephant: The file system that never forgets. In Proceedings of the The Seventh Workshop on Hot Topics in Operating Systems, HOTOS '99, pages 2--, Washington, DC, USA, 1999. IEEE Computer Society. Google ScholarGoogle ScholarDigital LibraryDigital Library
  28. S. Quinlan, J. McKie, and R. Cox. Fossil, an archival file server. http://www.cs.bell-labs.com/sys/doc/fossil.pdf, 2003.Google ScholarGoogle Scholar
  29. Brian Cornell, Peter A. Dinda, and Fabián E. Bustamante. Wayback: a user-level versioning file system for linux. In Proceedings of the annual conference on USENIX Annual Technical Conference, ATEC '04, pages 27--27, Berkeley, CA, USA, 2004. USENIX Association. Google ScholarGoogle ScholarDigital LibraryDigital Library
  30. Kiran-Kumar Muniswamy-Reddy, Charles P. Wright, Andrew Himmer, and Erez Zadok. A versatile and user-oriented versioning file system. In Proceedings of the 3rd USENIX Conference on File and Storage Technologies, FAST '04, pages 115--128, Berkeley, CA, USA, 2004. USENIX Association. Google ScholarGoogle ScholarDigital LibraryDigital Library
  31. Wikipedia. Time machine (mac os). http://en.wikipedia.org/wiki/Time_Machine_(Mac_OS), March 2013.Google ScholarGoogle Scholar
  32. Steve Sinofsky. Protecting user files with file history. http://blogs.msdn.com/b/b8/archive/2012/07/10/protecting-user-files-with-file-history.aspx, March 2013.Google ScholarGoogle Scholar
  33. Siddhartha Annapureddy, Michael J. Freedman, and David Mazières. Shark: scaling file servers via cooperative caching. In Proceedings of the 2nd conference on Symposium on Networked Systems Design & Implementation - Volume 2, NSDI'05, pages 129--142, Berkeley, CA, USA, 2005. USENIX Association. Google ScholarGoogle ScholarDigital LibraryDigital Library
  34. Kevin Fu, M. Frans Kaashoek, and David Mazières. Fast and secure distributed read-only file system. ACM Transactions on Computer Systems, 20(1):1--24, February 2002. Google ScholarGoogle ScholarDigital LibraryDigital Library
  35. Jinyuan Li, Maxwell Krohn, David Mazières, and Dennis Shasha. Secure untrusted data repository (sundr). In Proceedings of the 6th conference on Symposium on Opearting Systems Design & Implementation - Volume 6, OSDI'04, pages 9--9, Berkeley, CA, USA, 2004. USENIX Association. Google ScholarGoogle ScholarDigital LibraryDigital Library
  36. Ralph C. Merkle. A digital signature based on a conventional encryption function. In Carl Pomerance, editor, Advances in Cryptology---CRYPTO '87, volume 293 of Lecture Notes in Computer Science, pages 369--378, Berlin, 1987. Springer-Verlag. Google ScholarGoogle ScholarDigital LibraryDigital Library

Recommendations

Comments

Login options

Check if you have access through your login credentials or your institution to get full access on this article.

Sign in
  • Published in

    cover image ACM Conferences
    SOSP '13: Proceedings of the Twenty-Fourth ACM Symposium on Operating Systems Principles
    November 2013
    498 pages
    ISBN:9781450323888
    DOI:10.1145/2517349

    Copyright © 2013 Owner/Author

    Permission to make digital or hard copies of part or all of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for third-party components of this work must be honored. For all other uses, contact the Owner/Author.

    Publisher

    Association for Computing Machinery

    New York, NY, United States

    Publication History

    • Published: 3 November 2013

    Check for updates

    Qualifiers

    • research-article

    Acceptance Rates

    Overall Acceptance Rate131of716submissions,18%

    Upcoming Conference

    SOSP '24

PDF Format

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader