Towards Elastic Algorithms as a New Model of Computation for the Cloud

##plugins.themes.academic_pro.article.main##

RUI HAN
Moustafa Ghanem
Yike Guo

Abstract

Cloud computing has emerged as a cost-effiective way for delivering metered computing resources. It supports a Pay-as-you-go model of computation in which users pay only for the resources used, when used. Within this context managing resource elasticity has become an active research topic for the research community. A major focus of such research has been on investigating various approaches to support dynamic scaling of the resources used so as to match the users computational demands while minimising the cost of using such resources. However, little or no work has investigated the concept of supporting algorithm elasticity itself, i.e. organizing the users computation to adapt dynamically to resource availability and cost. In this paper we introduce the concept of an elastic algorithm (EA), and algorithm that structures the computation to make use of the Pay-as-you-go paradigm. In contrast to conventional algorithms, where a computation is typically regarded as a deterministic process that only produces an all-or-nothing result, an EA is organized to generate a sequence of approximate results corresponding to its resource consumption. On a tight resource budget the algorithm guarantees producing an approximate useful result. However, if the user has more budget, and accordingly can use more resources, an EA guarantees producing better results. In this sense, the quality of the algorithm output becomes elastic to its resource consumption. In this paper, we formalize the properties of algorithm elasticity and also formalize the key features of an EA. We illustrate the key concepts by designing an elastic kNN classification algorithm and discussing its key elastic features. We also describe a number of key challenges that need to be addressed when designing EAs in general and set them as a research agenda for the community.

##plugins.themes.academic_pro.article.details##

How to Cite
RUI HAN, Moustafa Ghanem, & Yike Guo. (2013). Towards Elastic Algorithms as a New Model of Computation for the Cloud. International Journal of Next-Generation Computing, 4(2), 182–197. https://doi.org/10.47164/ijngc.v4i2.51

References

  1. Amazon Web Services (Amazon WS). http://aws.amazon.com/ (14.06.13).
  2. DEAN, T., and BODDY, M. 1988. An analysis of time-dependent planning. In Proceedings of the seventh national conference on arti cial intelligence AAAI, 49-54.
  3. DEAN, T.L. 1989. Intractability and time-dependent planning. In Proceedings of the seventh national conference on arti cial intelligence Los Altos, California (Morgan Kaufmann, 1987), 245-266.
  4. FAWCETT, T. 2006. An introduction to ROC analysis. In Pattern recognition letters 27, 861-874.
  5. GABER, M.M., and YU, P.S. 2006. A framework for resource-aware knowledge discovery in data streams: a holistic approach with its application to clustering. In Proceedings of the 2006 ACM symposium on Applied computing (SAC '06) ACM, 649-656.
  6. GUO, Yike, GHANEM, M. Moustafa, and HAN, Rui. 2012. Does the Cloud need new algorithms? An in- troduction to elastic algorithms. In Cloud Computing Technology and Science (CloudCom), 2012 IEEE 4th International Conference on IEEE, 66-73.
  7. GUTTMAN, A. 1984. R-trees: a dynamic index structure for spatial searching. In In Proceedings of ACM. 1984.
  8. Rui, Han, GHANEM, M. Moustafa, Li, Guo, Yike, Guo, and OSMOND, M. 2012. Enabling cost-aware and adaptive elasticity of multi-tier cloud applications. In Future Generation Computer Systems. 2013.
  9. Rui, Han, Li, Guo, GHANEM, M. Moustafa, and Yike, Guo 2012. Lightweight Resource Scaling for Cloud Applications. In Proceedings of the The 12th IEEE/ACM International Symposium on Cluster, Cloud and Grid Computing (CCGrid'12), Ottawa, Canada2012 IEEE, 644-651.
  10. Rui, Han, Li, Guo, Yike, Guo, and Sijin, He 2011. A Deployment Platform for Dynamically Scaling Applications in The Cloud. In Proceedings of the 3rd IEEE International Conference on Cloud Computing Technology and Science (CloudCom'11), Athens, Greece2011 IEEE, 506-510.
  11. HAND, D.J., and TILL, R.J. 2001. A simple generalisation of the area under the ROC curve for multiple class classi cation problems. In Machine Learning 45, 171-186.
  12. HORVITZ, E. 1988. Reasoning about beliefs and actions under computational resource constraints. In Interna- tional Journal of Approx. Reasoning 2, 337-338.
  13. HORVITZ, E.J. 1990. Computation and Action under Bounded Resources. In Department of EngineeringEco- nomic Systems stanford university, CA, 319.
  14. HWANG, K., DONGARRA, J., and FOX, G.C. 2012. Distributed and cloud computing. In Elsevier/Morgan Kaufmann.
  15. LIU, J.W.S., LIN, K.J., SHIH, W.K., YU, A.C.S., CHUNG, J.Y., and ZHAO, W. 1991. Algorithms for scheduling imprecise computations. In Computer 24, 58-68.
  16. MORENO-VOZMEDIANO., R., MONTERO., R.S, and LLORENTE, I.M. 2009. Elastic management of cluster-based services in the cloud. In Proceedings of the 1st workshop on Automated control for datacen- ters and clouds ACM, 19-24.
  17. PHARR, M., and HUMPHREYS, G. 2004. Physically based rendering: From theory to implementation. In Morgan Kaufmann.
  18. POLADIAN, V., SOUSA, J.P., GARLAN, D., and SHAW, M. 2004. Dynamic con guration of resource-aware services. In Proceedings of 26th International Conference on Software Engineering (ICSE 2004) IEEE, 604-613.
  19. SAMUELSON., P.A., and NORDHAUS., W.A. 2011. Microeconomics. In McGraw-Hill.
  20. SHARMA, U., SHENOY, P., SAHU, S., and SHAIKH, A. 2011. A cost-aware elasticity provisioning system for the cloud. In Distributed Computing Systems (ICDCS), 2011 31st International Conference on IEEE, 559-570.
  21. WEBB, A.R., COPSEY, K.D., and CAWLEY, G. 2011. Statistical pattern recognition. In Wiley. ZILBER- STEIN, S. 1996. Using anytime algorithms in intelligent systems. AI magazine 17, 73-83