goGFS

goGFS is a simple implementation of the Google File System (GFS) in golang. It is tested with a small cluster of inexpensive machines (1 master, 12 chunkservers and 12 clients). Fault tolerance is provided.

Feature

  • Architecture & Consistency Model
    • Same as the paper
  • System Interactions
    • atomic record append (append at least once)
  • Master
    • Persistent Metadata
    • Re-replication
    • Garbage Collection
    • Stale Detection
  • ChunkServer
    • Persistent Metadata
  • Client
    • Familiar File System Interface
  • Fault Tolerance

Todo

  • pipelined data flow
  • snapshot

Reference

The Google File System Class Wiki Test Repo

GitHub

View Github