Developing a Web-Based Workflow Management System in Cloud Computing Platforms

Cloud computing is the innovative and leading information technology model for enabling convenient, on-demand network access to a shared pool of configurable computing resources that can be rapidly provisioned and released with minimal management effort. In this paper, we aim at the development of workflow management system for cloud computing platforms based on our previous research on the dynamic allocation of the cloud computing resources and its workflow process. We took advantage of the HTML5 technology and developed web-based workflow interface. In order to enable the combination of many tasks running on the cloud platform in sequence, we designed a mechanism and developed an execution engine for workflow management on clouds. We also established a prediction model which was integrated with job queuing system to estimate the waiting time and cost of the individual tasks on different computing nodes, therefore helping users achieve maximum performance at lowest payment. This proposed effort has the potential to positively provide an efficient, resilience and elastic environment for cloud computing platform. This development also helps boost user productivity by promoting a flexible workflow interface that lets users design and control their tasks' flow from anywhere.




References:
[1] Fox, Armando, et al. "Above the clouds: A Berkeley view of cloud
computing." Dept. Electrical Eng. and Comput. Sciences, University of
California, Berkeley, Rep. UCB/EECS 28 (2009): 13.
[2] I. Foster, Y. Zhao, I. Raicu, and S. Lu. "Cloud Computing and Grid
Computing 360-Degree Compared," IEEE Grid Computing
Environments Workshop, pp. 1-10, 2008.
[3] A. Tsalgatidou, et al., "Developing scientific workflows from
heterogeneous services," SIGMOD Record, vol. 35, no. 2, pp. 22-28,
2006.
[4] C. Hoffa, et al., "On the use of cloud computing for scientific workflows,"
eScience, pp. 640-645, 2008.
[5] Buyya, Rajkumar, James Broberg, and Andrzej M. Goscinski, eds. Cloud
computing: Principles and paradigms. Vol. 87. John Wiley & Sons, 2010.
[6] Kaya, Kamer, and Cevdet Aykanat. "Iterative-improvement-based
heuristics for adaptive scheduling of tasks sharing files on heterogeneous
master-slave environments." Parallel and Distributed Systems, IEEE
Transactions on 17.8 (2006): 883-896.
[7] Buyya, Rajkumar, Suraj Pandey, and Christian Vecchiola. "Cloudbus
toolkit for market-oriented cloud computing." Cloud Computing.
Springer Berlin Heidelberg, 2009. 24-44.
[8] Wickremasinghe, Bhathiya, Rodrigo N. Calheiros, and Rajkumar Buyya.
"Cloudanalyst: A cloudsim-based visual modeller for analysing cloud
computing environments and applications." Advanced Information
Networking and Applications (AINA), 2010 24th IEEE International
Conference on. IEEE, 2010.
[9] Calheiros, Rodrigo N., et al. "CloudSim: a toolkit for modeling and
simulation of cloud computing environments and evaluation of resource
provisioning algorithms." Software: Practice and Experience 41.1 (2011):
23-50.
[10] Liu, Xiao, et al. "SwinDeW-C: a peer-to-peer based cloud workflow
system." Handbook of Cloud Computing. Springer US, 2010. 309-332.
[11] P. Chaganti , "Google Web Toolkit: GWT Java AJAX Programming,"
Packt Publishing, 2007.
[12] Goth, Greg. "Virtualization: Old technology offers huge new potential."
IEEE Distributed Systems Online 8.2 (2007): 3-3.
[13] R. A. Meyer and L. H. Seawright, “A Virtual Machine Time-Sharing
System,” IBM Systems Journal, vol. 9, no. 3, 1970.
[14] A. Kivity, Y. Kamay, D. Laor, U. Lublin, and A. Liguori. “kvm: the
Linux Virtual Machine Monitor,” In Proceedings of the Linux
Symposium, vol. 1, pp. 225-230, 2007.
[15] Libvirt - The virtualization API. http://libvirt.org/
[16] NCHC Formosa 3 Cloud Cluster. http://formosa3.nchc.org.tw/
[17] NCHC, National Center for High-performance Computing.
http://www.nchc.org.tw/