Prophecy
What is Prophecy?
Prophecy is a system that interposes itself between clients and any replicated service to minimize request replication when results are historically consistent. At the core of Prophecy is a trusted sketcher component, which is designed to replace the semi-trusted load balancer that mediates access to a service. The sketcher maintains a compact history table of request/response pairs that allow it to perform fast load-balanced reads when state transitions do not occur, and slow, replicated reads otherwise. Despite its simplicity, Prophecy provides a new form of consistency called delay-once consistency: informally, faulty nodes can return only stale (not arbitrary) data and only for an exponentially-small number of times. Our prototype implementation demonstrates Prophecy’s high throughput compared to BFT systems and its ability to scale out to large replica server groups.
Download
Coming Soon
Publications
Coming Soon