skip to main content
article

ClouDiA: a deployment advisor for public clouds

Published:01 December 2012Publication History
Skip Abstract Section

Abstract

An increasing number of distributed data-driven applications are moving into shared public clouds. By sharing resources and operating at scale, public clouds promise higher utilization and lower costs than private clusters. To achieve high utilization, however, cloud providers inevitably allocate virtual machine instances noncontiguously, i.e., instances of a given application may end up in physically distant machines in the cloud. This allocation strategy can lead to large differences in average latency between instances. For a large class of applications, this difference can result in significant performance degradation, unless care is taken in how application components are mapped to instances.

In this paper, we propose ClouDiA, a general deployment advisor that selects application node deployments minimizing either (i) the largest latency between application nodes, or (ii) the longest critical path among all application nodes. ClouDiA employs mixed-integer programming and constraint programming techniques to efficiently search the space of possible mappings of application nodes to instances. Through experiments with synthetic and real applications in Amazon EC2, we show that our techniques yield a 15% to 55% reduction in time-to-solution or service response time, without any need for modifying application code.

References

  1. R. D. Alpert and J. F. Philbin. cBSP: Zero-cost synchronization in a modified BSP model. Technical report, NEC Research Institute, 1997.Google ScholarGoogle Scholar
  2. Amazon web services, elastic compute cloud (ec2). http://aws.amazon.com/ec2/.Google ScholarGoogle Scholar
  3. Amazon web services, case studies. http://aws.amazon.com/solutions/case-studies/.Google ScholarGoogle Scholar
  4. Amazon web services, cloudformation. http://aws.amazon.com/cloudformation/.Google ScholarGoogle Scholar
  5. Amazon web services, search engines & web crawlers. http://aws.amazon.com/search-engines/.Google ScholarGoogle Scholar
  6. S. Babu. Towards automatic optimization of mapreduce programs. In SOCC, 2010. Google ScholarGoogle Scholar
  7. C. S. Badue, R. A. Baeza-Yates, B. A. Ribeiro-Neto, and N. Ziviani. Distributed query processing using partitioned inverted files. In SPIRE, pages 10-20, 2001.Google ScholarGoogle Scholar
  8. H. Ballani, P. Costa, T. Karagiannis, and A. I. T. Rowstron. Towards predictable datacenter networks. In SIGCOMM, 2011. Google ScholarGoogle Scholar
  9. D. Battré, N. Frejnik, S. Goel, O. Kao, and D. Warneke. Evaluation of network topology inference in opaque compute clouds through end-to-end measurements. In IEEE CLOUD, 2011. Google ScholarGoogle Scholar
  10. T. Benson, A. Akella, and D. A. Maltz. Network traffic characteristics of data centers in the wild. In Internet Measurement Conference, 2010. Google ScholarGoogle Scholar
  11. O. Bonorden, B. Juurlink, I. von Otte, and I. Rieping. The paderborn university BSP (PUB) library. Parallel Computing, 29(2):187-207, 2003. Google ScholarGoogle Scholar
  12. D. Borthakur. The hadoop distributed file system: Architecture and design. http://hadoop.apache.org/core/docs/current/hdfsdesign.pdf.Google ScholarGoogle Scholar
  13. S. Chaudhuri and V. Narasayya. An efficient, cost-driven index selection tool for microsoft SQL server. In VLDB, 1997. Google ScholarGoogle Scholar
  14. X. Cheng, S. Su, Z. Zhang, H. Wang, F. Yang, Y. Luo, and J. Wang. Virtual network embedding through topology-aware node ranking. SIGCOMM CCR, 41(2):38-47, 2011. Google ScholarGoogle Scholar
  15. M. Chowdhury, M. Zaharia, J. Ma, M. I. Jordan, and I. Stoica. Managing data transfers in computer clusters with orchestra. In SIGCOMM, 2011. Google ScholarGoogle Scholar
  16. N. M. M. K. Chowdhury, M. R. Rahman, and R. Boutaba. Virtual Network Embedding with Coordinated Node and Link Mapping. In INFOCOM, 2009.Google ScholarGoogle Scholar
  17. L. P. Cordella, P. Foggia, C. Sansone, and M. Vento. Performance evaluation of the VF graph matching algorithm. In International Conference on Image Analysis and Processing, 1999. Google ScholarGoogle Scholar
  18. L. P. Cordella, P. Foggia, C. Sansone, and M. Vento. A (sub)graph isomorphism algorithm for matching large graphs. IEEE Transactions on PAMI, 26:1367-1372, 2004. Google ScholarGoogle Scholar
  19. I. Couzin, J. Krause, N. Franks, and S. Levin. Effective leadership and decision-making in animal groups on the move. Nature, 433(7025):513-516, 2005.Google ScholarGoogle Scholar
  20. G. DeCandia, D. Hastorun, M. Jampani, G. Kakulapati, A. Lakshman, A. Pilchin, S. Sivasubramanian, P. Vosshall, and W. Vogels. Dynamo: Amazon's highly available key-value store. In SOSP, 2007. Google ScholarGoogle Scholar
  21. J. Demmel, M. Hoemmen, M. Mohiyuddin, and K. A. Yelick. Avoiding communication in sparse matrix computations. In IPDPS, 2008.Google ScholarGoogle Scholar
  22. D. Eppstein. Subgraph isomorphism in planar graphs and related problems. In SODA, 1995. Google ScholarGoogle Scholar
  23. C. Evangelinos and C. N. Hill. Cloud computing for parallel scientific HPC applications. In Cloud Computing and Its Applications, 2008.Google ScholarGoogle Scholar
  24. I. Fajjari, N. Aitsaadi, G. Pujolle, and H. Zimmermann. VNE-AC: Virtual network embedding algorithm based on ant colony metaheuristic. In IEEE International Conference on Communications, 2011.Google ScholarGoogle Scholar
  25. B. Farley, V. Varadarajan, K. Bowers, A. Juels, T. Ristenpart, and M. Swift. More for your money: Exploiting performance heterogeneity in public clouds. In SOCC, 2012. Google ScholarGoogle Scholar
  26. M. R. Garey and D. S. Johnson. Computers and intractability. Freeman, 1979.Google ScholarGoogle Scholar
  27. R. Geambasu, S. D. Gribble, and H. M. Levy. Cloudviews: Communal data sharing in public clouds. In HotCloud, 2009. Google ScholarGoogle Scholar
  28. C. Guo, G. Lu, H. J. Wang, S. Yang, C. Kong, P. Sun, W. Wu, and Y. Zhang. Secondnet: a data center network virtualization architecture with bandwidth guarantees. In CoNEXT, 2010. Google ScholarGoogle Scholar
  29. J. Han, D. Watson, and F. Jahanian. Topology aware overlay networks. In INFOCOM. IEEE, 2005.Google ScholarGoogle Scholar
  30. HP intelligent management center virtual application network manager. http://h17007.www1.hp.com/us/en/products/network-management/IMC_VANM_Software/index.aspx.Google ScholarGoogle Scholar
  31. M. Isard, V. Prabhakaran, J. Currey, U. Wieder, K. Talwar, and A. Goldberg. Quincy: fair scheduling for distributed computing clusters. In SOSP, 2009. Google ScholarGoogle Scholar
  32. E. Jahani, M. J. Cafarella, and C. Ré. Automatic optimization for mapreduce programs. PVLDB, 2011. Google ScholarGoogle Scholar
  33. G. Juve, E. Deelman, K. Vahi, G. Mehta, B. Berriman, B. P. Berman, and P. Maechling. Scientific workflow applications on amazon EC2. In IEEE International Conference on e-Science., 2009.Google ScholarGoogle Scholar
  34. J.-S. Kim, S. Ha, and C. S. Jhon. Efficient barrier synchronization mechanism for the BSP model on message-passing architectures. In IPPS/SPDP, 1998. Google ScholarGoogle Scholar
  35. P. Krishnan, D. Raz, and Y. Shavitt. The cache location problem. IEEE/ACM Transactions on Networking, 8(5):568-582, 2000. Google ScholarGoogle Scholar
  36. A. Lakshman and P. Malik. Cassandra: a decentralized structured storage system. SIGOPS OSR, 44(2):35-40, 2010. Google ScholarGoogle Scholar
  37. J. Larrosa and G. Valiente. Constraint satisfaction algorithms for graph pattern matching. Mathematical. Structures in Comp. Sci., 12(4):403-422, Aug. 2002. Google ScholarGoogle Scholar
  38. G. Lee, N. Tolia, P. Ranganathan, and R. H. Katz. Topology-aware resource allocation for data-intensive workloads. SIGCOMM CCR, 2011. Google ScholarGoogle Scholar
  39. B. Li, M. J. Golin, G. F. Italiano, X. Deng, and K. Sohraby. On the optimal placement of web proxies in the internet. In INFOCOM, 1999.Google ScholarGoogle Scholar
  40. G. L. Miller. Isomorphism testing for graphs of bounded genus. In STOC, 1980. Google ScholarGoogle Scholar
  41. Z. Miller and J. B. Orlin. Np-completeness for minimizing maximum edge length in grid embeddings. J. Algorithms, pages 10-16, 1985.Google ScholarGoogle Scholar
  42. R. N. Mysore, A. Pamboris, N. Farrington, N. Huang, P. Miri, S. Radhakrishnan, V. Subramanya, and A. Vahdat. Portland: a scalable fault-tolerant layer 2 data center network fabric. In SIGCOMM, 2009. Google ScholarGoogle Scholar
  43. C. O'Hanlon. A conversation with werner vogels. ACM Queue, 4(4):14-22, May 2006. Google ScholarGoogle Scholar
  44. B. Palanisamy, A. Singh, L. Liu, and B. Jain. Purlieus: locality-aware resource allocation for mapreduce in a cloud. In SC, 2011. Google ScholarGoogle Scholar
  45. O. Papaemmanouil, Y. Ahmad, U. Çetintemel, J. Jannotti, and Y. Yildirim. Extensible optimization in overlay dissemination trees. In SIGMOD, 2006. Google ScholarGoogle Scholar
  46. P. R. Pietzuch, J. Ledlie, J. Shneidman, M. Roussopoulos, M. Welsh, and M. I. Seltzer. Network-aware operator placement for stream-processing systems. In ICDE, 2006. Google ScholarGoogle Scholar
  47. L. Qiu, V. N. Padmanabhan, and G. M. Voelker. On the placement of web server replicas. In INFOCOM, 2001.Google ScholarGoogle Scholar
  48. Rackspace. http://www.rackspace.com/.Google ScholarGoogle Scholar
  49. A. Rai, R. Bhagwan, and S. Guha. Generalized resource allocation for the cloud. In SOCC, 2012. Google ScholarGoogle Scholar
  50. L. Ramakrishnan, K. R. Jackson, S. Canon, S. Cholia, and J. Shalf. Defining future platform requirements for e-Science clouds. In SOCC, 2010. Google ScholarGoogle Scholar
  51. R. Ramakrishnan. Data serving in the cloud. In LADIS, 2010.Google ScholarGoogle Scholar
  52. V. Ramasubramanian, D. Malkhi, F. Kuhn, M. Balakrishnan, A. Gupta, and A. Akella. On the treeness of internet latency and bandwidth. In SIGMETRICS, 2009. Google ScholarGoogle Scholar
  53. R. Ricci, C. Alfeld, and J. Lepreau. A solver for the network testbed mapping problem. SIGCOMM CCR, 33(2):65-81, 2003. Google ScholarGoogle Scholar
  54. S. Roy, H. Pucha, Z. Zhang, Y. C. Hu, and L. Qiu. Overlay node placement: Analysis, algorithms and impact on applications. In ICDCS, 2007. Google ScholarGoogle Scholar
  55. J. Schad, J. Dittrich, and J.-A. Quiané-Ruiz. Runtime measurements in the cloud: Observing, analyzing, and reducing variance. PVLDB, 3(1), 2010. Google ScholarGoogle Scholar
  56. Y. J. Song, M. K. Aguilera, R. Kotla, and D. Malkhi. RPC chains: Efficient client-server communication in geodistributed systems. In NSDI, 2009. Google ScholarGoogle Scholar
  57. J. R. Ullmann. An algorithm for subgraph isomorphism. Journal of the ACM, 23, 1976. Google ScholarGoogle Scholar
  58. W. Vogels. Data access patterns in the amazon.com technology platform. In VLDB, page 1, 2007. Google ScholarGoogle Scholar
  59. G. Wang and T. S. E. Ng. The impact of virtualization on network performance of Amazon EC2 data center. In INFOCOM, 2010. Google ScholarGoogle Scholar
  60. G. Wang, M. A. V. Salles, B. Sowell, X. Wang, T. Cao, A. J. Demers, J. Gehrke, and W. M. White. Behavioral simulations in mapreduce. PVLDB, 2010. Google ScholarGoogle Scholar
  61. G. Weikum, C. Hasse, A. Moenkeberg, and P. Zabback. The COMFORT automatic tuning project, invited project review. Inf. Syst., 19(5), 1994. Google ScholarGoogle Scholar
  62. Y. Wen. Scalability of Dynamic Traffic Assignment. PhD thesis, Massachusetts Institute of Technology, 2008. Google ScholarGoogle Scholar
  63. A. Wieder, P. Bhatotia, A. Post, and R. Rodrigues. Orchestrating the deployment of computations in the cloud with conductor. In NSDI, 2012. Google ScholarGoogle Scholar
  64. Windows azure. http://www.windowsazure.com/.Google ScholarGoogle Scholar
  65. M. Yu, Y. Yi, J. Rexford, and M. Chiang. Rethinking virtual network embedding: substrate support for path splitting and migration. SIGCOMM CCR, 38(2):17-29, 2008. Google ScholarGoogle Scholar
  66. Y. Yu, M. Isard, D. Fetterly, M. Budiu, Ú. Erlingsson, P. K. Gunda, and J. Currey. DryadLINQ: A system for general-purpose distributed data-parallel computing using a high-level language. In OSDI, 2008. Google ScholarGoogle Scholar
  67. M. Zaharia, A. Konwinski, A. D. Joseph, R. H. Katz, and I. Stoica. Improving mapreduce performance in heterogeneous environments. In OSDI, 2008. Google ScholarGoogle Scholar
  68. S. Zampelli, Y. Deville, and C. Solnon. Solving subgraph isomorphism problems with constraint programming. Constraints, 15(3):327-353, 2010. Google ScholarGoogle Scholar
  69. T. Zou, G. Wang, M. V. Salles, D. Bindel, A. Demers, J. Gehrke, and W. White. Making time-stepped applications tick in the cloud. In SOCC, 2011. Google ScholarGoogle Scholar

Index Terms

  1. ClouDiA: a deployment advisor for public clouds

      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 Proceedings of the VLDB Endowment
        Proceedings of the VLDB Endowment  Volume 6, Issue 2
        December 2012
        120 pages

        Publisher

        VLDB Endowment

        Publication History

        • Published: 1 December 2012
        Published in pvldb Volume 6, Issue 2

        Qualifiers

        • article

      PDF Format

      View or Download as a PDF file.

      PDF

      eReader

      View online with eReader.

      eReader