Execution coordination in mobile agent-based distributed job workflow execution
Introduction
Complex scientific applications can generally be viewed as job workflows in which subjobs (i.e., nodes or activities) represent application components and dependencies represent the interactions between the components. In a Service Oriented Architecture (SOA), common application components are usually deployed as services. A workflow engine coordinates the data and control flow amongst multiple services and allows the enactment of workflows to take advantages of distributed services and resources.
Data intensive scientific applications, such as bioinformatics [21] and digital imaging survey (e.g., Sloan Digital Sky Survey (SDSS) [1]), often involve diverse, high volume, and distributed data sets. They can be generally expressed as a workflow of a number of analysis modules, each of which acts on specific sets of data and performs cross multidisciplinary computations.
To reduce the communication overhead caused by data movement and to provide decentralized control of execution during the workflow enactment, the Mobile Code Collaboration Framework (MCCF) is developed to map the execution of subjobs to the distributed resources and to coordinate the subjobs’ execution at runtime according to the abstract workflow provided by users [16]. Light-weight Mobile Agent (LMA) [6] and Code-on-Demand (CoD) [18] techniques are adopted in the development of the MCCF, so that an analysis module in data intensive scientific applications can be executed at a computational resource close to where the required data set is located.
The MCCF, which does not have a centralized engine, is different from the existing scientific workflow engines (e.g., Condor’s DAGMan,1 SCIRun2). When multiple data independent subjobs can be executed concurrently, replicas of an exiting LMA will be generated so that there is one LMA for each subjob. The LMAs will then be migrated to the different computational resources for the execution of these data independent subjobs in parallel. Because of the data dependencies in a job workflow, before an LMA executes a subjob, it needs to locate the execution results of its predecessors. When multiple concurrently executing subjobs have a common immediate successor, only one of the corresponding LMAs should be selected for the latter’s execution. Others should be discarded. Due to the lack of a centralized engine, execution coordination is therefore required in the MCCF. So, the objective of the paper is to investigate and evaluate execution coordination technique for the MCCF.
Execution coordination of mobile agents is a well researched area. There are many techniques that have been developed. Section 2 gives a classification of these techniques according to how they can be applied in the mobile agent-based distributed job workflow execution. To further analyze their applicability, the MCCF and how these coordination techniques can be implemented in the MCCF are presented in Section 3. A comparative, experimental study of these coordination techniques is presented in Section 4. Section 5 concludes the paper and outlines the future work.
Section snippets
Classification of execution coordination techniques
According to how a subjob obtains the locations of its predecessors’ execution results, the execution coordination techniques for mobile agnets (MAs) can be classified into indirect and direct coordinations. In indirect coordination, agent interacts with a shared third party for subjob result sharing [8]. There is no explicit communication between two mobile agents executing subjobs. That is, a subjob obtains the locations of its predecessors’ execution results through accessing the shared
Application in MCCF
In order to put the discussion into perspective and to understand the performance trade-off of each coordination approach, in this section, we first describe the mobile code collaboration framework (MCCF). The implementation of the selected approaches in the MCCF will then be discussed.
Performance evaluation
Most researchers adopting mobile agent techniques take the exception handling as an important issue. Context-aware [7] error detection and recovery mechanisms for the linda like approach or LIME-based approach were proposed in [3], [14], [23]. More relevantly, a classification of workflow execution exceptions and corresponding exception monitoring, detection, and handling was proposed in the context of mobile agent-based distributed workflow execution [11]. The experimental results showed that
Conclusions
The MCCF is a framework to support mobile agent-based distributed job workflow execution. In mobile agent-based distributed job workflow execution, execution coordination is required to support data dependencies amongst subjobs. This paper gives a classification of execution techniques according to how they can be applied in the mobile agent-based distributed job workflow execution. To further analyze their applicability and study their efficiency, the implementation of three coordination
Yuhong Feng received her B.Sc. in Computer Science from University of Science and Technology of China (China). She is now a Ph.D. candidate in Nanyang Technological University (NTU, Singapore) and a research associate in The Hong Kong Polytechnic University. She was a research assistant in Intelligent Systems Centre (IntelliSys), NTU. Her areas of interest are distributed workflow management, agent and agent augmentation, machine learning, and pervasive Computing.
References (34)
- et al.
The maxBCG technique for finding galaxy clusters in SDSS data
Bulletin of the American Astronomical Society
(1999) - J. Annis, Y. Zhao, J. Voeckler, M. Wilde, S. Kent, I. Foster, Applying chimera virtual data concepts to cluster finding...
- B. Arief, A. Iliasov, A. Romanovsky, On using the CAMA framework for developing open mobile fault tolerant agent...
Inductive reasoning and bounded rationality
The American Economic Review (papers and proceedings of the Hundred and Sixth Annual Meeting of the American Economic Association (1994))
(1994)- L. Barriere, P. Flocchini, P. Fraigniaud, N. Santoro, Election and rendezvous of anonymous mobile agents in anonymous...
- R. Brandt, H. Reiser, Dynamic adaptation of mobile agents in heterogeneous environments, in: Proceedings of the Fifth...
- J. Burrell, G.K. Gay, Collectively defining context in a mobile, networked computing environment, in: Proceedings of...
- G. Cabri, L. Leonardi, F. Zambonelli, Coordination in mobile agent applications, Technical Report DSI-97-24,...
- G. Cabri, L. Leonardi, F. Zambonelli, The impact of the coordination model in the design of mobile agent applications,...
- et al.
Mobile-agent coordination models for Internet applications
IEEE Computer
(2000)
Path pruning in mailbox-based mobile agent communications
Journal of Information Science and Engineering
Cited by (5)
Workflow management and mobile agents: How to get the best of both approaches
2013, Enterprise Resource Planning: Concepts, Methodologies, Tools, and ApplicationsWorkflow management and mobile agents: How to get the best of both approaches
2012, Ubiquitous Multimedia and Mobile Agents: Models and ImplementationsQoS scheduling of fuzzy strategy grid workflow based on the bio-network
2011, International Journal of Computational Science and EngineeringWhat agents can do in workflow management systems
2011, Artificial Intelligence ReviewOn performance improvement issues in unordered tuple space based mobile middleware
2010, Proceedings of the 2010 Annual IEEE India Conference: Green Energy, Computing and Communication, INDICON 2010
Yuhong Feng received her B.Sc. in Computer Science from University of Science and Technology of China (China). She is now a Ph.D. candidate in Nanyang Technological University (NTU, Singapore) and a research associate in The Hong Kong Polytechnic University. She was a research assistant in Intelligent Systems Centre (IntelliSys), NTU. Her areas of interest are distributed workflow management, agent and agent augmentation, machine learning, and pervasive Computing.
Wentong Cai is an Associate Professor with the School of Computer Engineering at Nanyang Technological University (NTU), Singapore, and head of the Computer Science Division. He received his Ph.D. in Computer Science from University of Exeter (UK). He was a Post-doctoral Research Fellow at Queen’s University (Canada) before joining NTU in February 1993. His research interests include Parallel & Distributed Simulation, Grid & Cluster Computing, and Parallel & Distributed Programming Environments. He has authored or co-authored over 180 journal and conference papers in the above areas. He is a member of the IEEE. He is currently an associate editor of ACM Transactions on Modeling and Computer Simulation (TOMACS), editorial board member of Multiagents and Grid Systems – An International Journal, and editorial board member of International Journal of Computers and Applications.