skip to main content
research-article

Frog: A Framework for Context-Based File Systems

Published: 24 July 2015 Publication History

Abstract

This article presents a framework, Frog, for Context-Based File Systems (CBFSs) that aim at simplifying the development of context-based file systems and applications. Unlike existing informed-based context-aware systems, Frog is a unifying informed-based framework that abstracts context-specific solutions as views, allowing applications to make view selections according to application behaviors. The framework can not only eliminate overheads induced by traditional context analysis, but also simplify the interactions between the context-based file systems and applications. Rather than propagating data through solution-specific interfaces, views in Frog can be selected by inserting their names in file path strings. With Frog in place, programmers can migrate an application from one solution to another by switching among views rather than changing programming interfaces. Since the data consistency issues are automatically enforced by the framework, file-system developers can focus their attention on context-specific solutions. We implement two prototypes to demonstrate the strengths and overheads of our design. Inspired by an observation that there are more than 50% of small files (<4KB) in a file system, we create a Bi-context Archiving Virtual File System (BAVFS) that utilizes conservative and aggressive prefetching for the contexts of random and sequential reads. To improve the performance of random read-and-write operations, the Bi-context Hybrid Virtual File System (BHVFS) combines the update-in-place and update-out-of-place solutions for read-intensive and write-intensive contexts. Our experimental results show that the benefits of Frog-based CBFSs outweigh the overheads introduced by integrating multiple context-specific solutions.

References

