Nothing Special   »   [go: up one dir, main page]

skip to main content
10.1145/3041021.3051098acmotherconferencesArticle/Chapter ViewAbstractPublication PagesthewebconfConference Proceedingsconference-collections
tutorial

Caching at the Web Scale: [Tutorial]

Published: 03 April 2017 Publication History

Abstract

Today's web applications and social networks are serving billions of users around the globe. These users generate billions of key lookups and millions of data object updates per second. A single user's social network page load requires hundreds of key lookups. This scale creates many design challenges for the underlying storage systems. First, these systems have to serve user requests with low latency. Any increase in the request latency leads to a decrease in user interest. Second, storage systems have to be highly available. Failures should be handled seamlessly without affecting user requests. Third, users consume an order of magnitude more data than they produce. Therefore, storage systems have to be optimized for read-intensive workloads. To address these challenges, distributed in-memory caching services have been widely deployed on top of persistent storage. In this tutorial, we survey the recent developments in distributed caching services. We present the algorithmic and architectural efforts behind these systems focusing on the challenges in addition to open research questions.

References

[1]
Amazon elasticache in-memory data store and cache. https://aws.amazon.com/elasticache/.
[2]
Azure redis cache. https://azure.microsoft.com/en-us/services/cache/.
[3]
Caching with twemcache. https://blog.twitter.com/2012/caching-with-twemcache/.
[4]
Facebook company info. http://newsroom.fb.com/company-info/.
[5]
Memcached. a distributed memory object caching system. https://memcached.org/.
[6]
Memcachier. https://www.memcachier.com/.
[7]
Redis. http://redis.io/.
[8]
Twitter: number of active users 2010--2016. https://www.statista.com/statistics/282087/number-of-monthly-active-twitter-users/.
[9]
B. Atikoglu, Y. Xu, E. Frachtenberg, S. Jiang, and M. Paleczny. Workload analysis of a large-scale key-value store. In ACM SIGMETRICS Performance Evaluation Review, volume 40, pages 53--64. ACM, 2012.
[10]
N. Bronson, Z. Amsden, G. Cabrera, P. Chakka, P. Dimov, H. Ding, J. Ferris, A. Giardullo, S. Kulkarni, H. Li, et al. Tao: Facebook's distributed data store for the social graph. In Presented as part of the 2013 USENIX Annual Technical Conference (USENIX ATC 13), pages 49--60, 2013.
[11]
A. Cidon, A. Eisenman, M. Alizadeh, and S. Katti. Dynacache: Dynamic cloud caching. In 7th USENIX Workshop on Hot Topics in Cloud Computing (HotCloud 15), 2015.
[12]
A. Cidon, A. Eisenman, M. Alizadeh, and S. Katti. Cliffhanger: Scaling performance cliffs in web memory caches. In 13th USENIX Symposium on Networked Systems Design and Implementation (NSDI 16), pages 379--392, Santa Clara, CA, Mar. 2016. USENIX Association.
[13]
B. Fan, D. G. Andersen, and M. Kaminsky. Memc3: Compact and concurrent memcache with dumber caching and smarter hashing. In Presented as part of the 10th USENIX Symposium on Networked Systems Design and Implementation (NSDI 13), pages 371--384, 2013.
[14]
Q. Huang, K. Birman, R. van Renesse, W. Lloyd, S. Kumar, and H. C. Li. An analysis of facebook photo caching. In Proceedings of the Twenty-Fourth ACM Symposium on Operating Systems Principles, pages 167--181. ACM, 2013.
[15]
H. Kwak, C. Lee, H. Park, and S. Moon. What is twitter, a social network or a news media? In Proceedings of the 19th international conference on World wide web, pages 591--600. ACM, 2010.
[16]
X. Li, D. G. Andersen, M. Kaminsky, and M. J. Freedman. Algorithmic improvements for fast concurrent cuckoo hashing. In Proceedings of the Ninth European Conference on Computer Systems, page 27. ACM, 2014.
[17]
N. Megiddo and D. S. Modha. Arc: A self-tuning, low overhead replacement cache. In FAST, volume 3, pages 115--130, 2003.
[18]
Z. Metreveli, N. Zeldovich, and M. F. Kaashoek. Cphash: A cache-partitioned hash table. In ACM SIGPLAN Notices, volume 47, pages 319--320. ACM, 2012.
[19]
R. Nishtala, H. Fugal, S. Grimm, M. Kwiatkowski, H. Lee, H. C. Li, R. McElroy, M. Paleczny, D. Peek, P. Saab, et al. Scaling memcache at facebook. In Presented as part of the 10th USENIX Symposium on Networked Systems Design and Implementation (NSDI 13), pages 385--398, 2013.
[20]
R. Pagh and F. F. Rodler. Cuckoo hashing. Journal of Algorithms, 51(2):122--144, 2004.
[21]
X. Wu, L. Zhang, Y. Wang, Y. Ren, M. Hack, and S. Jiang. zexpander: a key-value cache with both high performance and fewer misses. In Proceedings of the Eleventh European Conference on Computer Systems, page 14. ACM, 2016.
[22]
H. Zhang, G. Chen, B. C. Ooi, K.-L. Tan, and M. Zhang. In-memory big data management and processing: A survey. IEEE Transactions on Knowledge and Data Engineering, 27(7):1920--1948, 2015.

