We describe PNUTS, a massively parallel and geographically distributed database system for Yahoo!'s web applications. PNUTS provides data storage organized as hashed or ordered tables, low latency for large numbers of concurrent requests including updates and queries, and novel per-record consistency guarantees. It is a hosted, centrally managed, and geographically distributed service, and utilizes automated load-balancing and failover to reduce operational complexity. The first version of the system is currently serving in production. We describe the motivation for PNUTS and the design and implementation of its table storage and replication layers, and then present experimental results.
['Brian F. Cooper', 'Raghu Ramakrishnan', 'Utkarsh Srivastava', 'Adam Silberstein', 'Philip Bohannon', 'Hans-Arno Jacobsen', 'Nick Puz', 'Daniel Weaver', 'Ramana Yerneni']
PNUTS: Yahoo!'s hosted data serving platform