gfs/hdfs 15-440 distributed systems. 2 building blocks google workqueue (scheduler) google file...

69
GFS/HDFS 15-440 Distributed Systems

Upload: henry-archibald-watson

Post on 21-Jan-2016

213 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: GFS/HDFS 15-440 Distributed Systems. 2 Building Blocks Google WorkQueue (scheduler) Google File System Chubby Lock service (paxos-based) Two other pieces

GFS/HDFS

15-440 Distributed Systems

Page 2: GFS/HDFS 15-440 Distributed Systems. 2 Building Blocks Google WorkQueue (scheduler) Google File System Chubby Lock service (paxos-based) Two other pieces

2

Building Blocks

• Google WorkQueue (scheduler)• Google File System• Chubby Lock service (paxos-based)• Two other pieces helpful but not required

• Sawzall (languate)• MapReduce

• BigTable: Build a more application-friendly storage service using these parts

Page 3: GFS/HDFS 15-440 Distributed Systems. 2 Building Blocks Google WorkQueue (scheduler) Google File System Chubby Lock service (paxos-based) Two other pieces

Overview

• Google File System (GFS) and Hadoop Distributed File System (HDFS)

• BigTable

3

Page 4: GFS/HDFS 15-440 Distributed Systems. 2 Building Blocks Google WorkQueue (scheduler) Google File System Chubby Lock service (paxos-based) Two other pieces

Google Disk Farm

Early days…

…today

4

Page 5: GFS/HDFS 15-440 Distributed Systems. 2 Building Blocks Google WorkQueue (scheduler) Google File System Chubby Lock service (paxos-based) Two other pieces

Google Platform Characteristics

• Lots of cheap PCs, each with disk and CPU• High aggregate storage capacity• Spread search processing across many CPUs

• How to share data among PCs?

5

Page 6: GFS/HDFS 15-440 Distributed Systems. 2 Building Blocks Google WorkQueue (scheduler) Google File System Chubby Lock service (paxos-based) Two other pieces

Google Platform Characteristics

• 100s to 1000s of PCs in cluster• Many modes of failure for each PC:

• App bugs, OS bugs• Human error• Disk failure, memory failure, net failure, power supply

failure• Connector failure

• Monitoring, fault tolerance, auto-recovery essential

6

Page 7: GFS/HDFS 15-440 Distributed Systems. 2 Building Blocks Google WorkQueue (scheduler) Google File System Chubby Lock service (paxos-based) Two other pieces

7

Page 8: GFS/HDFS 15-440 Distributed Systems. 2 Building Blocks Google WorkQueue (scheduler) Google File System Chubby Lock service (paxos-based) Two other pieces

Data-Center Network

