Core group placement: allocation and provisioning of heterogeneous resources

Original Paper
  • 1 Downloads

Abstract

We present a theoretical and empirical study on a recently introduced combinatorial optimization problem, namely core group placement problem. The problem arises from real-world business requirements as part of resource allocation in cloud management. In particular, it focuses on the allocation and provisioning of a set of heterogeneous resources serving multiple customers each with different service-level agreements. There exist certain business rules that govern the application stemming from privacy, performance, and capacity requirements. From a theoretical point of view, we prove that the problem is intrinsically hard, yet, from a practical point of view, we show how to formulate it as a constrained optimization program using constraint programming (CP), and alternatively, using mathematical programming (MP). Our experimental results demonstrate that the CP solution outperforms its MP counterpart. We then move toward a dynamic setting where the problem manifests itself in the real world. We show that CP model not only addresses the resource allocation problem but it also enables resource provisioning to take future considerations and system growth into account when making decisions. Overall, the CP solution stands out as a high-level, declarative solution that is efficient, easy to maintain and can address multiple scenarios.

Keywords

Cloud management Heterogeneous resource allocation Resource provisioning Constraint programming Mathematical programming 

Mathematics Subject Classification

Primary 68T01 Artificial Intelligence - General Secondary 90C11 Mixed integer programming 90C27 Combinatorial optimization 90C90 Applications of mathematical programming 