[1]
N. Agrawal, W. J. Bolosky, J. R. Douceur, and J. R. Lorch. 2007. A five-year study of file-system metadata. ACM Transactions on Storage (TOS) 3, 3, Article 9, 32 pages.
[2]
P. Carns, S. Lang, R. Ross, M. Vilayannur, J. Kunkel, and T. Ludwig. 2009. Small-file access in parallel file systems. In Proceedings of the 2009 IEEE International Symposium on Parallel and Distributed Processing. 1--11.
[3]
Weijie Chu, Weiping Li, Tong Mo, and Zhonghai Wu. 2011. A context-source abstraction layer for context-aware middleware. In 8th International Conference on Information Technology: New Generations (ITNG). 1064--1065.
[4]
ClamAV. 2014. ClamAV. Retrieved July 3, 2015 from http://www.clamav.net.
[5]
R. Fagin, J. Nievergelt, N. Pippenger, and H. R. Strong. 1979. Extendible hashing—a fast access method for dynamic files. ACM Transactions on Database Systems 4, 3, 315--344.
[6]
FileBench. 2014. FileBench. Retrieved July 3, 2015 from http://sourceforge.net/projects/filebench/.
[7]
FUSE. 2014. File system in user space(FUSE). Retrieved July 3, 2015 from http://fuse.sourceforge.net/.
[8]
J. F. Gantz. 2008. The diverse and exploding digital universe. IDC White Paper 2, Framingham, MA, 1--16.
[9]
N. H. Gehani, H. V. Jagadish, and W. D. Roome. 1994. OdeFS: A file system interface to an object-oriented database. In Proceedings of the 20th International Conference on Very Large Data Bases (VLDB ’94). San Francisco, CA, 249--260.
[10]
S. Ghemawat, H. Gobioff, and S. Leung. 2003. The Google file system. SIGOPS Operating Systems Review 37, 5, 29--43.
[11]
Gnu Grep. 2014. Gnu Grep. Retrieved July 3, 2015 from http://www.gnu.org/software/grep/.
[12]
T. Gu, H. K. Pung, and D. Q. Zhang. 2004. A middleware for building context-aware mobile services. In Proceedings of IEEE Vehicular Technology Conference (VTC-Spring’04), Vol. 5. Milan, Italy, 2656--2660.
[13]
S. Jain, F. Shafique, V. Djeric, and A. Goel. 2008. Application-level isolation and recovery with solitude. SIGOPS Operating Systems Review 42, 4, 95--107.
[14]
JFS. 2014. The IBM JFS project. Retrieved July 3, 2015 from http://jfs.sourceforge.net/.
[15]
J. Katcher. 1997. PostMark: A new filesystem benchmark. Technical Report TR3022, 1--8.
[16]
D. Kotz and C. S. Ellis. 1991. Practical prefetching techniques for parallel file systems. In Proceedings of the 1st International Conference on Parallel and Distributed Information Systems (PDIS’91). IEEE Computer Society Press, Los Alamitos, CA, 182--189.
[17]
A. Krause, A. Smailagic, and D. P. Siewiorek. 2006. Context-aware mobile computing: Learning context-dependent personal preferences from a wearable sensor array. IEEE Transactions on Mobile Computing 5, 2, 113--127.
[18]
Tom M. Kroeger. 2000. Modeling file access patterns to improve caching performance. PhD Dissertation. University of California, Santa Cruz.
[19]
Thomas M. Kroeger and Darrell D. E. Long. 1999. The case for efficient file access pattern modeling. In Proceedings of the 7th Workshop on Hot Topics in Operating Systems (HOTOS’99). IEEE Computer Society, Washington, DC, 14--14.
[20]
Tom M. Kroeger and Darrell D. E. Long. 2001. Design and implementation of a predictive file prefetching algorithm. In Proceedings of the General Track: 2002 USENIX Annual Technical Conference. USENIX Association, Berkeley, CA, 105--118.
[21]
M. Lee, S. L. Min, C. Y. Park, Y. H. Bae, H. Shin, and C. S. Kim. 1993. A dual-mode instruction prefetch scheme for improved worst case and average case program execution times. In Proceedings of the Real-Time Systems Symposium. 98--105.
[22]
J. Leverich and C. Kozyrakis. 2010. On the energy (in)efficiency of Hadoop clusters. SIGOPS Operating Systems Review 44, 1, 61--65.
[23]
C. Li, K. Shen, and A. E. Papathanasiou. 2007. Competitive prefetching for concurrent sequential I/O. SIGOPS Operating Systems Review 41, 3, 189--202.
[24]
Shuang Liang, Song Jiang, and Xiaodong Zhang. 2007. STEP: Sequentiality and thrashing detection based prefetching to improve performance of networked storage servers. In Proceedings of the 27th International Conference on Distributed Computing Systems (ICDCS’07). IEEE Computer Society, Washington, DC, 64--74.
[25]
X. Ma and A. L. N. Reddy. 2001. MVSS: Multi-view storage system. In Proceeding of the 21st International Conference on Distributed Computing Systems, 2001. 31--38.
[26]
A. Mathur, M. Cao, S. Bhattacharya, A. Dilger, A. Tomas, and L. Vivier. 2007. The new ext4 filesystem: Current status and future plans. In Proceedings of the 2007 Linux Symposium. 21--33.
[27]
M. K. McKusick and G. R. Ganger. 1999. Soft updates: A technique for eliminating most synchronous writes in the fast filesystem. In Proceedings of the FREENIX Track: 1999 USENIX Annual Technical Conference (ATEC’99). USENIX Association, Berkeley, CA, 24--24.
[28]
M. K. McKusick, W. N. Joy, S. J. Leffler, and R. S. Fabry. 1984. A fast file system for UNIX. ACM Transactions on Computer Systems (TOCS) 2, 3, 181--197.
[29]
K. Muller and J. Pasquale. 1991. A high performance multi-structured file system design. Proceedings of the 13th ACM Symposium on Operating Systems Principles 25, 5, 56--67.
[30]
Brian D. Noble, M. Satyanarayanan, Dushyanth Narayanan, James Eric Tilton, Jason Flinn, and Kevin R. Walker. 1997. Agile application-aware adaptation for mobility. In Proceedings of the 16th ACM Symposium on Operating Systems Principles (SOSP’97). ACM, New York, NY, 276--287.
[31]
S. V. Patil, G. A. Gibson, S. Lang, and M. Polte. 2007. GIGA+: Scalable directories for shared file systems. In Proceedings of the 2nd International Workshop on Petascale Data Storage: Held in Conjunction with Supercomputing’07 (PDSW’07). ACM, New York, NY, 26--29.
[32]
R. H. Patterson, G. A. Gibson, E. Ginting, D. Stodolsky, and J. Zelenka. 1995. Informed prefetching and caching. SIGOPS Operating Systems Review 29, 5, 79--95.
[33]
J. Piernas, T. Cortes, and J. M. García. 2002. DualFS: A new journaling file system without meta-data duplication. In Proceedings of the 16th International Conference on Supercomputing (ICS’02). ACM, New York, NY, 137--146.
[34]
R. Ramakrishnan and J. Gehrke. 2002. Database Management Systems. McGraw-Hill Science, New York, NY.
[35]
M. Román, C. Hess, R. Cerqueira, A. Ranganathan, R. H. Campbell, and K. Nahrstedt. 2002. A middleware infrastructure for active spaces. IEEE Pervasive Computing 1, 4, 74--83.
[36]
M. Rosenblum and J. K. Ousterhout. 1992. The design and implementation of a log-structured file system. ACM Transactions on Computer Systems 10, 1, 26--52.
[37]
J. Schindler, S. Shete, and K. A. Smith. 2011. Improving throughput for small disk requests with proximal I/O. In Proceedings of the 9th USENIX Conference on File and Storage Technologies (FAST’11). USENIX Association, Berkeley, CA, 10--25.
[38]
M. I. Seltzer, G. R. Ganger, M. K. McKusick, K. A. Smith, C. A. N. Soules, and C. A. Stein. 2000. Journaling versus soft updates: Asynchronous meta-data protection in file systems. In Proceedings of the 2000 USENIX Annual Technical Conference (ATEC’00). USENIX Association, Berkeley, CA, 6--6.
[39]
K. Shvachko, H. Kuang, S. Radia, and R. Chansler. 2010. The Hadoop distributed file system. Proceedings of the 2010 IEEE 26th Symposium on Mass Storage Systems and Technologies (MSST’10). 1--10.
[40]
D. Siewiorek, A. Smailagic, J. Furukawa, A. Krause, N. Moraveji, K. Reiger, J. Shaffer, and Fei Lung Wong. 2003. SenSay: A context-aware mobile phone. In Proceedings of 7th IEEE International Symposium on Wearable Computers, 2003. 248--249.
[41]
G. Soundararajan, M. Mihailescu, and C. Amza. 2008. Context-aware prefetching at the storage server. In Proceedings of the USENIX 2008 Annual Technical Conference (ATC’08). USENIX Association, Berkeley, CA, 377--390.
[42]
G. Soundararajan, V. Prabhakaran, M. Balakrishnan, and T. Wobber. 2010. Extending SSD lifetimes with disk-based write caches. In Proceedings of the 8th USENIX Conference on File and Storage Technologies (FAST’10). USENIX Association, Berkeley, CA, 8--8.
[43]
S. Sundararaman, L. Visampalli, A. C. Arpaci-Dusseau, and R. H. Arpaci-Dusseau. 2011. Refuse to crash with Re-FUSE. In Proceedings of the 6th Conference on Computer Systems (EuroSys’11). ACM, New York, NY, 77--90.
[44]
A. S. Tanenbaum, J. N. Herder, and H. Bos. 2006. File size distribution on UNIX systems: Then and now. SIGOPS Operating Systems Review 40, 1, 100--104.
[45]
K. Veeraraghavan, J. Flinn, E. B. Nightingale, and B. Noble. 2010. quFiles: The right file at the right time. ACM Transactions on Storage (TOS) 6, Issue 3, Article 12, 28 pages.
[46]
W. Wang, Y. Zhao, and R. Bunt. 2004. HyLog: A high performance approach to managing disk layout. In Proceedings of the 3rd USENIX Conference on File and Storage Technologies (FAST’04). USENIX Association, Berkeley, CA, 145--158.
[47]
WD1600AAJS. 2013. WD1600AAJS specification. Retrieved July 3, 2015 from http://wdc.custhelp.com/app/answers/detail/search/1/a_id/1400#.
[48]
S. A. Weil, S. A. Brandt, E. L. Miller, D. D. E. Long, and C. Maltzahn. 2006. Ceph: A scalable, high-performance distributed file system. In Proceedings of the 7th Symposium on Operating Systems Design and Implementation (OSDI’06). USENIX Association, Berkeley, CA, 307--320.
[49]
T. White. June 5, 2009. Hadoop: The definitive guide. O’Reilly Media, Yahoo&excl; Press, Sebastopol, CA.
[50]
Charles P. Wright, Jay Dave, Puja Gupta, Harikesavan Krishnan, David P. Quigley, Erez Zadok, and Mohammad Nayyer Zubair. 2006. Versatility and Unix semantics in namespace unification. ACM Transactions on Storage (TOS) 2, 1, 74--105.
[51]
XFS. 2014. The SGI XFS project. Retrieved July 3, 2015 from http://oss.sgi.com/projects/xfs/.
[52]
E. Zadok, I. Badulescu, and A. Shender. 1999. Extending file systems using stackable templates. In Proceedings of the USENIX Annual Technical Conference (ATEC’99). USENIX Association, Berkeley, CA, 5--5.
[53]
E. Zadok and J. Nieh. 2000. FIST: A language for stackable file systems. SIGOPS Operating Systems Review 34, 2, 38--38.
[54]
Z. Zhang and K. Ghose. 2007. hFS: A hybrid file system prototype for improving small file and metadata performance. Proceedings of the 2nd ACM SIGOPS/EuroSys European Conference on Computer Systems 41, 3, 175--187.