Page 9: GFS/HDFS 15-440 Distributed Systems. 2 Building Blocks Google WorkQueue (scheduler) Google File System Chubby Lock service (paxos-based) Two other pieces
Page 10: GFS/HDFS 15-440 Distributed Systems. 2 Building Blocks Google WorkQueue (scheduler) Google File System Chubby Lock service (paxos-based) Two other pieces
Page 11: GFS/HDFS 15-440 Distributed Systems. 2 Building Blocks Google WorkQueue (scheduler) Google File System Chubby Lock service (paxos-based) Two other pieces
Page 12: GFS/HDFS 15-440 Distributed Systems. 2 Building Blocks Google WorkQueue (scheduler) Google File System Chubby Lock service (paxos-based) Two other pieces
Page 13: GFS/HDFS 15-440 Distributed Systems. 2 Building Blocks Google WorkQueue (scheduler) Google File System Chubby Lock service (paxos-based) Two other pieces
Page 14: GFS/HDFS 15-440 Distributed Systems. 2 Building Blocks Google WorkQueue (scheduler) Google File System Chubby Lock service (paxos-based) Two other pieces
Page 15: GFS/HDFS 15-440 Distributed Systems. 2 Building Blocks Google WorkQueue (scheduler) Google File System Chubby Lock service (paxos-based) Two other pieces
Page 16: GFS/HDFS 15-440 Distributed Systems. 2 Building Blocks Google WorkQueue (scheduler) Google File System Chubby Lock service (paxos-based) Two other pieces
Page 17: GFS/HDFS 15-440 Distributed Systems. 2 Building Blocks Google WorkQueue (scheduler) Google File System Chubby Lock service (paxos-based) Two other pieces
Page 18: GFS/HDFS 15-440 Distributed Systems. 2 Building Blocks Google WorkQueue (scheduler) Google File System Chubby Lock service (paxos-based) Two other pieces
Page 19: GFS/HDFS 15-440 Distributed Systems. 2 Building Blocks Google WorkQueue (scheduler) Google File System Chubby Lock service (paxos-based) Two other pieces
Page 20: GFS/HDFS 15-440 Distributed Systems. 2 Building Blocks Google WorkQueue (scheduler) Google File System Chubby Lock service (paxos-based) Two other pieces
Page 21: GFS/HDFS 15-440 Distributed Systems. 2 Building Blocks Google WorkQueue (scheduler) Google File System Chubby Lock service (paxos-based) Two other pieces
Page 22: GFS/HDFS 15-440 Distributed Systems. 2 Building Blocks Google WorkQueue (scheduler) Google File System Chubby Lock service (paxos-based) Two other pieces
Page 23: GFS/HDFS 15-440 Distributed Systems. 2 Building Blocks Google WorkQueue (scheduler) Google File System Chubby Lock service (paxos-based) Two other pieces
Page 24: GFS/HDFS 15-440 Distributed Systems. 2 Building Blocks Google WorkQueue (scheduler) Google File System Chubby Lock service (paxos-based) Two other pieces
Page 25: GFS/HDFS 15-440 Distributed Systems. 2 Building Blocks Google WorkQueue (scheduler) Google File System Chubby Lock service (paxos-based) Two other pieces
Page 26: GFS/HDFS 15-440 Distributed Systems. 2 Building Blocks Google WorkQueue (scheduler) Google File System Chubby Lock service (paxos-based) Two other pieces
Page 27: GFS/HDFS 15-440 Distributed Systems. 2 Building Blocks Google WorkQueue (scheduler) Google File System Chubby Lock service (paxos-based) Two other pieces
Page 28: GFS/HDFS 15-440 Distributed Systems. 2 Building Blocks Google WorkQueue (scheduler) Google File System Chubby Lock service (paxos-based) Two other pieces
Page 29: GFS/HDFS 15-440 Distributed Systems. 2 Building Blocks Google WorkQueue (scheduler) Google File System Chubby Lock service (paxos-based) Two other pieces
Page 30: GFS/HDFS 15-440 Distributed Systems. 2 Building Blocks Google WorkQueue (scheduler) Google File System Chubby Lock service (paxos-based) Two other pieces
Page 31: GFS/HDFS 15-440 Distributed Systems. 2 Building Blocks Google WorkQueue (scheduler) Google File System Chubby Lock service (paxos-based) Two other pieces
Page 32: GFS/HDFS 15-440 Distributed Systems. 2 Building Blocks Google WorkQueue (scheduler) Google File System Chubby Lock service (paxos-based) Two other pieces
Page 33: GFS/HDFS 15-440 Distributed Systems. 2 Building Blocks Google WorkQueue (scheduler) Google File System Chubby Lock service (paxos-based) Two other pieces
Page 34: GFS/HDFS 15-440 Distributed Systems. 2 Building Blocks Google WorkQueue (scheduler) Google File System Chubby Lock service (paxos-based) Two other pieces
Page 35: GFS/HDFS 15-440 Distributed Systems. 2 Building Blocks Google WorkQueue (scheduler) Google File System Chubby Lock service (paxos-based) Two other pieces
Page 36: GFS/HDFS 15-440 Distributed Systems. 2 Building Blocks Google WorkQueue (scheduler) Google File System Chubby Lock service (paxos-based) Two other pieces
Page 37: GFS/HDFS 15-440 Distributed Systems. 2 Building Blocks Google WorkQueue (scheduler) Google File System Chubby Lock service (paxos-based) Two other pieces
Page 38: GFS/HDFS 15-440 Distributed Systems. 2 Building Blocks Google WorkQueue (scheduler) Google File System Chubby Lock service (paxos-based) Two other pieces
Page 39: GFS/HDFS 15-440 Distributed Systems. 2 Building Blocks Google WorkQueue (scheduler) Google File System Chubby Lock service (paxos-based) Two other pieces
Page 40: GFS/HDFS 15-440 Distributed Systems. 2 Building Blocks Google WorkQueue (scheduler) Google File System Chubby Lock service (paxos-based) Two other pieces
Page 41: GFS/HDFS 15-440 Distributed Systems. 2 Building Blocks Google WorkQueue (scheduler) Google File System Chubby Lock service (paxos-based) Two other pieces
Page 42: GFS/HDFS 15-440 Distributed Systems. 2 Building Blocks Google WorkQueue (scheduler) Google File System Chubby Lock service (paxos-based) Two other pieces
Page 43: GFS/HDFS 15-440 Distributed Systems. 2 Building Blocks Google WorkQueue (scheduler) Google File System Chubby Lock service (paxos-based) Two other pieces
Page 44: GFS/HDFS 15-440 Distributed Systems. 2 Building Blocks Google WorkQueue (scheduler) Google File System Chubby Lock service (paxos-based) Two other pieces
Page 45: GFS/HDFS 15-440 Distributed Systems. 2 Building Blocks Google WorkQueue (scheduler) Google File System Chubby Lock service (paxos-based) Two other pieces
Page 46: GFS/HDFS 15-440 Distributed Systems. 2 Building Blocks Google WorkQueue (scheduler) Google File System Chubby Lock service (paxos-based) Two other pieces
Page 47: GFS/HDFS 15-440 Distributed Systems. 2 Building Blocks Google WorkQueue (scheduler) Google File System Chubby Lock service (paxos-based) Two other pieces
Page 48: GFS/HDFS 15-440 Distributed Systems. 2 Building Blocks Google WorkQueue (scheduler) Google File System Chubby Lock service (paxos-based) Two other pieces
Page 49: GFS/HDFS 15-440 Distributed Systems. 2 Building Blocks Google WorkQueue (scheduler) Google File System Chubby Lock service (paxos-based) Two other pieces
Page 50: GFS/HDFS 15-440 Distributed Systems. 2 Building Blocks Google WorkQueue (scheduler) Google File System Chubby Lock service (paxos-based) Two other pieces
Page 51: GFS/HDFS 15-440 Distributed Systems. 2 Building Blocks Google WorkQueue (scheduler) Google File System Chubby Lock service (paxos-based) Two other pieces
Page 52: GFS/HDFS 15-440 Distributed Systems. 2 Building Blocks Google WorkQueue (scheduler) Google File System Chubby Lock service (paxos-based) Two other pieces
Page 53: GFS/HDFS 15-440 Distributed Systems. 2 Building Blocks Google WorkQueue (scheduler) Google File System Chubby Lock service (paxos-based) Two other pieces
Page 54: GFS/HDFS 15-440 Distributed Systems. 2 Building Blocks Google WorkQueue (scheduler) Google File System Chubby Lock service (paxos-based) Two other pieces
Page 55: GFS/HDFS 15-440 Distributed Systems. 2 Building Blocks Google WorkQueue (scheduler) Google File System Chubby Lock service (paxos-based) Two other pieces
Page 56: GFS/HDFS 15-440 Distributed Systems. 2 Building Blocks Google WorkQueue (scheduler) Google File System Chubby Lock service (paxos-based) Two other pieces
Page 57: GFS/HDFS 15-440 Distributed Systems. 2 Building Blocks Google WorkQueue (scheduler) Google File System Chubby Lock service (paxos-based) Two other pieces
Page 58: GFS/HDFS 15-440 Distributed Systems. 2 Building Blocks Google WorkQueue (scheduler) Google File System Chubby Lock service (paxos-based) Two other pieces
Page 59: GFS/HDFS 15-440 Distributed Systems. 2 Building Blocks Google WorkQueue (scheduler) Google File System Chubby Lock service (paxos-based) Two other pieces
Page 60: GFS/HDFS 15-440 Distributed Systems. 2 Building Blocks Google WorkQueue (scheduler) Google File System Chubby Lock service (paxos-based) Two other pieces
Page 61: GFS/HDFS 15-440 Distributed Systems. 2 Building Blocks Google WorkQueue (scheduler) Google File System Chubby Lock service (paxos-based) Two other pieces
Page 62: GFS/HDFS 15-440 Distributed Systems. 2 Building Blocks Google WorkQueue (scheduler) Google File System Chubby Lock service (paxos-based) Two other pieces
Page 63: GFS/HDFS 15-440 Distributed Systems. 2 Building Blocks Google WorkQueue (scheduler) Google File System Chubby Lock service (paxos-based) Two other pieces
Page 64: GFS/HDFS 15-440 Distributed Systems. 2 Building Blocks Google WorkQueue (scheduler) Google File System Chubby Lock service (paxos-based) Two other pieces
Page 65: GFS/HDFS 15-440 Distributed Systems. 2 Building Blocks Google WorkQueue (scheduler) Google File System Chubby Lock service (paxos-based) Two other pieces
Page 66: GFS/HDFS 15-440 Distributed Systems. 2 Building Blocks Google WorkQueue (scheduler) Google File System Chubby Lock service (paxos-based) Two other pieces
Page 67: GFS/HDFS 15-440 Distributed Systems. 2 Building Blocks Google WorkQueue (scheduler) Google File System Chubby Lock service (paxos-based) Two other pieces
Page 68: GFS/HDFS 15-440 Distributed Systems. 2 Building Blocks Google WorkQueue (scheduler) Google File System Chubby Lock service (paxos-based) Two other pieces
Page 69: GFS/HDFS 15-440 Distributed Systems. 2 Building Blocks Google WorkQueue (scheduler) Google File System Chubby Lock service (paxos-based) Two other pieces