google file system sanjay ghemawat, howard gobioff, and shun-tak leung google ∗

18
Google File System Sanjay Ghemawat, Howard Gobioff, and Shun-Tak Leung Google

Upload: gillian-lucas

Post on 24-Dec-2015

253 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Google File System Sanjay Ghemawat, Howard Gobioff, and Shun-Tak Leung Google ∗

Google File System

Sanjay Ghemawat, Howard Gobioff, and Shun-Tak Leung

Google∗

Page 2: Google File System Sanjay Ghemawat, Howard Gobioff, and Shun-Tak Leung Google ∗

Overview

NFS Introduction-Design Overview Architecture System Interactions Master Operations Fault tolerance Conclusion

Page 3: Google File System Sanjay Ghemawat, Howard Gobioff, and Shun-Tak Leung Google ∗

NFS

Is build RPC’s Low performance Security Issues

Page 4: Google File System Sanjay Ghemawat, Howard Gobioff, and Shun-Tak Leung Google ∗

Introduction

Need For GFS:

Large Data FilesScalabilityReliabilityAutomationReplication of dataFault Tolerance

Page 5: Google File System Sanjay Ghemawat, Howard Gobioff, and Shun-Tak Leung Google ∗

Design Overview:

Component’s Monitoring Storing of huge data Reading and writing of data Well defined semantics for multiple clients Importance of Bandwidth

Assumptions:

Interface: Not POSIX compliant Additional operations

o Snapshoto Record append

Page 6: Google File System Sanjay Ghemawat, Howard Gobioff, and Shun-Tak Leung Google ∗

Architecture:

Single Master Multiple Chunk Servers

Multiple clients

Cluster Computing

Stores 64 bit file chunks

Page 7: Google File System Sanjay Ghemawat, Howard Gobioff, and Shun-Tak Leung Google ∗
Page 8: Google File System Sanjay Ghemawat, Howard Gobioff, and Shun-Tak Leung Google ∗

Single Master , Chunk size & Meta data

Single Master:Minimal Master Load.Fixed chunk Size.The master also predicatively provide chunk locations immediately following those requested by unique id.

Chunk Size : 64 MB size.Read and write operations on same chunk.Reduces network overhead and size of metadata in the master.

Page 9: Google File System Sanjay Ghemawat, Howard Gobioff, and Shun-Tak Leung Google ∗

Metadata : Types of Metadata:

o File and chunk namespaceso Mapping from files to chunkso Location of each chunks replicas

In-memory data structures:o Master operations are fast.o Periodic scanning entire state is easy and

efficient

Page 10: Google File System Sanjay Ghemawat, Howard Gobioff, and Shun-Tak Leung Google ∗

Chunk Locations:o Master polls chunk server for the

information.o Client request data from chunk server.

Operation Log:o Keeps track of activities.o It is central to GFS.o It stores on multiple remote locations.

Page 11: Google File System Sanjay Ghemawat, Howard Gobioff, and Shun-Tak Leung Google ∗

System Interactions:

Leases And Mutation order:o Leases maintain consistent

mutation order across the replicas.

o Master picks one replica as primary.

o Primary defines serial order for mutations.

o Replicas follow same serial order.o Minimize management overhead

at the master.

Page 12: Google File System Sanjay Ghemawat, Howard Gobioff, and Shun-Tak Leung Google ∗

Atomic Record Appends:o GFS offers Record Append .

o Clients on different machines append to the same file concurrently.

o The data is written at least once as an atomic unit.

Snapshot:o It creates quick copy of files or a directory .

o Master revokes lease for that file

o Duplicate metadata

o On first write to a chunk after the snapshot operation

o All chunk servers create new chunk

o Data can be copied locally

Page 13: Google File System Sanjay Ghemawat, Howard Gobioff, and Shun-Tak Leung Google ∗

Master Operation

Namespace Management and Locking:o GFS maps full pathname to Metadata in a table.o Each master operation acquires a set of locks.o Locking scheme allows concurrent mutations in same

directory.o Locks are acquired in a consistent total order to prevent

deadlock. Replica Placement:o Maximizes reliability, availability and network bandwidth

utilization.o Spread chunk replicas across racks

Page 14: Google File System Sanjay Ghemawat, Howard Gobioff, and Shun-Tak Leung Google ∗

Creation, Re-replication, Rebalancing Create:o Equalize disk utilization.o Limit the number of creation on chunk server.o Spread replicas across racks.

Re-replication:o Re-replication of chunk happens on priority.

Rebalancing:o Move replica for better disk space and load balancing.o Remove replicas on chunk servers with below average free space.

Page 15: Google File System Sanjay Ghemawat, Howard Gobioff, and Shun-Tak Leung Google ∗

Garbage Collection:o Makes system Simpler and more reliable.o Master logs the deletion, renames the file to a hidden name.

Stale Replica detection:o Chunk version number identifies the stale replicas.o Client or chunk server verifies the version number.

Page 16: Google File System Sanjay Ghemawat, Howard Gobioff, and Shun-Tak Leung Google ∗

Fault Tolerance

High availability:o Fast recovery.o Chunk replication.o Shadow Masters. Data Integrity:o Check sum every 64 kb block in each chunk.

Page 17: Google File System Sanjay Ghemawat, Howard Gobioff, and Shun-Tak Leung Google ∗

Conclusion

GFS meets Google storage requirements:Incremental growth Regular check of component failureData optimization from special operationsSimple architectureFault Tolerance

Page 18: Google File System Sanjay Ghemawat, Howard Gobioff, and Shun-Tak Leung Google ∗