Adaptive Hybrid Quorums in Practical Settings Aaron Davidson
Adaptive Hybrid Quorums in Practical Settings Aaron Davidson, Aviad Rubinstein, Anirudh Todi, Peter Bailis and Shivaram Venkataraman Introduction Implementation in Cassandra Evaluation What are Quorums? Adaptive Hybrid Quorums Experimental Consistency § Replication → consistency + durability + availability. § quorum – subset of the replicas Write and read from a quorum → efficiency § Traditionally: full quorums – every 2 quorums intersect → consistency § In practice: partial quorums → sacrificing consistency for efficiency t-visibility § Dynamo: send to N replicas (full quorum), wait for R/W (partial quorum). § Eventually all replicas receive request → eventual consistency § Bailis et al. [1]: bound the time for consistency Key Observation Quorums are temporary → change them adaptively! § Use PBSPredictor() and WARS Model [1] to track latencies and predict consistency Phase 2 recovery § Track workload properties, e. g. is it read- or write- oriented? § Optimization algorithm → adaptively find the best quorum for current workload and system performance node fails Failure Modeling Experimental Latency § Node failure model: Phase 1 – node crashes but we don’t know it… node fails detection Phase 2 – Writes go to hinted node N-1 replicas remain node restarts Phase 3 – Hinted-handoff Recovering node is partially available (1, 2) (1, 1) recovery References [1] Peter Bailis, Shivaram Venkataraman, Michael J. §Incorporate model into adaptive hybrid consistency Franklin, Joseph M. Hellerstein, and Ion Stoica. Probabilistically bounded staleness for practical partial quorums. PVLDB, 5(8): 776787, 2012. §Ongoing work: model message drops…
- Slides: 1