a simple implementation of the Google File System in golang
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
src
.gitignore
LICENSE
README.md
graybox_test.go
llgfs.go

README.md

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