ACM Home Page
Please provide us with feedback. Feedback
Extending ACID semantics to the file system
Full text PdfPdf (783 KB)
Source
ACM Transactions on Storage (TOS) archive
Volume 3 ,  Issue 2  (June 2007) table of contents
Article No. 4  
Year of Publication: 2007
ISSN:1553-3077
Authors
Charles P. Wright  IBM T. J. Watson Research Center
Richard Spillane  Stony Brook University
Gopalan Sivathanu  Stony Brook University
Erez Zadok  Stony Brook University
Publisher
ACM  New York, NY, USA
Bibliometrics
Downloads (6 Weeks): 25,   Downloads (12 Months): 669,   Citation Count: 1
Additional Information:

abstract   references   cited by   index terms   collaborative colleagues  

Tools and Actions: Review this Article  
Save this Article to a Binder    Display Formats: BibTex  EndNote ACM Ref   
DOI Bookmark: Use this link to bookmark this Article: http://doi.acm.org/10.1145/1242520.1242521
What is a DOI?

ABSTRACT

An organization's data is often its most valuable asset, but today's file systems provide few facilities to ensure its safety. Databases, on the other hand, have long provided transactions. Transactions are useful because they provide atomicity, consistency, isolation, and durability (ACID). Many applications could make use of these semantics, but databases have a wide variety of nonstandard interfaces. For example, applications like mail servers currently perform elaborate error handling to ensure atomicity and consistency, because it is easier than using a DBMS. A transaction-oriented programming model eliminates complex error-handling code because failed operations can simply be aborted without side effects. We have designed a file system that exports ACID transactions to user-level applications, while preserving the ubiquitous and convenient POSIX interface. In our prototype ACID file system, called Amino, updated applications can protect arbitrary sequences of system calls within a transaction. Unmodified applications operate without any changes, but each system call is transaction protected. We also built a recoverable memory library with support for nested transactions to allow applications to keep their in-memory data structures consistent with the file system. Our performance evaluation shows that ACID semantics can be added to applications with acceptable overheads. When Amino adds atomicity, consistency, and isolation functionality to an application, it performs close to Ext3. Amino achieves durability up to 46% faster than Ext3, thanks to improved locality.


REFERENCES

Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.

 
1
 
2
Berliner, B. and Polk, J. 2001. Concurrent Versions System (CVS). www.cvshome.org.
 
3
Callaghan, B., Pawlowski, B., and Staubach, P. 1995. NFS version 3 protocol specification. Tech. Rep. RFC 1813, Network Working Group.
4
 
5
CollabNet, Inc. 2004. Subversion. http://subversion.tigris.org.
 
6
 
7
 
8
9
 
10
 
11
Giarrusso, P. 2005. Fwd: Re: {patch 1/4} UML Support - Ptrace: adds the host SYSEMU support, for UML and general usage. www.uwsg.iu.edu/hypermail/linux/kernel/0507.3/1992.html.
 
12
 
13
Haardt, M. and Coleman, M. 1999. ptrace(2). Linux Programmer's Manual, Section 2.
14
 
15
IEEE/ANSI. 1996. Information Technology--Portable Operating System Interface (POSIX)--Part 1: System Application: Program Interface (API) {C Language}. Tech. rep. STD-1003.1, ISO/IEC.
16
 
17
Katcher, J. 1997. PostMark: A new filesystem benchmark. Tech. rep. TR3022, Network Appliance. www.netapp.com/tech_library/3022.html.
 
18
 
19
Lewis, P., Bernstein, A., and Kifer, M. 2002. Databases and Transaction Processing: An Application-Oriented Approach. Chapter 8: Database Design II: Relational Normalization Theory. Addison Wesley, 211--260.
20
 
21
 
22
23
 
24
Microsoft Corporation. 2004. Microsoft MSDN WinFS Documentation. http://msdn.microsoft.com/data/winfs/.
 
25
Murphy, N., Tonkelowitz, M., and Vernal, M. 2002. The design and implementation of the database file system. www.eecs.harvard.edu/~vernal/learn/cs261r/index.shtml.
 
26
MySQL AB. 2005. MySQL: The world's most popular open source database. www.mysql.org.
 
27
Olson, M. A. 1993. The design and implementation of the inversion file system. In Proceedings of the Winter 1993 USENIX Technical Conference. San Diego, CA. USENIX, 205--217.
 
28
Oracle Corporation. 2000. Oracle Internet File System Archive Documentation. http://otn.oracle.com/documentation/ifs_arch.html.
 
29
30
31
32
33
 
34
 
35
Seltzer, M. and Yigit, O. 1991. A new hashing package for UNIX. In Proceedings of the Winter USENIX Technical Conference. Dallas, TX. USENIX Association, 173--184.
 
36
 
37
Sendmail Consortium. 2004. Sendmail home page. www.sendmail.org.
 
38
Sendmail, Inc. 2004. Sendmail Advanced Message Server. www.sendmail.com/products/mailcenter/sams/.
 
39
Sleepycat Software, Inc. 2004. Berkeley DB Reference Guide, 4.3.27 Ed. http://www.oracle.com/technology/documentation/berkeley-db/db/api_c/frame.html.
 
40
Szeredi, M. 2005. Filesystem in userspace. http://fuse.sourceforge.net.
 
41


Collaborative Colleagues:
Charles P. Wright: colleagues
Richard Spillane: colleagues
Gopalan Sivathanu: colleagues
Erez Zadok: colleagues