• Publications
  • Influence
ZooKeeper: Wait-free Coordination for Internet-scale Systems
In this paper, we describe ZooKeeper, a service for coordinating processes of distributed applications. Since ZooKeeper is part of critical infrastructure, ZooKeeper aims to provide a simple and highExpand
  • 1,376
  • 200
  • Open Access
Zab: High-performance broadcast for primary-backup systems
Zab is a crash-recovery atomic broadcast algorithm we designed for the ZooKeeper coordination service. ZooKeeper implements a primary-backup scheme in which a primary process executes clientsExpand
  • 241
  • 30
  • Open Access
Mencius: Building Efficient Replicated State Machine for WANs
We present a protocol for general state machine replication - a method that provides strong consistency - that has high performance in a wide-area network. In particular, our protocol Mencius hasExpand
  • 237
  • 27
  • Open Access
The impact of caching on search engines
In this paper we study the trade-offs in designing efficient caching systems for Web search engines. We explore the impact of different approaches, such as static vs. dynamic caching, and cachingExpand
  • 209
  • 24
  • Open Access
A simple totally ordered broadcast protocol
This is a short overview of a totally ordered broadcast protocol used by ZooKeeper, called Zab. It is conceptually easy to understand, is easy to implement, and gives high performance. In this paperExpand
  • 81
  • 10
  • Open Access
Durability with BookKeeper
Practical systems must often guarantee that changes to the system state are durable. Examples of such systems are databases, file systems, and messaging middleware with guaranteed delivery. OneExpand
  • 23
  • 9
Scalable deferred update replication
Deferred update replication is a well-known approach to building data management systems as it provides both high availability and high performance. High availability comes from the fact that anyExpand
  • 66
  • 8
  • Open Access
Design trade-offs for search engine caching
In this article we study the trade-offs in designing efficient caching systems for Web search engines. We explore the impact of different approaches, such as static vs. dynamic caching, and cachingExpand
  • 92
  • 6
  • Open Access
A five-level static cache architecture for web search engines
Caching is a crucial performance component of large-scale web search engines, as it greatly helps reducing average query response times and query processing workloads on backend search clusters. InExpand
  • 47
  • 6
  • Open Access
Practical Hardening of Crash-Tolerant Systems
Recent failures of production systems have highlighted the importance of tolerating faults beyond crashes. The industry has so far addressed this problem by hardening crash-tolerant systems with adExpand
  • 52
  • 6
  • Open Access