Computer Science Department
School of Computer Science, Carnegie Mellon University


Defragmenting DHT-based Distributed File Systems

Jeffrey Pang, Phillip B. Gibbons*, Michael Kaminsky*,
Srinivasan Seshan, Haifeng Yu**

March 2007


Keywords: DHT, locality, defragmenting, file systems

Existing DHT-based file systems use consistent hashing to assign file blocks to random machines. As a result, a user task accessing an entire file or multiple files needs to retrieve blocks from many different machines. This paper demonstrates that significant availability and performance gains can be achieved if, instead, users are able to retrieve all the data needed for a given task from only a few DHT nodes. We explore the design and implications of such a "defragmented" DHT-based distributed file system, called D2, that also maintains important DHT properties like storage load balance. We show using real-world file system traces that a simple key encoding scheme is sufficient to maintain good defragmentation for most user tasks. Using both simulation and an actual 1,000 node deployment, we show that D2 increases availability by over an order of magnitude and improves user-perceived latency by 30-100% compared to a traditional design.

32 pages

*Intel Research Pittsburgh
**Computer Science Department, School of Computing, National University of Singapore

Return to: SCS Technical Report Collection
School of Computer Science

This page maintained by