Lecture 10 Midterm Review
- Map/Reduce
- RPC
- Server, client, stubs
- At-least once
- At-most once
- FDS
- Full bisection bandwidth
- Each tractserver stripes data across entire cluster
- TLT provides per-blob random but deterministic striping
- TLT structured to maximimze recovery bandwidth
- Argus
- Transactions
- Serializability
- 2PL
- 2PC
- Q: What problem does this solve? When do we need it?
- Need atomicity in the face of concurrency where each involved party
needs the ability to abort the collective operation.
- What are the two phases?
- Why can't it be solved in one phase?
- When can 2PC get stuck?
- Coordinator + one participant go down.
- Should walk through the situations.
- Understand why this is solving a different problem than P/B and Paxos.
- Thor
- More conventional DB than Argus
- OCC (with 2PC)
- Just read and write and check to make sure it was safe at the end.
- Validation
- Enforcing a single total order in validation that is partitioned among 2PC participants
- Use timestamps
- Benefits of OCC: lower overhead when low contention
- No need for locking messages on read/write.
- Sinfonia
- Minitransactions
- Weaker than normal transactions
- e.g. Can't read a record incr by one and write it with on tx.
- This makes getting serializability harder when you want to do things like RMW.
- Must roll own concurrency control using version numbers, etc, using the compare items.
- Minitransactions are submitted one-shot and execute with quick 2PL integrated into 2PC.
- Records locked, read, compared in Phase 1.
- Written, locks dropped after Phase 2.
- Configurable in tons of durability modes.
- Weird data model too: not key-value or primary key to record. Instead big
address space. Accesses need to include lengths.
- Makes locking a bit weird, since they are always on ranges.
- Idea: a tool for building large-scale systems on top.
- COST
- Use a laptop to run latest scalable research workloads.
- Show for some systems/algs/workloads it takes 100s of machines to beat the
laptop.
- Paxos
- Replicated state machines, replicated command logs
- Consensus and Basic Paxos
- Prepare, Accept
- Multi-Paxos, leader election
- Don't worry about configuration changes
- Raft
- Leader election
- Log replication
- Determining when log entries are committed.
- Lab 2