Cited By

View all
  • (2022)PHOcusProceedings of the VLDB Endowment10.14778/3554821.355486115:12(3630-3633)Online publication date: 1-Aug-2022
  • (2022)Coloring Embedder: Towards Multi-Set Membership Queries in Web Cache SharingIEEE Transactions on Knowledge and Data Engineering10.1109/TKDE.2021.306218234:12(5664-5680)Online publication date: 1-Dec-2022
  • (2022)MicroSplit: Efficient Splitting of Microservices on Edge Clouds2022 IEEE/ACM 7th Symposium on Edge Computing (SEC)10.1109/SEC54971.2022.00027(252-264)Online publication date: Dec-2022
  • Show More Cited By

Recommendations

Comments

Please enable JavaScript to view thecomments powered by Disqus.

Information & Contributors

Information

Published In

cover image ACM Other conferences
WWW '17 Companion: Proceedings of the 26th International Conference on World Wide Web Companion
April 2017
1738 pages
ISBN:9781450349147

Sponsors

  • IW3C2: International World Wide Web Conference Committee

In-Cooperation

Publisher

International World Wide Web Conferences Steering Committee

Republic and Canton of Geneva, Switzerland

Publication History

Published: 03 April 2017

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. cache replacement policy
  2. contention
  3. distributed caching
  4. memcached

Qualifiers

  • Tutorial

Funding Sources

  • Huawei Research gift
  • Oracle Research gift

Conference

WWW '17
Sponsor:
  • IW3C2

Acceptance Rates

WWW '17 Companion Paper Acceptance Rate 164 of 966 submissions, 17%;
Overall Acceptance Rate 1,899 of 8,196 submissions, 23%

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)28
  • Downloads (Last 6 weeks)6
Reflects downloads up to 18 Nov 2024

Other Metrics

Citations

Cited By

View all
  • (2022)PHOcusProceedings of the VLDB Endowment10.14778/3554821.355486115:12(3630-3633)Online publication date: 1-Aug-2022
  • (2022)Coloring Embedder: Towards Multi-Set Membership Queries in Web Cache SharingIEEE Transactions on Knowledge and Data Engineering10.1109/TKDE.2021.306218234:12(5664-5680)Online publication date: 1-Dec-2022
  • (2022)MicroSplit: Efficient Splitting of Microservices on Edge Clouds2022 IEEE/ACM 7th Symposium on Edge Computing (SEC)10.1109/SEC54971.2022.00027(252-264)Online publication date: Dec-2022
  • (2020)Big Data SystemsACM Computing Surveys10.1145/340831453:5(1-39)Online publication date: 28-Sep-2020
  • (2019)Magic Cube Bloom Filter: Answering Membership Queries for Multiple Sets2019 IEEE International Conference on Big Data and Smart Computing (BigComp)10.1109/BIGCOMP.2019.8679119(1-8)Online publication date: Feb-2019

View Options

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media