Performance predictability is a key requirement for high-performant applications in today’s multi-tenant data centers. Online services running in infrastructure data centers need such predictability to satisfy application SLAs. Cloud data centers require guaranteed performance to bound customer costs and spur adoption. However, several components of today’s datacenters are at odds with such high-level application SLAs.
The Predictable Data Centers (PDC) project tackles the issue of unpredictable application performance in data centers. A key contributor to such unpredictability is shared resources like network and storage. The bandwidth across the cloud network and to the cloud storage service can vary significantly. To address this, we are designing a predictable data center architecture that offers performance SLAs across shared resources. Efforts like Oktopus, D3 and Hadrian enable a predictable network. More recently, we have been working on predictable storage. We have designed IOFlow, a software-defined storage architecture that enables performance SLAs across shared storage.