Download presentation
Presentation is loading. Please wait.
Published byDemarcus Grigsby Modified over 10 years ago
2
P. Hunt, M Konar, F. Junqueira, B. Reed Presented by David Stein for ECE598YL SP12
3
Versatile distributed coordination system Simple primitives Application developers use API to implement higher-level coordination primitives Wait-free non-blocking design Strong ordering guarantees Designed for read-intensive workload
4
Hierarchical, filesystem-like design znodes Regular (persistent) Ephemeral (session) Supports sequential naming of nodes Nodes contain values Sessions
6
create(path, data, flags) delete(path, version) exists(path, watch) getData(path, watch) setData(path, data, version) getChildren(path, watch) sync(path)
7
Linearizable writes FIFO client order Liveness Durability
8
Data is replicated on every server Reads are serviced immediately Write requests are forwarded to the leader Transforms requests from client into idempotent transaction records Zab is used to push idempotent transaction records to the replicated database (stored with the followers) Strong order guarantees (uses TCP)
10
Local replicas will never diverge But any point in time, some local servers may have applied more transactions than others Failure recovery Periodic snapshots are kept at each replica Idempotent transaction records can be received in any order to rebuild the state
11
Configuration Management Rendezvous Group Membership Locks
12
Yahoo! Fetching Service Part of Yahoo! crawler for search engine Uses ZooKeeper to manage configuration metadata and leader election. Katta Yahoo! Message Broker Publish-subscribe system
16
Chubby Boxwood ISIS Paxos Sinfonia Dynamo
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.