A Scalable Master-Worker Architecture for PaaS Clouds

Clouds provide an attractive infrastructural option to deploy highly-scalable distributed applications. Platform as a Service (PaaS) clouds offer basic software stack and services along with the execution containers to simplify the hosting of user applications. However, traditional many task computing architectures cannot be hosted as-is on current PaaS platforms due to certain limitations. This paper describes a novel modified architecture for master-worker, a well-known many task computing paradigm, to take advantage of the fast scalability provided by PaaS. The architecture is transformed into a multiagent system where the distributed agents use a message broker for communication and to store the computation progress. The agents are capable of dynamically shifting between a master and a worker role based on the information available with a durable message broker. This state-less feature of the agents makes them amenable for a PaaS platform and adds fault-tolerance to the system. The experiments illustrate the promising potential of the architecture to efficiently scale computationally intensive tasks on PaaS.

[1]  Manish Parashar,et al.  Online Risk Analytics on the Cloud , 2009, 2009 9th IEEE/ACM International Symposium on Cluster Computing and the Grid.

[2]  Alexandru Iosup,et al.  Performance Analysis of Cloud Computing Services for Many-Tasks Scientific Computing , 2011, IEEE Transactions on Parallel and Distributed Systems.

[3]  Changjun Wu,et al.  A Scalable Parallel Algorithm for Large-Scale Protein Sequence Homology Detection , 2010, 2010 39th International Conference on Parallel Processing.

[4]  Yi Liang,et al.  In Cloud, Can Scientific Communities Benefit from the Economies of Scale? , 2010, IEEE Transactions on Parallel and Distributed Systems.

[5]  Douglas Thain,et al.  Highly scalable genome assembly on campus grids , 2009, MTAGS '09.

[6]  Peter Norvig,et al.  Artificial intelligence - a modern approach, 2nd Edition , 2003, Prentice Hall series in artificial intelligence.

[7]  El-Ghazali Talbi,et al.  An adaptive hierarchical master-worker (AHMW) framework for grids - Application to B&B algorithms , 2012, J. Parallel Distributed Comput..

[8]  Cyril Banino-Rokkones Optimizing Locationing of Multiple Masters for Master-Worker Grid Applications , 2004, PARA.

[9]  James T. Kajiya,et al.  The rendering equation , 1986, SIGGRAPH.

[10]  P. Mell,et al.  The NIST Definition of Cloud Computing , 2011 .

[11]  Peter Norvig,et al.  Artificial Intelligence: A Modern Approach , 1995 .

[12]  K. M. Annervaz,et al.  ReLoC: A Resilient Loosely Coupled Application Architecture for State Management in the Cloud , 2012, 2012 IEEE Fifth International Conference on Cloud Computing.

[13]  Rubén S. Montero,et al.  Multicloud Deployment of Computing Clusters for Loosely Coupled MTC Applications , 2011, IEEE Transactions on Parallel and Distributed Systems.

[14]  David P. Anderson,et al.  BOINC: a system for public-resource computing and storage , 2004, Fifth IEEE/ACM International Workshop on Grid Computing.

[15]  Xian-He Sun,et al.  Scalability of Parallel Algorithm-Machine Combinations , 1994, IEEE Trans. Parallel Distributed Syst..

[16]  Wenguang Chen,et al.  Cloud versus in-house cluster: Evaluating Amazon cluster compute instances for running MPI applications , 2011, 2011 International Conference for High Performance Computing, Networking, Storage and Analysis (SC).

[17]  Hermes Senger,et al.  Scalability limits of Bag-of-Tasks applications running on hierarchical platforms , 2011, J. Parallel Distributed Comput..

[18]  John O'Hara,et al.  Toward a Commodity Enterprise Middleware , 2007, ACM Queue.

[19]  Cyril Banino,et al.  Optimizing locationing of multiple masters for master-worker grid applications , 2004 .

[20]  Yong Zhao,et al.  Many-task computing for grids and supercomputers , 2008, 2008 Workshop on Many-Task Computing on Grids and Supercomputers.

[21]  Radu Prodan,et al.  Evaluating High-Performance Computing on Google App Engine , 2012, IEEE Software.

[22]  P. Mell,et al.  SP 800-145. The NIST Definition of Cloud Computing , 2011 .

[23]  Steve Vinoski,et al.  Advanced Message Queuing Protocol , 2006, IEEE Internet Computing.

[24]  Thomas Bashford-Rogers,et al.  High-Fidelity Interactive Rendering on Desktop Grids , 2012, IEEE Computer Graphics and Applications.