Skip to main content
Log in

PRESC \(^{2}\): efficient self-reconfiguration of cache strategies for elastic caching platforms

  • Published:
Computing Aims and scope Submit manuscript

Abstract

Elastic caching platforms (ECPs) play an important role in accelerating the performance of Web applications. Several cache strategies have been proposed for ECPs to manage data access and distributions while maintaining the service availability. In our earlier research, we have demonstrated that there is no “one-fits-all” strategy for heterogeneous scenarios and the selection of the optimal strategy is related with workload patterns, cluster size and the number of concurrent users. In this paper, we present a new reconfiguration framework named PRESC \(^{2}\). It applies machine learning approaches to determine an optimal cache strategy and supports online optimization of performance model through trace-driven simulation or semi-supervised classification. Besides, the authors also propose a robust cache entries synchronization algorithm and a new optimization mechanism to further lower the adaptation costs. In our experiments, we find that PRESC \(^{2}\) improves the elasticity of ECPs and brings big performance gains when compared with static configurations.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7
Fig. 8
Fig. 9
Fig. 10
Fig. 11
Fig. 12
Fig. 13
Fig. 14
Fig. 15
Fig. 16
Fig. 17
Fig. 18
Fig. 19
Fig. 20
Fig. 21
Fig. 22
Fig. 23

Similar content being viewed by others

