Google I/O 2009 - Transactions Across Datacenters..
Description
Google I/O 2009 - Transactions Across Datacenters (and Other Weekend Projects)
Ryan Barrett
-- Contents --
0:55 - Background quotes
2:30 - Introduction: multihoming for read/write structured storage
5:12 - Three types of consistency: weak, eventual, strong
10:00 - Transactions: definition, background
12:22 - Why multihome? Why try do anything across multiple datacenters?
15:30 - Why *not* multihome?
17:45 - Three kinds of multihoming: none, some, full
27:35 - Multihoming techniques and how to evaluate them
28:30 - Technique #1: Backups
31:39 - Technique #2: Master/slave replication
35:42 - Technique #3: Multi-master replication
39:30 - Technique #4: Two phase commit
43:53 - Technique #5: Paxos
49:35 - Conclusion: no silver bullet. Embrace the tradeoffs!
52:15 - Questions
-- End --
If you work on distributed systems, you try to design your system to keep running if any single machine fails. If you're ambitious, you might extend this to entire racks, or even more inconvenient sets of machines. However, what if your entire datacenter falls off the face of the earth? This talk will examine how current large scale storage systems handle fault tolerance and consistency, with a particular focus on the App Engine datastore. We'll cover techniques such as replication, sharding, two phase commit, and consensus protocols (e.g. Paxos), then explore how they can be applied across datacenters.
For presentation slides and all I/O sessions, please go to: code.google.com/events/io/sessions.html