Hall of FameSanjay Ghemawat, Howard Gobioff, Shun-Tak Leung200362 min readpaperintermediate
The Google File System
Summary
The Google File System (GFS) is a scalable distributed file system designed for Google's data-intensive applications, built on inexpensive commodity hardware. It provides fault tolerance and high aggregate performance by optimizing for large files, sequential appends, and anticipating frequent component failures.
- GFS uses a single master for metadata and multiple chunkservers for data storage, with clients interacting directly with chunkservers for data I/O.
- Files are divided into fixed-size chunks (e.g., 64MB), which are replicated across chunkservers for reliability and availability.
- The system is optimized for large streaming reads and sequential appends to huge files, rather than small random writes or low-latency operations.
- GFS assumes component failures are routine, integrating constant monitoring, error detection, and automatic recovery into its core design.
This paper is foundational for understanding modern distributed storage systems and significantly influenced the design of many subsequent systems, including Hadoop HDFS.
9/10