References

  1. Hastorun D, Jampani M, Kakulapati G, Pilchin A, Sivasubramanian S, Vosshall P, Vogels W (2007) Dynamo: Amazon’s highly available key-value store. In: Proceedings of ACM Symposium on Operating Systems Principles (SOSP ’07), pp 05–220

  2. The forrester wave™: elastic caching platforms ftp://ftp.software.ibm.com/software/solutions/soa/pdfs/wave_elastic_caching_platforms_q2_2010.pdf

  3. Garrod C, Manjhi A, Ailamaki A, Maggs B, Mowry T, Olston C, Tomasic A (2008) Scalable query result caching for web applications. In: Proceedings of the 34th international conference on very large data bases (VLDB ’08), pp 550–561

  4. Nori AK (2010) Distributed caching platforms. In: Proceedings of the 36th international conference on very large data bases (VLDB ’10), pp 1645–1646

  5. Amazon elastiCache. http://aws.amazon.com/elasticache/

  6. Qin X, Zhang W, Wang W, Wei J, Zhong H, Huang T (2011) Online cache strategy reconfiguration for elastic caching platform: a machine learning approach. In: Proceeding of 35th annual IEEE international computer software and applications conference (COMPSAC ’11), pp 523–534

  7. Qin X, Zhang W, Wang W, Wei J, Zhong H, Huang T (2011) A comparative evaluation of cache strategies for elastic caching platforms. In: Proceeding of 11th international conference on quality software (QSIC ’11), pp 166–175

  8. TPC-W. http://www.tpc.org/tpcw/default.asp

  9. Amza C, Cox AL, Zwaenepoel W (2005) A comparative evaluation of transparent scaling techniques for dynamic content servers. In: Proceedings of the 21st international conference on data engineering (ICDE ’05), pp 230–241

  10. Zhang W, Wang S, Wang W, Zhong H (2011) Bench4Q: A QoS-Oriented E-commerce benchmark. In: Proceedings of 35th annual IEEE international computer software and applications conference (COMPSAC ’11), pp 38–47

  11. Salehie M, Tahvildari L (2009) Self-adaptive software: landscape and research challenges. ACM Trans Autono Adapt Syst 4(2)

  12. Tesauro G (2007) Reinforcement learning in autonomic computing: a manifesto and case studies. IEEE Internet Comput 22–30

  13. IBM white paper (2006) An architectural blueprint for autonomic, computing.

  14. Cheng BHC, de Lemos R, Giese H, Inverardi P, Magee J (2009) Software engineering for self-adaptive systems: a research road map.In: Software engineering for self-adaptive systems, Springer, pp 1–26

  15. Menascé DA, Almeida VAF, Fonseca R, Mendes MA (1999) A Methodology for Workload Characterization of E-commerce Sites. In: Proceedings of the 1999 ACM conference on electronic commerce (E-COMMERCE ’ 99), Denver CO

  16. Selvakuberan K, Indradevi M, Rajaram R (2008) Combined feature selection and classification-a novel approach for the categorization of web pages. J Inform Comput Sci 3(2):83–89

    Google Scholar 

  17. Hall MA, Holmes G (2003) Benchmarking attribute selection techniques for discrete class data mining. IEEE Trans Knowl Data Eng 15(6):1437–1447

    Article  Google Scholar 

  18. Kira K, Rendell L (1992) A practical approach to feature selection. In: Proceedings of the ninth international workshop on, Machine learning, pp 249–256

  19. Kononenko I (1994) Estimating attributes: analysis and extensions of relief. In: Proceedings of seventh European conference on machine learning (ECML ‘94), pp 171–182

  20. Guyon I, Elisseeff A (2003) An introduction to variable and feature selection. J Mach Learn Res 3:1157–1182

    MATH  Google Scholar 

  21. Hall MA (1999) Correlation-based feature selection for machine learning. PhD thesis, Department of Computer Science, University of Waikato, Hamilton, New Zealand

  22. Liu H, Setiono R (1996) A probabilistic approach to feature selection—a filter solution. In: 13th international conference on machine learning ( ICML ’96), pp 319–327

  23. Cohen WW (1995) Fast effective rule induction. In: Proceedings of the 12th international conference on machine learning (ICML ’95), pp 115–123

  24. Hühn JC, Hüllermeier E (2009) FR3: a fuzzy rule learner for inducing reliable classifiers. IEEE Trans Fuzzy Syst 17(1):138–149

    Article  Google Scholar 

  25. WEKA. http://www.cs.waikato.ac.nz/ml/weka

  26. Totok A, Karamcheti V (2006) Improving performance of internet services through reward-driven request prioritization. In: Proceedings of 14th IEEE international workshop on quality of service (IWQoS ’06), pp 60–71

  27. Zhu X Semi-supervised learning literature survey. University of Wisconsin-Madison, technical report. http://pages.cs.wisc.edu/~jerryzhu/pub/ssl_survey.pdf

  28. Hahn S, Ostendorf M (2008) A comparison of discriminative EM-based semi-supervised learning algorithms on agreement/disagreement classification. In: Proceedings of NIPS workshop on speech and language Learning-based methods and systems

  29. Blum A, Mitchell T (1998) Combining labeled and unlabeled data with co-training. In: Proceedings of the eleventh annual conference on computational learning theory, pp 92–100

  30. Draper NR, Smith H (1998) Applied regression analysis, 3rd edn. John Wiley and Sons, New York

    MATH  Google Scholar 

  31. Johnson RA, Wichern DW (2007) Applied multivariate statistical analysis, 6th edn. Pearson Prentice-Hall Inc. Upper Saddle River, NJ

    MATH  Google Scholar 

  32. Nginx http://nginx.org/

  33. Deolasee P, Katkar A, Panchbudhe A, Ramamritham K, Shenoy P (2001) Adaptive push-pull: disseminating dynamic web data. In: Proceedings of international world wide web conference (WWW ’01), pp 265–274

  34. Bhide M, Deolasee P, Katkar A, Panchbudhe A, Ramamritham K, Shenoy P (2002) Adaptive push-pull: disseminating dynamic web data. IEEE Trans Comp 652–668

  35. Couceiro M, Romano P, Rodrigues L (2011) PolyCert: polymorphic self-optimizing replication for in-memory transactional grids. In: Proceedings of ACM/IFIP/USENIX 12th international middleware conference (Middleware ’11), pp. 309–328

  36. Ari I, Amer A, Gramarcy R, Miller E, Brandt S, Long D (2002) ACME: adaptive caching using multiple experts. In Proceedings of the workshop on distributed data and structures (WDAS ’02)

  37. Pierre G, Kuz L, Steen M, Tanenbaum AS (2001) Differentiated strategies for replicating web documents. Comput Commun, pp 232–240

  38. Pierre G, van Steen M, Tanenbaum AS (2002) Dynamically selecting optimal distribution strategies for Web documents. IEEE Trans Compu, pp 637–651

  39. Pierre G, Makpangou M (1998) Saperlipopette!: a distributed Web caching systems evaluation tool. In: Proceedings of ACM/IFIP/USENIX 1st international middleware conference, pp 389–405

  40. Sivasubramanian S, Pierre G, van Steen M (2003) A case for dynamic selection of replication and caching strategies. In: Proceedings of the 8th workshop on web caching and content, distribution, pp 275–282

  41. Subramanian R, Smaragdakis Y, Loh GH (2006) Adaptive caches: effective shaping of cache behavior to workloads. In: Proceedings of the 39th annual IEEE/ACM international symposium on microarchitecture (MICRO ’06), pp. 385–396

  42. Kohli P, Chirkova R (2005) Cache invalidation and propagation in distributed caching. Tech Rep

  43. Kohli P, Chirkova R (2005) Cache invalidation and update propagation in distributed caching. In: Proceedings of international advanced database conference (IADC ’05)

  44. Megiddo N, Modha DS (2003) Arc: a self-tuning, low overhead replacement cache. In: Proceedings of the 2nd USENIX conference on file and storage technologies (FAST ’03). Berkeley, CA, USENIX Association, pp 115–130

  45. Rosa L, Rodrigues L, Lopes A (2011) Goal-oriented self-management of In-memory distributed data grid platforms. In: Proceedings of the 3rd IEEE international conference on cloud computing technology and science ( CloudCom ’11). Greece, Athens, pp. 587–591

  46. Pohl C (2005) Adaptive caching of distributed components. PhD Thesis, TU Dresden, Dresden, Germany

  47. Zhang L, Michel S, Nguyen K, Rosenstein A, Floyd S, Jacobson V (1998) Adaptive web caching: towards a new global caching architecture. Comput Netw ISDN Syst 30(22–23):2169–2177

    Google Scholar 

  48. Romano P, Rodrigues L, Carvalho N, Cachopo J (2010) Cloud-TM: Harnessing the cloud with distributed transactional memories. ACM SIGOPS Operat Syst Rev 44(2):1–6

    Article  Google Scholar 

Download references

Acknowledgments

This work was supported by the National High-Tech Research and Development Plan of China under Grant No. 2012AA011204, the National Natural Science Foundation of China under Grant No. 61173003, 61100068. We also thank Xiang Huang, Xin Zhu, Huanyun Zhou, Rong Luo, Xiaowei Zhou and Zhiquan Duan for their contributions and ideas. Finally, we will express our gratitude to the members from In-Memory Data Grid group who have spend much efforts in doing extensive experiments during the revision process.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Xiulei Qin.

Rights and permissions

Reprints and permissions

About this article

Cite this article

Qin, X., Wang, W., Zhang, W. et al. PRESC \(^{2}\): efficient self-reconfiguration of cache strategies for elastic caching platforms. Computing 96, 415–451 (2014). https://doi.org/10.1007/s00607-013-0365-6

Download citation

  • Received:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s00607-013-0365-6

Keywords

Mathematics Subject Classification

Navigation