Skip to main content

An analysis of Facebook photo caching

Author(s): Huang, Qi; Birman, Ken; van Renesse, Robbert; Lloyd, Wyatt; Kumar, Sanjeev; et al

Download
To refer to this page use: http://arks.princeton.edu/ark:/88435/pr1gk00
Abstract: This paper examines the workload of Facebook's photo-serving stack and the effectiveness of the many layers of caching it employs. Facebook's image-management infrastructure is complex and geographically distributed. It includes browser caches on end-user systems, Edge Caches at ~20 PoPs, an Origin Cache, and for some kinds of images, additional caching via Akamai. The underlying image storage layer is widely distributed, and includes multiple data centers. We instrumented every Facebook-controlled layer of the stack and sampled the resulting event stream to obtain traces covering over 77 million requests for more than 1 million unique photos. This permits us to study traffic patterns, cache access patterns, geolocation of clients and servers, and to explore correlation between properties of the content and accesses. Our results (1) quantify the overall traffic percentages served by different layers: 65.5% browser cache, 20.0% Edge Cache, 4.6% Origin Cache, and 9.9% Backend storage, (2) reveal that a significant portion of photo requests are routed to remote PoPs and data centers as a consequence both of load-balancing and peering policy, (3) demonstrate the potential performance benefits of coordinating Edge Caches and adopting S4LRU eviction algorithms at both Edge and Origin layers, and (4) show that the popularity of photos is highly dependent on content age and conditionally dependent on the social-networking metrics we considered.
Publication Date: Nov-2013
Citation: Huang, Qi, Ken Birman, Robbert Van Renesse, Wyatt Lloyd, Sanjeev Kumar, and Harry C. Li. "An analysis of Facebook photo caching." In Proceedings of the Twenty-Fourth ACM Symposium on Operating Systems Principles (2013): pp. 167-181. doi:10.1145/2517349.2522722
DOI: 10.1145/2517349.2522722
Pages: 167 - 181
Type of Material: Conference Article
Journal/Proceeding Title: Proceedings of the Twenty-Fourth ACM Symposium on Operating Systems Principles
Version: Final published version. This is an open access article.



Items in OAR@Princeton are protected by copyright, with all rights reserved, unless otherwise indicated.