Cited By

View all
  • (2023)2BiVQA: Double Bi-LSTM-based Video Quality Assessment of UGC VideosACM Transactions on Multimedia Computing, Communications, and Applications10.1145/363217820:4(1-22)Online publication date: 11-Dec-2023
  • (2022)Multimodal-Based and Aesthetic-Guided Narrative Video SummarizationIEEE Transactions on Multimedia10.1109/TMM.2022.318339425(4894-4908)Online publication date: 15-Jun-2022
  • (2022)Regularized least square multi-hops localization algorithm based on DV-Hop for wireless sensor networksTelecommunications Systems10.1007/s11235-022-00897-z80:3(349-358)Online publication date: 1-Jul-2022
  • Show More Cited By

Index Terms

  1. Frog: A Framework for Context-Based File Systems

    Recommendations

    Comments

    Information & Contributors

    Information

    Published In

    cover image ACM Transactions on Storage
    ACM Transactions on Storage  Volume 11, Issue 3
    July 2015
    117 pages
    ISSN:1553-3077
    EISSN:1553-3093
    DOI:10.1145/2809503
    Issue’s Table of Contents
    Permission to make digital or hard copies of all or part 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 components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

    Publisher

    Association for Computing Machinery

    New York, NY, United States

    Publication History

    Published: 24 July 2015
    Accepted: 01 January 2015
    Revised: 01 September 2014
    Received: 01 March 2013
    Published in TOS Volume 11, Issue 3

    Permissions

    Request permissions for this article.

    Check for updates

    Author Tags

    1. File systems
    2. context aware
    3. multiview

    Qualifiers

    • Research-article
    • Research
    • Refereed

    Funding Sources

    • US National Science Foundation

    Contributors

    Other Metrics

    Bibliometrics & Citations

    Bibliometrics

    Article Metrics

    • Downloads (Last 12 months)9
    • Downloads (Last 6 weeks)1
    Reflects downloads up to 08 Mar 2025

    Other Metrics

    Citations

    Cited By

    View all
    • (2023)2BiVQA: Double Bi-LSTM-based Video Quality Assessment of UGC VideosACM Transactions on Multimedia Computing, Communications, and Applications10.1145/363217820:4(1-22)Online publication date: 11-Dec-2023
    • (2022)Multimodal-Based and Aesthetic-Guided Narrative Video SummarizationIEEE Transactions on Multimedia10.1109/TMM.2022.318339425(4894-4908)Online publication date: 15-Jun-2022
    • (2022)Regularized least square multi-hops localization algorithm based on DV-Hop for wireless sensor networksTelecommunications Systems10.1007/s11235-022-00897-z80:3(349-358)Online publication date: 1-Jul-2022
    • (2022)An optimized sensor node localization approach for wireless sensor networks using RSSIThe Journal of Supercomputing10.1007/s11227-022-04971-w79:7(7692-7716)Online publication date: 5-Dec-2022
    • (2019)Survey of Compressed Domain Video Summarization TechniquesACM Computing Surveys10.1145/335539852:6(1-29)Online publication date: 16-Oct-2019
    • (2019)Color Theme--based Aesthetic Enhancement Algorithm to Emulate the Human Perception of Beauty in PhotosACM Transactions on Multimedia Computing, Communications, and Applications10.1145/332899115:2s(1-17)Online publication date: 3-Jul-2019
    • (2017)EMGRComputer Networks: The International Journal of Computer and Telecommunications Networking10.1016/j.comnet.2017.08.011129:P1(51-63)Online publication date: 24-Dec-2017

    View Options

    Login options

    Full Access

    View options

    PDF

    View or Download as a PDF file.

    PDF

    eReader

    View online with eReader.

    eReader

    Figures

    Tables

    Media

    Share

    Share

    Share this Publication link

    Share on social media