skip to main content
survey
Open Access

A Survey and Taxonomy of Self-Aware and Self-Adaptive Cloud Autoscaling Systems

Authors Info & Claims
Published:12 June 2018Publication History
Skip Abstract Section

Abstract

Autoscaling system can reconfigure cloud-based services and applications, through various configurations of cloud software and provisions of hardware resources, to adapt to the changing environment at runtime. Such a behavior offers the foundation for achieving elasticity in a modern cloud computing paradigm. Given the dynamic and uncertain nature of the shared cloud infrastructure, the cloud autoscaling system has been engineered as one of the most complex, sophisticated, and intelligent artifacts created by humans, aiming to achieve self-aware, self-adaptive, and dependable runtime scaling. Yet the existing Self-aware and Self-adaptive Cloud Autoscaling System (SSCAS) is not at a state where it can be reliably exploited in the cloud. In this article, we survey the state-of-the-art research studies on SSCAS and provide a comprehensive taxonomy for this field. We present detailed analysis of the results and provide insights on open challenges, as well as the promising directions that are worth investigated in the future work of this area of research. Our survey and taxonomy contribute to the fundamentals of engineering more intelligent autoscaling systems in the cloud.

References

  1. Amazon. Amazon Elastic Compute Cloud. Retrieved March 24, 2018 from http://aws.amazon.com/ec2.Google ScholarGoogle Scholar
  2. Apache. Apache JMeter. Retrieved March 24, 2018 from http://jmeter.apache.org/.Google ScholarGoogle Scholar
  3. Lawrence Berkeley National Laboratory. ClarkNet HTTP Trace. Retrieved March 24, 2018 from http://ita.ee.lbl.gov/html/contrib/ClarkNet-HTTP.html.Google ScholarGoogle Scholar
  4. Docker. Docker: The Cloud Container. Retrieved March 24, 2018 from https://www.docker.com/.Google ScholarGoogle Scholar
  5. Eucalyptus Systems. Eucalyptus Cloud. Retrieved March 24, 2018 from http://www.eucalyptus.com/.Google ScholarGoogle Scholar
  6. Google. Google Compute Engine. Retrieved March 24, 2018 from http://cloud.google.com/products/compute-engine.html/.Google ScholarGoogle Scholar
  7. Red Hat. Kernel Based Virtual Machine. Retrieved March 24, 2018 from http://www.linux-kvm.org/.Google ScholarGoogle Scholar
  8. Microsoft. Microsoft Windows Azure. Retrieved March 24, 2018 from https://www.windowsazure.com/en-us/.Google ScholarGoogle Scholar
  9. RackSpace. OpenStack Framework. Retrieved March 24, 2018 from https://www.openstack.org/.Google ScholarGoogle Scholar
  10. RackSpace. RackSpace Cloud. Retrieved March 24, 2018 from https://www.rackspace.com/.Google ScholarGoogle Scholar
  11. Rice University. Rice University Bidding Systems. Retrieved March 24, 2018 from http://rubis.ow2.org/.Google ScholarGoogle Scholar
  12. Rice University. RUBBoS: Bulletin Board Benchmark. Retrieved March 24, 2018 from http://jmob.ow2.org/rubbos.html/.Google ScholarGoogle Scholar
  13. TPC. TPC-W. Retrieved March 24, 2018 from http://www.tpc.org/tpcw/default.asp.Google ScholarGoogle Scholar
  14. RightScale. Understanding the Voting Process. Retrieved March 24, 2018 from https://support.rightscale.com/12-Guides/RightScale_101/System_Architecture/RightScale_Alert_System/Alerts_based_on_Voting_Tags/Understanding_the_Voting_Process/.Google ScholarGoogle Scholar
  15. VMware. VMware vSphere ESX and ESXi. Retrieved March 24, 2018 from https://www.vmware.com/products/esxi-and-esx.html.Google ScholarGoogle Scholar
  16. Guillaume Pierre. WikiBench: A Web hosting benchmark. Retrieved March 24, 2018 from http://www.wikibench.eu.Google ScholarGoogle Scholar
  17. Guillaume Pierre. Wikipedia access traces. Retrieved March 24, 2018 from http://www.wikibench.eu/?pageid=60.Google ScholarGoogle Scholar
  18. Lawrence Berkeley National Laboratory. World Cup 98 Trace. Retrieved March 24, 2018 from http://ita.ee.lbl.gov/html/contrib/WorldCup.html.Google ScholarGoogle Scholar
  19. Linux Foundation. Xen: a virtual machine monitor. Retrieved March 24, 2018 from http://xen.xensource.com/.Google ScholarGoogle Scholar
  20. Omar Abdul-Rahman, Masaharu Munetomo, and Kiyoshi Akama. 2012. Toward a genetic algorithm based flexible approach for the management of virtualized application environments in cloud platforms. In Proceedings of the 2012 21st International Conference on Computer Communications and Networks (ICCCN’12). 1--9.Google ScholarGoogle ScholarCross RefCross Ref
  21. Bernardetta Addis, Danilo Ardagna, Barbara Panicucci, and Li Zhang. 2010. Autonomic management of cloud service centers with availability guarantees. In 2010 IEEE 3rd International Conference on Cloud Computing. 220--227. Google ScholarGoogle ScholarDigital LibraryDigital Library
  22. Yahya Al-Dhuraibi, Fawaz Paraiso, Nabil Djarallah, and Philippe Merle. 2018. Elasticity in cloud computing: State of the art and research challenges. IEEE Transactions on Services Computing 11, 2 (2018), 430--447.Google ScholarGoogle ScholarCross RefCross Ref
  23. Fahd Al-Haidari, M. Sqalli, and Khaled Salah. 2013. Impact of cpu utilization thresholds and scaling size on autoscaling cloud resources. In IEEE 5th International Conference on Cloud Computing Technology and Science. 256--261. Google ScholarGoogle ScholarDigital LibraryDigital Library
  24. Luca Albano, Cosimo Anglano, Massimo Canonico, and Marco Guazzone. 2013. Fuzzy-Q&E: Achieving QoS guarantees and energy savings for cloud applications with fuzzy control. In 2013 Third International Conference on Cloud and Green Computing (CGC). 159--166. Google ScholarGoogle ScholarDigital LibraryDigital Library
  25. Fabio Jorge Almeida Morais, Francisco Vilar Brasileiro, Raquel Vigolvino Lopes, Ricardo Araújo Santos, Wade Satterfield, and Leandro Rosa. 2013. Autoflex: Service agnostic auto-scaling framework for iaas deployment models. In 2013 13th IEEE/ACM International Symposium on Cluster, Cloud and Grid Computing (CCGrid). 42--49.Google ScholarGoogle ScholarDigital LibraryDigital Library
  26. Cosimo Anglano, Massimo Canonico, and Marco Guazzone. 2015. FC2Q: Exploiting fuzzy control in server consolidation for cloud applications with SLA constraints. Concurr. Comput.: Pract. Exper. 27, 17 (2015), 4491--4514. Google ScholarGoogle ScholarDigital LibraryDigital Library
  27. Danilo Ardagna, Giuliano Casale, Michele Ciavotta, Juan F. Pérez, and Weikun Wang. 2014. Quality-of-service in cloud computing: Modeling techniques and their applications. J. Internet Serv. Appl. 5, 1 (2014), 11.Google ScholarGoogle ScholarCross RefCross Ref
  28. Adnan Ashraf, Benjamin Byholm, Joonas Lehtinen, and Ivan Porres. 2012. Feedback control algorithms to deploy and scale multiple web applications per virtual machine. In 2012 38th Euromicro Conference on Software Engineering and Advanced Applications (SEAA). 431--438. Google ScholarGoogle ScholarDigital LibraryDigital Library
  29. Adnan Ashraf, Benjamin Byholm, and Ivan Porres. 2012. CRAMP: Cost-efficient resource allocation for multiple web applications with proactive scaling. In 2012 IEEE 4th International Conference on Cloud Computing Technology and Science. 581--586. Google ScholarGoogle ScholarDigital LibraryDigital Library
  30. Adnan Ashraf and Ivan Porres. 2014. Using ant colony system to consolidate multiple web applications in a cloud environment. In 2014 22nd Euromicro International Conference on Parallel, Distributed and Network-Based Processing (PDP). 482--489. Google ScholarGoogle ScholarDigital LibraryDigital Library
  31. Mohammad Sadegh Aslanpour, Mostafa Ghobaei-Arani, and Adel Nadjaran Toosi. 2017. Auto-scaling web applications in clouds: A cost-aware approach. J. Netw. Comput. Appl. 95 (2017), 26--41. Google ScholarGoogle ScholarDigital LibraryDigital Library
  32. Uchechukwu Awada and Adam Barker. 2017. Improving resource efficiency of container-instance clusters on clouds. In IEEE 17th IEEE/ACM International Symposium on Cluster, Cloud and Grid Computing. IEEE Press, 929--934. Google ScholarGoogle ScholarDigital LibraryDigital Library
  33. Luciano Baresi, Sam Guinea, Alberto Leva, and Giovanni Quattrocchi. 2016. A discrete-time feedback controller for containerized cloud applications. In 24th ACM SIGSOFT International Symposium on Foundations of Software Engineering. ACM, 217--228. Google ScholarGoogle ScholarDigital LibraryDigital Library
  34. Tobias Becker, Andreas Agne, Peter R. Lewis, Rami Bahsoon, Funmilade Faniyi, Lukas Esterle, Ariane Keller, Arjun Chandra, Alexander R. Jensenius, and Stephan C. Stilkerich. 2012. EPiCS: Engineering proprioception in computing systems. In 2012 IEEE 15th International Conference on Computational Science and Engineering (CSE). 353--360. Google ScholarGoogle ScholarDigital LibraryDigital Library
  35. Jing Bi, Zhiliang Zhu, Ruixiong Tian, and Qingbo Wang. 2010. Dynamic provisioning modeling for virtualized multi-tier applications in cloud data center. In 2010 IEEE 3rd International Conference on Cloud Computing (CLOUD). 370--377. Google ScholarGoogle ScholarDigital LibraryDigital Library
  36. Peter Bodík, Rean Griffith, Charles Sutton, Armando Fox, Michael Jordan, and David Patterson. 2009. Statistical machine learning makes automatic control practical for internet datacenters. In 2009 Conference on Hot Topics in Cloud Computing. USENIX Association, Berkeley, CA, Article 12. http://dl.acm.org/citation.cfm?id=1855533.1855545 Google ScholarGoogle ScholarDigital LibraryDigital Library
  37. Ivona Brandic, Vincent C. Emeakaroha, Michael Maurer, Schahram Dustdar, Sandor Acs, Attila Kertesz, and Gabor Kecskemeti. 2010. LAYSI: A layered approach for SLA-violation propagation in self-manageable cloud infrastructures. In IEEE 34th Annual Computer Software and Applications Conference Workshops. 365--370. Google ScholarGoogle ScholarDigital LibraryDigital Library
  38. Yuriy Brun, Giovanna Marzo Serugendo, Cristina Gacek, Holger Giese, Holger Kienle, Marin Litoiu, Hausi Müller, Mauro Pezzè, and Mary Shaw. 2009. Engineering self-adaptive systems through feedback loops. In Software Engineering for Self-Adaptive Systems. Springer-Verlag, Berlin. 48--70. Google ScholarGoogle ScholarDigital LibraryDigital Library
  39. Xiangping Bu, Jia Rao, and Cheng zhong Xu. 2013. Coordinated self-configuration of virtual machines and appliances using a model-free learning approach. IEEE Transactions on Parallel and Distributed Systems 24, 4 (April 2013), 681--690. Google ScholarGoogle ScholarDigital LibraryDigital Library
  40. Rodrigo N. Calheiros, Rajiv Ranjan, Anton Beloglazov, Csar A. F. De Rose, and Rajkumar Buyya. 2011. CloudSim: A toolkit for modeling and simulation of cloud computing environments and evaluation of resource provisioning algorithms. Softw. Pract. Exper. 41, 1 (Jan. 2011), 23--50. Google ScholarGoogle ScholarDigital LibraryDigital Library
  41. Radu Calinescu, Lars Grunske, Marta Kwiatkowska, Raffaela Mirandola, and Giordano Tamburrelli. 2011. Dynamic QoS management and optimization in service-based systems. IEEE Transactions on Software Engineering 37, 3 (May 2011), 387--409. Google ScholarGoogle ScholarDigital LibraryDigital Library
  42. Eddy Caron, Frederic Desprez, and Adrian Muresan. 2010. Forecasting for grid and cloud computing on-demand resources based on pattern matching. In 2010 IEEE Second International Conference on Cloud Computing Technology and Science (CloudCom). 456--463. Google ScholarGoogle ScholarDigital LibraryDigital Library
  43. Antonin Chazalet, Frédéric Dang Tran, Marina Deslaugiers, Alexandre Lefebvre, François Exertier, and Julien Legrand. 2011. Adding self-scaling capability to the cloud to meet service level agreements. International Journal on Advances in Intelligent Systems, 4, 3 (2011).Google ScholarGoogle Scholar
  44. Tao Chen and Rami Bahsoon. 2011. Scalable service oriented replication in the cloud. In 2011 IEEE International Conference on Cloud Computing (CLOUD). 766--767. Google ScholarGoogle ScholarDigital LibraryDigital Library
  45. Tao Chen and Rami Bahsoon. 2013. Self-adaptive and sensitivity-aware QoS modeling for the cloud. In 8th International Symposium on Software Engineering for Adaptive and Self-Managing Systems. 43--52. http://dl.acm.org/citation.cfm?id=2663546.2663556 Google ScholarGoogle ScholarDigital LibraryDigital Library
  46. Tao Chen and Rami Bahsoon. 2014. Symbiotic and sensitivity-aware architecture for globally-optimal benefit in self-adaptive cloud. In 9th International Symposium on Software Engineering for Adaptive and Self-Managing Systems. 85--94. Google ScholarGoogle ScholarDigital LibraryDigital Library
  47. Tao Chen and Rami Bahsoon. 2015. Towards A smarter cloud: Self-aware autoscaling of cloud configurations and resources. IEEE Comput. 48, 9 (Sept 2015), 93--96.Google ScholarGoogle ScholarDigital LibraryDigital Library
  48. Tao Chen and Rami Bahsoon. 2017. Self-adaptive and online qos modeling for cloud-based software services. IEEE Transactions on Software Engineering 43, 5 (2017), 453--475. Google ScholarGoogle ScholarDigital LibraryDigital Library
  49. Tao Chen and Rami Bahsoon. 2017. Self-adaptive tradeoff decision making for autoscaling cloud-based services. IEEE Transactions on Services Computing 10, 4 (2017), 618--632.Google ScholarGoogle ScholarCross RefCross Ref
  50. Tao Chen, Rami Bahsoon, and Georgios Theodoropoulos. 2013. Dynamic QoS optimization architecture for cloud-based DDDAS. Procedia Computer Science 18 (2013), 1881--1890. 2013 International Conference on Computational Science.Google ScholarGoogle ScholarCross RefCross Ref
  51. Tao Chen, Rami Bahsoon, Shuo Wang, and Xin Yao. 2018. To adapt or not to adapt? technical debt and learning driven self-adaptation for managing runtime performance. In ACM/SPEC International Conference on Performance Engineering. Google ScholarGoogle ScholarDigital LibraryDigital Library
  52. Tao Chen, Rami Bahsoon, and Xin Yao. 2014. Online QoS modeling in the cloud: A hybrid and adaptive multi-learners approach. In 2014 IEEE/ACM 7th International Conference on Utility and Cloud Computing. 327--336. Google ScholarGoogle ScholarDigital LibraryDigital Library
  53. Tao Chen, Funmilade Faniyi, and Rami Bahsoon. 2016. Design Patterns and Primitives: Introduction of Components and Patterns for SACS. Springer International Publishing, Cham, 53--78.Google ScholarGoogle Scholar
  54. Tao Chen, Funmilade Faniyi, Rami Bahsoon, Peter R. Lewis, Xin Yao, Leandro L. Minku, and Lukas Esterle. 2014. The handbook of engineering self-aware and self-expressive systems. Arxiv Preprint Arxiv:1409.1793 (2014).Google ScholarGoogle Scholar
  55. Tao Chen, Ke Li, Rami Bahsoon, and Xin Yao. 2018. FEMOSAA: Feature guided and knee driven multi-objective optimization for self-adaptive software. (submitted).Google ScholarGoogle ScholarDigital LibraryDigital Library
  56. Betty H. C. Cheng, Rogério de Lemos, Holger Giese, Paola Inverardi, Jeff Magee, Jesper Andersson, Basil Becker, Nelly Bencomo, Yuriy Brun, Bojan Cukic, Giovanna Di Marzo Serugendo, Schahram Dustdar, Anthony Finkelstein, Cristina Gacek, Kurt Geihs, Vincenzo Grassi, Gabor Karsai, Holger M. Kienle, Jeff Kramer, Marin Litoiu, Sam Malek, Raffaela Mirandola, Hausi A. Müller, Sooyong Park, Mary Shaw, Matthias Tichy, Massimo Tivoli, Danny Weyns, and Jon Whittle. 2009. Software engineering for self-adaptive systems: A research roadmap. In Software Engineering for Self-Adaptive Systems, Betty H. C. Cheng, Rogério de Lemos, Holger Giese, Paola Inverardi, and Jeff Magee (Eds.). Lecture Notes in Computer Science, Vol. 5525. Springer Berlin Heidelberg, 1--26. Google ScholarGoogle ScholarDigital LibraryDigital Library
  57. Ruiqing Chi, Zhuzhong Qian, and Sanglu Lu. 2012. A game theoretical method for auto-scaling of multi-tiers web applications in cloud. In Fourth Asia-Pacific Symposium on Internetware. Article 3, 10 pages. Google ScholarGoogle ScholarDigital LibraryDigital Library
  58. Ron C. Chiang and H. Howie Huang. 2011. TRACON: Interference-aware scheduling for data-intensive applications in virtualized environments. In 2011 International Conference for High Performance Computing, Networking, Storage and Analysis. 1--12. Google ScholarGoogle ScholarDigital LibraryDigital Library
  59. Ron C. Chiang, Jinho Hwang, H. Howie Huang, and Timothy Wood. 2014. Matrix: Achieving predictable virtual machine performance in the clouds. In 11th International Conference on Autonomic Computing.Google ScholarGoogle Scholar
  60. Hanen Chihi, Walid Chainbi, and Khaled Ghedira. 2013. An energy-efficient self-provisioning approach for cloud resources management. SIGOPS Oper. Syst. Rev. 47, 3 (Nov. 2013), 2--9. Google ScholarGoogle ScholarDigital LibraryDigital Library
  61. Xabriel J. Collazo-Mojica, S. M. Sadjadi, Jorge Ejarque, and Rosa M. Badia. 2012. Cloud application resource mapping and scaling based on monitoring of QoS constraints. In The 24th International Conference on Software Engineering and Knowledge Engineering (SEKE’12) (Jul 2012), 88--93.Google ScholarGoogle Scholar
  62. Georgiana Copil, Daniel Moldovan, Hong-Linh Truong, and Schahram Dustdar. 2013. Multi-level elasticity control of cloud services. In Service-Oriented Computing, Samik Basu, Cesare Pautasso, Liang Zhang, and Xiang Fu (Eds.). Lecture Notes in Computer Science, Vol. 8274. Springer Berlin Heidelberg, 429--436. Google ScholarGoogle ScholarDigital LibraryDigital Library
  63. Rodrigo da Rosa Righi, Vinicius Facco Rodrigues, Cristiano André da Costa, Guilherme Galante, Luis Carlos Erpen De Bona, and Tiago Ferreto. 2016. Autoelastic: Automatic resource elasticity for high performance applications in the cloud. IEEE Transactions on Cloud Computing 4, 1 (2016), 6--19. Google ScholarGoogle ScholarDigital LibraryDigital Library
  64. Donia El Kateb, François Fouquet, Grégory Nain, Jorge Augusto Meira, Michel Ackerman, and Yves Le Traon. 2014. Generic cloud platform multi-objective optimization leveraging [email protected]. In 29th Annual ACM Symposium on Applied Computing. 343--350. Google ScholarGoogle ScholarDigital LibraryDigital Library
  65. Vincent C. Emeakaroha, Ivona Brandic, Michael Maurer, and Ivan Breskovic. 2011. SLA-aware application deployment and resource allocation in clouds. In IEEE 35th Annual Computer Software and Applications Conference. 298--303. Google ScholarGoogle ScholarDigital LibraryDigital Library
  66. Vincent C. Emeakaroha, Ivona Brandic, Michael Maurer, and Schahram Dustdar. 2010. Low level metrics to high level SLAs - LoM2HiS framework: Bridging the gap between monitored metrics and SLA parameters in cloud environments. In 2010 International Conference on High Performance Computing and Simulation (HPCS). 48--54.Google ScholarGoogle ScholarCross RefCross Ref
  67. Vincent C. Emeakaroha, Rodrigo N. Calheiros, Marco A. S. Netto, Ivona Brandic, and Cesar A. F. De Rose. 2010. DeSVi: An architecture for detecting SLA violations in cloud computing infrastructures. In 2nd International ICST Conference on Cloud Computing.Google ScholarGoogle Scholar
  68. Soodeh Farokhi, Pooyan Jamshidi, Ewnetu Bayuh Lakew, Ivona Brandic, and Erik Elmroth. 2016. A hybrid cloud controller for vertical memory elasticity: A control-theoretic approach. Future Generation Computer Systems 65 (2016), 57--72. Google ScholarGoogle ScholarDigital LibraryDigital Library
  69. Hector Fernandez, Guillaume Pierre, and Thilo Kielmann. 2014. Autoscaling web applications in heterogeneous cloud infrastructures. In 2014 IEEE International Conference on Cloud Engineering (IC2E). 195--204. Google ScholarGoogle ScholarDigital LibraryDigital Library
  70. Stefano Ferretti, Vittorio Ghini, Fabio Panzieri, Michele Pellegrini, and Elisa Turrini. 2010. QoS-aware clouds. In 2010 IEEE 3rd International Conference on Cloud Computing (CLOUD). 321--328. Google ScholarGoogle ScholarDigital LibraryDigital Library
  71. Florian Fittkau, Sören Frey, and Wilhelm Hasselbring. 2012. CDOSim: Simulating cloud deployment options for software migration support. In 2012 IEEE 6th International Workshop on the Maintenance and Evolution of Service-Oriented and Cloud-Based Systems (MESOCA). 37--46.Google ScholarGoogle ScholarCross RefCross Ref
  72. Sören Frey, Florian Fittkau, and Wilhelm Hasselbring. 2013. Search-based genetic optimization for deployment and reconfiguration of software in the cloud. In 2013 IEEE International Conference on Software Engineering. 512--521. http://dl.acm.org/citation.cfm?id=2486788.2486856 Google ScholarGoogle ScholarDigital LibraryDigital Library
  73. Guilherme Galante and LuisCarlosErpen Bona. 2013. Constructing elastic scientific applications using elasticity primitives. In Computational Science and Its Applications. Lecture Notes in Computer Science, Vol. 7975. 281--294.Google ScholarGoogle ScholarCross RefCross Ref
  74. Alessio Gambi, Giovanni Toffetti, Cesare Pautasso, and Mauro Pezze. 2013. Kriging controllers for cloud applications. IEEE Internet Comput. 17, 4 (July 2013), 40--47. Google ScholarGoogle ScholarDigital LibraryDigital Library
  75. Anshul Gandhi, Parijat Dube, Alexei Karve, Andrzej Kochut, and Li Zhang. 2014. Adaptive, model-driven autoscaling for cloud applications. In 11th International Conference on Autonomic Computing.Google ScholarGoogle Scholar
  76. Anshul Gandhi, Parijat Dube, Alexei Karve, Andrzej Kochut, and Li Zhang. 2017. Model-driven optimal resource scaling in cloud. Software 8 Systems Modeling (2017), 1--18. Google ScholarGoogle ScholarDigital LibraryDigital Library
  77. Hamoun Ghanbari, Cornel Barna, Marin Litoiu, Murray Woodside, Tao Zheng, Johnny Wong, and Gabriel Iszlai. 2011. Tracking adaptive performance models using dynamic clustering of user classes. SIGSOFT Softw. Eng. Notes 36, 5 (Sept. 2011), 179--188. Google ScholarGoogle ScholarDigital LibraryDigital Library
  78. Hamoun Ghanbari, Bradley Simmons, Marin Litoiu, and Gabriel Iszlai. 2011. Exploring alternative approaches to implement an elasticity policy. In 2011 IEEE International Conference on Cloud Computing (CLOUD). 716--723. Google ScholarGoogle ScholarDigital LibraryDigital Library
  79. Sukhpal Singh Gill, Inderveer Chana, Maninder Singh, and Rajkumar Buyya. 2017. CHOPPER: An intelligent QoS-aware autonomic resource management approach for cloud computing. Cluster Computing (2017), 1--39.Google ScholarGoogle Scholar
  80. Zhenhuan Gong, Xiaohui Gu, and J. Wilkes. 2010. PRESS: PRedictive elastic resource scaling for cloud systems. In 2010 International Conference on Network and Service Management (CNSM). 9--16.Google ScholarGoogle Scholar
  81. Hadi Goudarzi and Massoud Pedram. 2011. Multi-dimensional SLA-based resource allocation for multi-tier cloud computing systems. In 2011 IEEE International Conference on Cloud Computing (CLOUD). 324--331. Google ScholarGoogle ScholarDigital LibraryDigital Library
  82. Yanfei Guo, P. Lama, ChangJun Jiang, and Xiaobo Zhou. 2014. Automated and agile server parametertuning by coordinated learning and control. IEEE Transactions on Parallel and Distributed Systems 25, 4 (April 2014), 876--886. Google ScholarGoogle ScholarDigital LibraryDigital Library
  83. Rui Han, Li Guo, M. M. Ghanem, and Yike Guo. 2012. Lightweight resource scaling for cloud applications. In 2012 12th IEEE/ACM International Symposium on Cluster, Cloud and Grid Computing (CCGrid). 644--651. Google ScholarGoogle ScholarDigital LibraryDigital Library
  84. Stephen Herbein, Ayush Dusia, Aaron Landwehr, Sean McDaniel, Jose Monsalve, Yang Yang, Seetharami R. Seelam, and Michela Taufer. 2016. Resource management for running HPC applications in container clouds. In International Conference on High Performance Computing. Springer, 261--278.Google ScholarGoogle ScholarCross RefCross Ref
  85. Henry Hoffman. 2013. Seec: A Framework for Self-aware Management of Goals and Constraints in Computing Systems. Ph.D. Dissertation. Cambridge, MA, USA. Advisor(s) Agarwal, Anant and Devadas, Srinivas. Google ScholarGoogle ScholarDigital LibraryDigital Library
  86. Nikolaus Huber, Fabian Brosig, and Samuel Kounev. 2011. Model-based self-adaptive resource allocation in virtualized environments. In 6th International Symposium on Software Engineering for Adaptive and Self-Managing Systems. 90--99. Google ScholarGoogle ScholarDigital LibraryDigital Library
  87. IBM. 2003. An architectural blueprint for autonomic computing. IBM Technical Report (2003).Google ScholarGoogle Scholar
  88. Jing Jiang, Jie Lu, and Guangquan Zhang. 2011. An innovative self-adaptive configuration optimization system in cloud computing. In 2011 IEEE 9th International Conference on Dependable, Autonomic and Secure Computing. 621--627. Google ScholarGoogle ScholarDigital LibraryDigital Library
  89. Jing Jiang, Jie Lu, Guangquan Zhang, and Guodong Long. 2013. Optimal cloud resource auto-scaling for web applications. In 2013 13th IEEE/ACM International Symposium on Cluster, Cloud and Grid Computing (CCGrid). 58--65.Google ScholarGoogle ScholarDigital LibraryDigital Library
  90. Yexi Jiang, Chang-Shing Perng, Tao Li, and R. N. Chang. 2013. Cloud analytics for capacity planning and instant vm provisioning. IEEE Transactions on Network and Service Management 10, 3 (September 2013), 312--325.Google ScholarGoogle Scholar
  91. Farhana Kabir and David Chiu. 2012. Reconciling cost and performance objectives for elastic web caches. In 2012 International Conference on Cloud and Service Computing (CSC). 88--95. Google ScholarGoogle ScholarDigital LibraryDigital Library
  92. Evangelia Kalyvianaki, Themistoklis Charalambous, and Steven Hand. 2014. Adaptive resource provisioning for virtualized servers using kalman filters. ACM Trans. Auton. Adapt. Syst. 9, 2, Article 10 (July 2014), 35 pages. Google ScholarGoogle ScholarDigital LibraryDigital Library
  93. Gastón Keller, Michael Tighe, Hanan Lutfiyya, and Michael Bauer. 2013. DCSim: A data centre simulation tool. In 2013 IFIP/IEEE International Symposium on Integrated Network Management (IM 2013). 1090--1091.Google ScholarGoogle Scholar
  94. Seoyoung Kim, Jik-Soo Kim, Soonwook Hwang, and Yoonhee Kim. 2013. An allocation and provisioning model of science cloud for high throughput computing applications. In 2013 ACM Conference on Cloud and Autonomic Computing. Article 27, 8 pages. Google ScholarGoogle ScholarDigital LibraryDigital Library
  95. Younggyun Koh, R. Knauerhase, P. Brett, M. Bowman, Zhihua Wen, and C. Pu. 2007. An analysis of performance interference effects in virtual environments. In Performance Analysis of Systems Software, 2007. ISPASS 2007. IEEE International Symposium on. 200--209.Google ScholarGoogle Scholar
  96. George Kousiouris, Tommaso Cucinotta, and Theodora Varvarigou. 2011. The effects of scheduling, workload type and consolidation scenarios on virtual machine performance and their prediction through optimized artificial neural networks. J. Syst. Softw. 84, 8 (Aug. 2011), 1270--1291. Google ScholarGoogle ScholarDigital LibraryDigital Library
  97. George Kousiouris, Andreas Menychtas, Dimosthenis Kyriazis, Spyridon Gogouvitis, and Theodora Varvarigou. 2014. Dynamic, behavioral-based estimation of resource provisioning based on high-level application terms in Cloud platforms. Future Generation Computer Systems 32, 0 (2014), 27--40.Google ScholarGoogle ScholarDigital LibraryDigital Library
  98. Sajib Kundu, Raju Rangaswami, Ajay Gulati, Ming Zhao, and Kaushik Dutta. 2012. Modeling virtualized applications using machine learning techniques. In 8th ACM SIGPLAN/SIGOPS Conference on Virtual Execution Environments. 3--14. Google ScholarGoogle ScholarDigital LibraryDigital Library
  99. Ewnetu Bayuh Lakew, Alessandro Vittorio Papadopoulos, Martina Maggio, Cristian Klein, and Erik Elmroth. 2017. KPI-agnostic control for fine-grained vertical elasticity. In IEEE 17th IEEE/ACM International Symposium on Cluster, Cloud and Grid Computing. IEEE Press, 589--598. Google ScholarGoogle ScholarDigital LibraryDigital Library
  100. Palden Lama, Yanfei Guo, and Xiaobo Zhou. 2013. Autonomic performance and power control for co-located Web applications on virtualized servers. In 2013 IEEE/ACM 21st International Symposium on Quality of Service. 1--10.Google ScholarGoogle ScholarCross RefCross Ref
  101. Peter R. Lewis, Arjun Chandra, Shaun Parsons, Edward Robinson, Kyrre Glette, Rami Bahsoon, Jim Torresen, and Xin Yao. 2011. A survey of self-awareness and its application in computing systems. In 2011 Fifth IEEE Conference on Self-Adaptive and Self-Organizing Systems Workshops (SASOW). 102--107. Google ScholarGoogle ScholarDigital LibraryDigital Library
  102. Peter R. Lewis, Arjun Chandra, Funmilade Faniyi, Kyrre Glette, Tao Chen, Rami Bahsoon, Jim Torresen, and Xin Yao. 2015. Architectural aspects of self-aware and self-expressive computing systems: From psychology to engineering. Computer 48, 8 (Aug 2015), 62--70.Google ScholarGoogle ScholarDigital LibraryDigital Library
  103. Hui Li, Giuliano Casale, and Tariq Ellahi. 2010. SLA-driven planning and optimization of enterprise applications. In 1st Joint WOSP/SIPEW International Conference on Performance Engineering. 117--128. Google ScholarGoogle ScholarDigital LibraryDigital Library
  104. Jim Li, John Chinneck, Murray Woodside, Marin Litoiu, and Gabriel Iszlai. 2009. Performance model driven QoS guarantees and optimization in clouds. In ICSE Workshop on Software Engineering Challenges of Cloud Computing. 15--22. Google ScholarGoogle ScholarDigital LibraryDigital Library
  105. Jim Zw Li, Murray Woodside, John Chinneck, and Marin Litoiu. 2011. CloudOpt: Multi-goal optimization of application deployments across a cloud. In 2011 7th International Conference on Network and Service Management (CNSM). 1--9. Google ScholarGoogle ScholarDigital LibraryDigital Library
  106. Li Li, Tony Tang, and Wu Chou. 2015. A rest service framework for fine-grained resource management in container-based cloud. In 2015 IEEE 8th International Conference on Cloud Computing (CLOUD). IEEE, 645--652. Google ScholarGoogle ScholarDigital LibraryDigital Library
  107. Harold C. Lim, Shivnath Babu, Jeffrey S. Chase, and Sujay S. Parekh. 2009. Automated control in cloud computing: Challenges and opportunities. In 1st Workshop on Automated Control for Datacenters and Clouds. 13--18. Google ScholarGoogle ScholarDigital LibraryDigital Library
  108. Wes Lloyd, Shrideep Pallickara, Olaf David, Jim Lyon, Mazdak Arabi, and Ken Rojas. 2012. Performance modeling to support multi-tier application deployment to infrastructure-as-a-service clouds. In 2012 IEEE 5th International Conference on Utility and Cloud Computing (UCC). 73--80. Google ScholarGoogle ScholarDigital LibraryDigital Library
  109. Tania Lorido-Botran, Jose Miguel-Alonso, and Jose A. Lozano. 2014. A review of auto-scaling techniques for elastic applications in cloud environments. Journal of Grid Computing 12, 4 (2014), 559--592. Google ScholarGoogle ScholarDigital LibraryDigital Library
  110. Hongyi Ma, Liqiang Wang, Byung Chul Tak, Long Wang, and Chunqiang Tang. 2016. Auto-tuning performance of MPI parallel programs using resource management in container-based virtual cloud. In 2016 IEEE 9th International Conference on Cloud Computing (CLOUD). IEEE, 545--552.Google ScholarGoogle ScholarCross RefCross Ref
  111. Amiya K. Maji, Subrata Mitra, Bowen Zhou, Saurabh Bagchi, and Akshat Verma. 2014. Mitigating interference in cloud services by middleware reconfiguration. In 15th International Conference on Middleware. 277--288. Google ScholarGoogle ScholarDigital LibraryDigital Library
  112. Zoltán Ádám Mann. 2015. Allocation of virtual machines in cloud data centers?a survey of problem models and optimization algorithms. ACM Computing Surveys (CSUR) 48, 1 (2015), 11. Google ScholarGoogle ScholarDigital LibraryDigital Library
  113. Sunilkumar S. Manvi and Gopal Krishna Shyam. 2014. Resource management for infrastructure as a service (IaaS) in cloud computing: A survey. Journal of Network and Computer Applications 41 (2014), 424--440.Google ScholarGoogle ScholarCross RefCross Ref
  114. Michael Maurer, Ivona Brandic, Vincent C. Emeakaroha, and Schahram Dustdar. 2010. Towards knowledge management in self-adaptable clouds. In 2010 6th World Congress on Services (SERVICES-1). 527--534. Google ScholarGoogle ScholarDigital LibraryDigital Library
  115. Michael Maurer, Ivona Brandic, and Rizos Sakellariou. 2012. Self-adaptive and resource-efficient SLA enactment for cloud computing infrastructures. In 2012 IEEE 5th International Conference on Cloud Computing (CLOUD). 368--375. Google ScholarGoogle ScholarDigital LibraryDigital Library
  116. Aly Megahed, Mohamed Mohamed, and Samir Tata. 2017. A stochastic optimization approach for cloud elasticity. In 2017 IEEE 10th International Conference on Cloud Computing (CLOUD). IEEE, 456--463.Google ScholarGoogle ScholarCross RefCross Ref
  117. Rizwan Mian, Patrick Martin, Farhana Zulkernine, and Jose Luis Vazquez-Poletti. 2013. Towards building performance models for data-intensive workloads in public clouds. In 4th ACM/SPEC International Conference on Performance Engineering. 259--270. Google ScholarGoogle ScholarDigital LibraryDigital Library
  118. Dorian Minarolli and Bernd Freisleben. 2013. Virtual machine resource allocation in cloud computing via multi-agent fuzzy control. In 2013 Third International Conference on Cloud and Green Computing (CGC). 188--194. Google ScholarGoogle ScholarDigital LibraryDigital Library
  119. Dorian Minarolli and Bernd Freisleben. 2014. Distributed resource allocation to virtual machines via artificial neural networks. In 22nd Euromicro International Conference on Parallel, Distributed and Network-Based Processing. 490--499. Google ScholarGoogle ScholarDigital LibraryDigital Library
  120. Vladimir Nikolov, Steffen Kächele, Franz J. Hauck, and Dieter Rautenbach. 2014. CLOUDFARM: An elastic cloud platform with flexible and adaptive resource management. In 2014 IEEE/ACM 7th International Conference on Utility and Cloud Computing (UCC). 547--553. Google ScholarGoogle ScholarDigital LibraryDigital Library
  121. Pradeep Padala, Kai-Yuan Hou, Kang G. Shin, Xiaoyun Zhu, Mustafa Uysal, Zhikui Wang, Sharad Singhal, and Arif Merchant. 2009. Automated control of multiple virtualized resources. In 4th ACM European Conference on Computer Systems. 13--26. Google ScholarGoogle ScholarDigital LibraryDigital Library
  122. Chenhao Qu, Rodrigo N. Calheiros, and Rajkumar Buyya. 2017. Auto-scaling web applications in clouds: A taxonomy and survey. ACM Computing Surveys 9, 4 (2017), Article 39, 34 pages.Google ScholarGoogle Scholar
  123. Chenhao Qu, Rodrigo N. Calheiros, and Rajkumar Buyya. 2016. A reliable and cost-efficient auto-scaling system for web applications using heterogeneous spot instances. Journal of Network and Computer Applications 65 (2016), 167--180. Google ScholarGoogle ScholarDigital LibraryDigital Library
  124. Navaneeth Rameshan, Ying Liu, Leandro Navarro, and Vladimir Vlassov. 2016. Augmenting elasticity controllers for improved accuracy. In 2016 IEEE International Conference on Autonomic Computing (ICAC). IEEE, 117--126.Google ScholarGoogle ScholarCross RefCross Ref
  125. Jia Rao, Xiangping Bu, Cheng-Zhong Xu, and Kun Wang. 2011. A distributed self-learning approach for elastic provisioning of virtualized cloud resources. In 2011 IEEE 19th International Symposium on Modeling, Analysis Simulation of Computer and Telecommunication Systems (MASCOTS). 45--54. Google ScholarGoogle ScholarDigital LibraryDigital Library
  126. Jia Rao, Yudi Wei, Jiayu Gong, and Cheng-Zhong Xu. 2011. DynaQoS: Model-free self-tuning fuzzy control of virtualized resources for QoS provisioning. In 2011 IEEE 19th International Workshop on Quality of Service (IWQoS). 1--9. Google ScholarGoogle ScholarDigital LibraryDigital Library
  127. Nathuji Ripal, Kansal Aman, and Ghaffarkhah Alireza. 2010. Q-clouds: Managing performance interference effects for QoS-aware clouds. In 5th European Conference on Computer Systems. 237--250. Google ScholarGoogle ScholarDigital LibraryDigital Library
  128. Mazeiar Salehie and Ladan Tahvildari. 2009. Self-adaptive software: Landscape and research challenges. ACM Trans. Auton. Adapt. Syst. 4, 2, Article 14 (May 2009), 42 pages. Google ScholarGoogle ScholarDigital LibraryDigital Library
  129. Mina Sedaghat, Francisco Hernandez-Rodriguez, and Erik Elmroth. 2013. A virtual machine re-packing approach to the horizontal vs. vertical elasticity tradeoff for cloud autoscaling. In 2013 ACM Conference on Cloud and Autonomic Computing. Article 6, 10 pages. Google ScholarGoogle ScholarDigital LibraryDigital Library
  130. Seetharami R. Seelam, Paolo Dettori, Peter Westerink, and Ben Bo Yang. 2015. Polyglot application auto scaling service for platform as a service cloud. In 2015 IEEE International Conference on Cloud Engineering (IC2E). IEEE, 84--91. Google ScholarGoogle ScholarDigital LibraryDigital Library
  131. R. S. Shariffdeen, D. T. S. P. Munasinghe, H. S. Bhathiya, U. K. J. U. Bandara, and H. M. N. Dilum Bandara. 2016. Workload and resource aware proactive auto-scaler for paas cloud. In 2016 IEEE 9th International Conference on Cloud Computing. 11--18.Google ScholarGoogle ScholarCross RefCross Ref
  132. Upendra Sharma, P. Shenoy, S. Sahu, and A. Shaikh. 2011. A cost-aware elasticity provisioning system for the cloud. In 2011 31st International Conference on Distributed Computing Systems (ICDCS). 559--570. Google ScholarGoogle ScholarDigital LibraryDigital Library
  133. Andre Abrantes D. P. Souza and Marco A. S. Netto. 2015. Using application data for sla-aware auto-scaling in cloud environments. In 2015 IEEE 23rd International Symposium on Modeling, Analysis and Simulation of Computer and Telecommunication Systems (MASCOTS). IEEE, 252--255. Google ScholarGoogle ScholarDigital LibraryDigital Library
  134. Yu Sun, Jules White, Sean Eade, and Douglas C. Schmidt. 2016. ROAR: A QoS-oriented modeling framework for automated cloud resource allocation and optimization. Journal of Systems and Software 116 (2016), 146--161. Google ScholarGoogle ScholarDigital LibraryDigital Library
  135. Yu Sun, Jules White, Bo Li, Michael Walker, and Hamilton Turner. 2017. Automated QoS-oriented cloud resource optimization using containers. Automated Software Engineering 24, 1 (2017), 101--137. Google ScholarGoogle ScholarDigital LibraryDigital Library
  136. Vincent van Beek, Jesse Donkervliet, Tim Hegeman, Stefan Hugtenburg, and Alexandru Iosup. 2015. Mnemos: Self-expressive management of business-critical workloads in virtualized datacenters. (2015).Google ScholarGoogle Scholar
  137. Christian Vecchiola, Xingchen Chu, and Rajkumar Buyya. 2009. Aneka: A software platform for .NET-based cloud computing. High Speed and Large Scale Scientific Computing 18 (2009), 267--295.Google ScholarGoogle Scholar
  138. Hiroshi Wada, Junichi Suzuki, Yuji Yamano, and Katsuya Oba. 2011. Evolutionary deployment optimization for service-oriented clouds. Softw. Pract. Exper. 41, 5 (April 2011), 469--493. Google ScholarGoogle ScholarDigital LibraryDigital Library
  139. Chen Wang, Junliang Chen, Bing Bing Zhou, and A. Y. Zomaya. 2012. Just satisfactory resource provisioning for parallel applications in the cloud. In 2012 IEEE Eighth World Congress on Services (SERVICES). 285--292. Google ScholarGoogle ScholarDigital LibraryDigital Library
  140. Lixi Wang, Jing Xu, and Ming Zhao. 2012. Application-aware cross-layer virtual machine resource management. In ACM 9th International Conference on Autonomic Computing. 13--22. Google ScholarGoogle ScholarDigital LibraryDigital Library
  141. Lixi Wang, Jing Xu, and Ming Zhao. 2012. Tracking adaptive performance models using dynamic clustering of user classes. In 7th International Workshop on Feedback Computing.Google ScholarGoogle Scholar
  142. Bhathiya Wickremasinghe, Rodrigo N. Calheiros, and Rajkumar Buyya. 2010. CloudAnalyst: A cloudsim-based visual modeller for analysing cloud computing environments and applications. In 2010 24th IEEE International Conference on Advanced Information Networking and Applications (AINA). 446--452. Google ScholarGoogle ScholarDigital LibraryDigital Library
  143. Fetahi Wuhib, Rolf Stadler, and Hans Lindgren. 2012. Dynamic resource allocation with management objectives: Implementation for an OpenStack cloud. In 2012 8th International Conference and 2012 Workshop on Systems Virtualiztion Management Network and Service Management (Cnsm), (svm). 309--315. Google ScholarGoogle ScholarDigital LibraryDigital Library
  144. Pengcheng Xiong, Yun Chi, Shenghuo Zhu, Hyun Jin Moon, C. Pu, and H. Hacgumus. 2015. SmartSLA: Cost-sensitive management of virtualized resources for CPU-bound database services. IEEE Transactions on Parallel and Distributed Systems 26, 5 (2015), 1441--1451.Google ScholarGoogle ScholarDigital LibraryDigital Library
  145. Pengcheng Xiong, Calton Pu, Xiaoyun Zhu, and Rean Griffith. 2013. vPerfGuard: An automated model-driven framework for application performance diagnosis in consolidated cloud environments. In 4th ACM/SPEC International Conference on Performance Engineering. 271--282. Google ScholarGoogle ScholarDigital LibraryDigital Library
  146. Pengcheng Xiong, Zhikui Wang, S. Malkowski, Qingyang Wang, D. Jayasinghe, and C. Pu. 2011. Economical and robust provisioning of N-Tier cloud workloads: A multi-level control approach. In 2011 31st International Conference on Distributed Computing Systems (ICDCS). 571--580. Google ScholarGoogle ScholarDigital LibraryDigital Library
  147. Cheng-Zhong Xu, Jia Rao, and Xiangping Bu. 2012. URL: A unified reinforcement learning approach for autonomic cloud management. J. Parallel and Distrib. Comput. 72, 2 (2012), 95--105. Google ScholarGoogle ScholarDigital LibraryDigital Library
  148. Jingqi Yang, Chuanchang Liu, Yanlei Shang, Bo Cheng, Zexiang Mao, Chunhong Liu, Lisha Niu, and Junliang Chen. 2014. A cost-aware auto-scaling approach using the workload prediction in service clouds. Information Systems Frontiers 16, 1 (2014), 7--18. Google ScholarGoogle ScholarDigital LibraryDigital Library
  149. Lenar Yazdanov and Christof Fetzer. 2013. VScaler: Autonomic virtual machine scaling. In 2013 IEEE 6th International Conference on Cloud Computing. 212--219. Google ScholarGoogle ScholarDigital LibraryDigital Library
  150. Haitao Zhang, Huadong Ma, Guangping Fu, Xianda Yang, Zhe Jiang, and Yangyang Gao. 2016. Container based video surveillance cloud service with fine-grained resource provisioning. In IEEE 9th International Conference on Cloud Computing. 758--765.Google ScholarGoogle ScholarCross RefCross Ref
  151. Qi Zhang, Quanyan Zhu, and R. Boutaba. 2011. Dynamic resource allocation for spot markets in cloud computing environments. In 2011 4th IEEE International Conference on Utility and Cloud Computing (UCC). 178--185. Google ScholarGoogle ScholarDigital LibraryDigital Library
  152. Ying Zhang, Gang Huang, Xuanzhe Liu, and Hong Mei. 2010. Integrating resource consumption and allocation for infrastructure resources on-demand. In 2010 IEEE 3rd International Conference on Cloud Computing (CLOUD). 75--82. Google ScholarGoogle ScholarDigital LibraryDigital Library
  153. Tao Zheng, Marin Litoiu, and Murray Woodside. 2011. Integrated estimation and tracking of performance model parameters with autoregressive trends. In ACM/SPEC International Conference on Performance Engineering. 157--166. Google ScholarGoogle ScholarDigital LibraryDigital Library
  154. Qian Zhu and G. Agrawal. 2012. Resource provisioning with budget constraints for adaptive applications in cloud environments. IEEE Transactions on Services Computing 5, 4 (Fourth 2012), 497--511. Google ScholarGoogle ScholarDigital LibraryDigital Library
  155. Zhiliang Zhu, Jing Bi, Haitao Yuan, and Ying Chen. 2011. SLA based dynamic virtualized resources provisioning for shared cloud data centers. In 2011 IEEE International Conference on Cloud Computing (CLOUD). 630--637. Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. A Survey and Taxonomy of Self-Aware and Self-Adaptive Cloud Autoscaling Systems

      Recommendations

      Comments

      Login options

      Check if you have access through your login credentials or your institution to get full access on this article.

      Sign in

      Full Access

      • Published in

        cover image ACM Computing Surveys
        ACM Computing Surveys  Volume 51, Issue 3
        May 2019
        796 pages
        ISSN:0360-0300
        EISSN:1557-7341
        DOI:10.1145/3212709
        • Editor:
        • Sartaj Sahni
        Issue’s Table of Contents

        Copyright © 2018 Owner/Author

        This work is licensed under a Creative Commons Attribution International 4.0 License.

        Publisher

        Association for Computing Machinery

        New York, NY, United States

        Publication History

        • Published: 12 June 2018
        • Accepted: 1 February 2018
        • Revised: 1 January 2018
        • Received: 1 April 2017
        Published in csur Volume 51, Issue 3

        Permissions

        Request permissions about this article.

        Request Permissions

        Check for updates

        Qualifiers

        • survey
        • Research
        • Refereed

      PDF Format

      View or Download as a PDF file.

      PDF

      eReader

      View online with eReader.

      eReader