CMU-CS-10-141
Computer Science Department
School of Computer Science, Carnegie Mellon University



CMU-CS-10-141

Reusing Migration to Simply and Efficiently
Implement Multi-server Operations in Transparently
Scalable Storage Systems

Shafeeq Sinnamohideen

August 2010

Ph.D. Thesis

CMU-CS-10-141.pdf


Keywords: Object-based storage, object ID assignment algorithms, namespace flattening, OSD, metadata scalability, multi-server operations, cross-server operations, cross-directory operations, transparent scalabilily

Distributed file systems that scale by partitioning files and directories among a collection of servers inevitably encounter multi-server operations. A common example is a RENAME that moves a file from a directory managed by one server to a directory managed by another. Transparently scalable systems (those that provide the same semantics for multi-server operations as they do for single-server operations) traditionally implement dedicated protocols for these rare operations. This thesis explores an alternate approach, with simplicity as a goal, that exploits the existence of migration functionality normally used for load balancing. When a client request would involve files on multiple servers, the system can migrate responsibility for those files onto one server and have it service the request. Although migration may be more expensive than a dedicated cross-server protocol, trace analysis of deployed file systems indicates that such operations are extremely rare in file system workloads. A prototype system that uses this approach to supporting multi-server operations scales linearly and performs well even when multi-server operations are 100X more common than the worst-case trace. Thus, when migration functionality exists in the system, multi-server operations can be efficiently handled with very little additional implementation complexity.

122 pages


Return to: SCS Technical Report Collection
School of Computer Science

This page maintained by [email protected]