The workloads running in the modern data centers of large scale Internet service providers (such as Alibaba, Amazon, Baidu, Facebook, Google, and Microsoft) support billions of users and span globally distributed infrastructure. Yet, the devices used in modern data centers fail due to a variety of causes, from faulty components to bugs to misconfiguration. Faulty devices make operating large scale data centers challenging because the workloads running in modern data centers consist of interdependent programs distributed across many servers, so failures that are isolated to a single device can still have a widespread effect on a workload. In this dissertation, we measure and model the device failures in a large scale Internet service company, Facebook. We focus on three device types that form the foundation of Internet service data center infrastructure: DRAM for main memory, SSDs for persistent storage, and switches and backbone links for network connectivity. For each of these device types, we analyze long term device failure data broken down by important device attributes and operating conditions, such as age, vendor, and workload. We also build and release statistical models of the failure trends for the devices we analyze. For DRAM devices, we analyze the memory errors in the entire fleet of servers at Facebook over the course of fourteen months, representing billions of device days of operation. The systems we examine cover a wide range of devices commonly used in modern servers, with DIMMs that use the modern DDR3 communication protocol, manufactured by 4 vendors in capacities ranging from 2GB to 24GB. We observe several new reliability trends for memory systems that have not been discussed before in literature, develop a model for memory reliability, show how system design choices such as using lower density DIMMs and fewer cores per chip can reduce failure rates of a baseline server by up to 57.7%. We perform the first implementation and real-system analysis of page offlining at scale, on a cluster of thousands of servers, identify several real-world impediments to the technique, and show that it can reduce memory error rate by 67%. We also examine the efficacy of a new technique to reduce DRAM faults, physical page randomization, and examine its potential for improving reliability and its overheads. For SSD devices, we perform a large scale study of flash-based SSD reliability at Facebook. We analyze data collected across a majority of flash-based solid state drives over nearly four years and many millions of operational hours in order to understand failure properties and trends of flash-based SSDs. Our study considers a variety of SSD characteristics, including: the amount of data written to and read from flash chips; how data is mapped within the SSD address space; the amount of data copied, erased, and discarded by the flash controller; and flash board temperature and bus power. Based on our field analysis of how flash memory errors manifest when running modern workloads on modern SSDs, we make several major observations and find that SSD failure rates do not increase monotonically with flash chip wear, but instead they go through several distinct periods corresponding to how failures emerge and are subsequently detected. For network devices, we perform a large scale, longitudinal study of data center network reliability based on operational data collected from the production network infrastructure at Facebook. Our study covers reliability characteristics of both intra and inter data center networks. For intra data center networks, we study seven years of operation data comprising thousands of network incidents across two different data center network designs, a cluster network design and a state-of-the-art fabric network design. For inter data center networks, we study eighteen months of recent repair tickets from the field to understand the reliability of Wide Area Network (WAN) backbones. In contrast to prior work, we study the effects of network reliability on software systems, and how these reliability characteristics evolve over time. We discuss the implications of network reliability on the design, implementation, and operation of large scale data center systems and how the network affects highly-available web services. Our key conclusion in this dissertation is that we can gain a deep understanding of why devices fail—and how to predict their failure—using measurement and modeling. We hope that the analysis, techniques, and models we present in this dissertation will enable the community to better measure,
understand, and prepare for the hardware reliability challenges we face in the future.