A File By Any Other Name: Managing File Names with Metadata

Appeared in Eurosys '14. Notification:January 24, 2014, Publication:April 14-16, 2014


File names are an ancient abstraction, a string of characters to uniquely identify a file and help users remember the contents of a file when they look for it later. However, they are not an ideal solution for these tasks. Names often contain useful semantic metadata provided by the user, but this metadata is opaque to the rest of the system. The formatting of the file name is up to the user, and as a result, metadata in file names is often error-prone, inconsistently formatted, and hard to search for later. File names need to be more meaningful and reliable, while simplifying application design and encouraging users and applications to provide more metadata for search. We describe our prototype file system, TrueNames, a POSIX compliant file system which demonstrates an alternate approach to naming and metadata, by providing metadata-aware naming. Our approach is intended to be complementary to non-hierarchical systems, while remaining effective within a hierarchical context. TrueNames separates the task of uniquely identifying a file from the task of helping the user remember its contents. It captures metadata in a more useable format, and uses it to generate file names which are correct, regenerable, and structured by design. TrueNames simplifies application design by providing a consistent interface for metadata aware naming, incurs minimal overhead of approximately 15% under realistic workloads, and can simplify a wide variety of data management tasks for both applications and users.

Publication date:
November 2013

Aleatha Parker-Wood
Ethan L. Miller
Darrell D. E. Long

Scalable File System Indexing
Dynamic Non-Hierarchical File Systems

Available media

Full paper text: PDF

Bibtex entry

  author       = {Aleatha Parker-Wood and Ethan L. Miller and Darrell D. E. Long},
  title        = {A File By Any Other Name: Managing File Names with Metadata},
  booktitle    = {Eurosys '14},
  month        = nov,
  year         = {2013},
Last modified 28 May 2019