References

  1. Ábrahám E, Corzilius F, Johnsen EB, Kremer G, Mauro J (2016) Zephyrus2: on the fly deployment optimization using SMT and CP technologies. In: International symposium on dependable software engineering: theories, tools, and applications. Springer, New York, pp 229–245Google Scholar
  2. Ahuja RK, Magnanti TL, Orlin JB (1993) Network flows: theory, algorithms, and applications. Prentice-Hall, Inc., Upper Saddle RiverGoogle Scholar
  3. Apache (2016) Lucene core. https://lucene.apache.org/. Accessed 16 Aug 2017
  4. Apt K (2003) Principles of constraint programming. Cambridge University Press, CambridgeCrossRefGoogle Scholar
  5. Boussemart F, Hemery F, Lecoutre C, Sais L (2004) Boosting systematic search by weighting constraints. In: ECAI, vol. 16Google Scholar
  6. Cambazard H, Mehta D, OSullivan B, Simonis H (2013) Bin packing with linear usage costs–an application to energy management in data centres. In: International conference on principles and practice of constraint programming. Springer, New York, pp 47–62Google Scholar
  7. De Cauwer M, Mehta D, O’Sullivan B (2016) The temporal bin packing problem: an application to workload management in data centres. In: IEEE 28th international conference on tools with artificial intelligence (ICTAI), 2016, pp 157–164Google Scholar
  8. Dupont C, Hermenier F, Schulze T, Basmadjian R, Somov A, Giuliani G (2015) Plug4green: a flexible energy-aware vm manager to fit data centre particularities. Ad Hoc Netw 25:505–519CrossRefGoogle Scholar
  9. Endo PT, de Almeida Palhares AV, Pereira NCVN, Gonçalves GE, Sadok D, Kelner J, Melander B, Mångs J (2011) Resource allocation for distributed cloud: concepts and research challenges. IEEE Netw 25(4):42–46.  https://doi.org/10.1109/MNET.2011.5958007 CrossRefGoogle Scholar
  10. Hazewinkel M (2001) Minimax principle. Encyclopedia of Mathematica. SpringerGoogle Scholar
  11. Hermenier F, Lawall J, Muller G (2013) Btrplace: a flexible consolidation manager for highly available applications. IEEE Trans Dependable Secure Comput 10(5):273–286CrossRefGoogle Scholar
  12. Hermenier F, Demassey S, Lorca X (2011) Bin repacking scheduling in virtualized datacenters. In: Principles and practice of constraint programming–CP 2011. Springer, New York pp 27–41Google Scholar
  13. Hermenier F, Lorca X, Menaud JM, Muller G, Lawall J (2009) Entropy: a consolidation manager for clusters. In: Proceedings of the 2009 ACM SIGPLAN/SIGOPS international conference on Virtual execution environments. ACM, pp 41–50Google Scholar
  14. IBM (2015) IBM ILOG CPLEX Optimization Studio 12.5Google Scholar
  15. Kadioglu S, Colena M, Sebbah S (2016) Heterogeneous resource allocation in cloud management. In: 15th IEEE international symposium on network computing and applications, NCA 2016, Cambridge, Boston, 2016, pp 35–38. https://doi.org/10.1109/NCA.2016.7778589
  16. Kant K (2009) Data center evolution: a tutorial on state of the art, issues, and challenges. Comput Netw 53(17):2939–2965CrossRefGoogle Scholar
  17. Katriel I, Thiel S (2005) Complete bound consistency for the global cardinality constraint. Constraints 10(3):191–217CrossRefGoogle Scholar
  18. Laurière J (1978) A language and a program for stating and solving combinatorial problems. Artif Intell 10(1):29–127.  https://doi.org/10.1016/0004-3702(78)90029-2 CrossRefGoogle Scholar
  19. Lim N, Majumdar S, Ashwood-Smith P (2015) A constraint programming based Hadoop scheduler for handling MapReduce jobs with deadlines on clouds. In: Proceedings of the 6th ACM/SPEC international conference on performance engineering, ICPE ’15. ACM, New York, pp 111–122. https://doi.org/10.1145/2668930.2688058
  20. Lombardi M, Milano M (2012) Optimal methods for resource allocation and scheduling: a cross-disciplinary survey. Constraints 17(1):51–85CrossRefGoogle Scholar
  21. Mitten L (1970) Branch-and-bound methods: general formulation and properties. Oper Res 18:24–34CrossRefGoogle Scholar
  22. Nemhauser G, Wolsey L (1988) Integer and combinatorial optimization. Wiley-Interscience, New YorkCrossRefGoogle Scholar
  23. Oplobedu A, Marcovitch J, Tourbier Y (1989) Charme: un langage industriel de programmation par contraintes, illustré par une application chez renault. In: Proceedings of the ninth international workshop on expert systems and their applications: general conferencehnical, pp 55–70Google Scholar
  24. Padberg M, Rinaldi G (1991) A branch-and-cut algorithm for the resolution of large scale traveling salesman problems. SIAM Rev 33:66–100CrossRefGoogle Scholar
  25. Rai A, Bhagwan R, Guha S (2012) Generalized resource allocation for the cloud. In: Proceedings of the third ACM symposium on cloud computing. ACMGoogle Scholar
  26. Rardin RL (2016) Optimization in operations research. Pearson, DelhiGoogle Scholar
  27. Reale A, Bellavista P, Corradi A, Milano M (2014) Evaluating cp techniques to plan dynamic resource provisioning in distributed stream processing. In: Integration of AI and OR techniques in constraint programming. Springer, New York, pp 193–209Google Scholar
  28. Refalo P (2004) Impact-based search strategies for constraint programming. In: Principles and practice of constraint programming–CP 2004. Springer, pp 557–571Google Scholar
  29. Régin JC (1994) A filtering algorithm for constraints of difference in CSPS. In: Proceedings of the twelfth national conference on artificial intelligence, vol 1, AAAI ’94. American Association for Artificial Intelligence, Menlo Park, pp 362–367. http://dl.acm.org/citation.cfm?id=199288.178024
  30. Régin JC, Rezgui M (2011) Discussion about constraint programming bin packing models. AI for data center management and cloud computing, vol 11Google Scholar
  31. Schaus P (2009) Solving balancing and bin-packing problems with constraint programming. PhD Dissertation, Universit catholique de Louvain-la-NeuveGoogle Scholar
  32. Sebbah S, Bagley C, Colena M, Kadioglu S (2016) Availability optimization in cloud-based in-memory data grids. In: Proceedings of 22nd international conference principles and practice of constraint programming, CP 2016, Toulouse, 2016, pp 666–679. https://doi.org/10.1007/978-3-319-44953-1_42
  33. Shaw P (2004) A constraint for bin packing. In: Principles and practice of constraint programming–CP 2004, Springer, New York, pp 648–662Google Scholar
  34. Smiley D, Pugh E, Parisa K (2014) Apache Solr 4 enterprise search server. Packt Publishing, BirminghamGoogle Scholar
  35. Team Gecode (2016) Gecode: generic constraint development environment. http://www.gecode.org/. Accessed 16 Aug 2017
  36. Van Hentenryck P, Carillon JP (1988) Generality versus specificity: an experience with AI and OR techniques. In: Proceedings of the seventh national conference on artificial intelligence, pp 660–664Google Scholar

Copyright information

© Springer-Verlag GmbH Germany, part of Springer Nature and EURO - The Association of European Operational Research Societies 2018

Authors and Affiliations

  1. 1.Advanced Constraint Technology Oracle CorporationBurlingtonUSA

Personalised recommendations