2019 International Conference on Applied Mathematics, Modeling, Simulation and Optimization (AMMSO 2019) ISBN: 978-1-60595-631-2
Survey on Key Technologies in Cloud Workflow System Integration
Yue-hua LIU
College of Computer and Information Engineering, Hunan University of Commerce, Changsha 410205, China
Keywords: Cloud workflow, Multi-agent, Reflective interface, QoS computing.
Abstract. Cloud computing has many unique advantages which can be utilized to facilitate workflow execution. The goal in cloud computing is to allocate only those cloud resources that are truly needed. In this paper, we introduced the cloud workflow system architecture based on Muti Agent(MAS),designed interface agent based on reflective factory pattern, defined paramters of quality of service (QoS) in cloud workflow system and gived QoS’s estimation mode of activitis. The research of the above key technologies Provides a reliable guarantee for the scheduling of the cloud workflow process.
Introduction
Clouds are a large pool of easily usable and accessible virtualized resources. These resources can be dynamically reconfigured to adjust to a variable load, allowing for an optimum resource utilization. Currently, there are many cloud computing platform, Companies like Google, Yahoo, Amazon, eBay and Microsoft have all built Internet consumer services, social networking, web e-mail and online commerce based on cloud computing. In academia, cloud computing is becoming an area of increased focus at a rapid pace. The key component of cloud wokflow management system is enactment engine, that drive the documents, information or task instance activities to flow according to certain rules. However, in some heavy loaded application circumstances, the engine occures bottlenecks. Aiming at the complexity and diversity of workflow application systems, there is growing interest in studying flexible and dynamic workflow management in distributed environment, typically in the Internet applications such as [7],[8],and many researcher have focused on WfMS based on the intelligent agent or multi-agent systems (MAS) to overcome their shortages. “Agent” is one research field in artificial intelligence. The MAS is a loosely coupled systems, through various agent’s cooperation and parallel processing to improve the efficiency of solving complex tasks. In this paper, we will introduce multi-agent’s technique into workflow system to design a workflow’s scheduling engine, which can take fully advantage of agent to overcome the bottlenecks of WfMSs.
The Cloud Workflow System Architecture Based on MAS
Similar to many other workflow systems, scheduling is a very important component in cloud work- flow systems. It directly determines the performance of the whole system. The workflow engine based on MAS is built on the basis of the distributed service, the system’s enactment engine will cooperate with a number of engines which are distributed in different process nodes to complete the workflow instance. The Fig.1 is the cloud workflow system based on MAS, the system consists of allocation agent, resolution agent, transfer agent, QOS control agent, process agent and resource
(2)Resolution Agent will analyse the lexical and syntax of WPDL(workflow process definition language) files generated by workflow modeling tools, the results of the WPDL file’s analysis are written into the Model DB, identifing deterministic or non deterministic activities of business.
Figure 1. Configuration of Muti-Agent workflow engine.
Task 1
Task i Task 0
Resource Agent
Process Agent
QOS Agent Transfer Agent
Resource Agent
Interface Agent
Local
DB Instance
Task 2 Resource Agent
...
Task n
Interface Agent
Local
DB Instance
Figure 2. The task resolution of workflow instance.
[image:2.595.182.414.447.650.2](4)Execution Agent is in charge of implementation of the instance activities, driving active states to transit. During the excution of instance processes, this agent want to interact with Allocation Agent and Resource Agent.
(5)Resource Agent is in charge of the management and allocation of resources, interacting with Allocation Agent and Execution Agent. Model DB provides workflow execution with various model (eg.,organization model, resource model, process model, etc.),and provides business processes with the necessary resources (eg., user, material, equipment).
(6)Transfer Agent is in charge of the communication and coordination between agents, reducing the collision caused by parallel operations, balancing load.
(7)Control Agent is monitorring and managing the situation of process execution. at the same time, tracing the activities’ situation such as: timeout of process execution, interrupt, overload, etc. ,and the monitor records will ben stored into the Log DB.
(8)Interface Agent is in charge of the access of information between agent and database, integration of workflow management system with kinds of the information systems (eg.,OA, ERP, CRM, MIS, etc.) and the interaction of human with computer.
While system through the Interface Agent receiving a task, first, resolving the task into multiple subtasks (task nodes), these subtasks are assigned to Execution Agent, under the management and cooperation of the Control Agent and Transfer Agent, the Execution Agent then invoke(share) the system resource and accomplish the task’s processes. Fig.2 is the illustration of the task resolution. The resource allocation policy is as follows:
Setp1: First, Resolution Agent requests Resource Agent to search for resources (data) which can be used to implement this task, then, selecting the optimizing re-source to finish this task.
Step2: If the resource can’t be allocated, the Resource Agent sending a failue message to the Process Agent, the Process Agent will search and acquire the sound resources to execute this tasks.
The Adaptive Interface Agent of Cloud Work flow System
[image:3.595.195.401.489.589.2]The abstract interface based on factory pattern is shown in Fig.3,the invokers(A) obtains the callee’s (B1,B2,…,Bn) instance through the factory class, in this way, there is not direct quotation of callee in the invoker’s codes, so that it realizes the invoker and the callee’s decoupling.
...
Figure 4. The interface structure based on reflection pattern.
But, factory pattern can’t solve all the dependences in workflow systems, for example, when complicate workflow software module which application integrates with will be unable to know in advance and it is unable to use the factory pattern to come in the instantiation application.
The workflow management system management system must provide a set of mechanism to support dynamic adaptation, the reflection techniques are as following:
In programming languages, refection has been used to provide an auxiliary interface to the language, one that enables a language’s designer(s) to incrementally modify its behaviour and implementation whether compiled or interpreted.
This interface is known as a meta object protocol, and is based on the idea that one can open languages up, allowing users to adjust the design and implemen-tation to suit their particular needs.
According to idea of reflection, the API’s structure in of workflow system interface was shown in fig.4., there are no dependences between invoker (A) and callees (B1, B2,…, Bn) ,moreover, the factory class has no dependence with any concrete invoked class, so that, the factory may realize to load the invoked components on demand. So long as a component has realized the interface IB, through the configuration files, this component may be assembled into the factory as a service ,then, the invoker may call the factory class method (GetClass) to search the callee’s service needed, through the method (CreateInstance) provided by this service, can get the the callee’s instace calss.
In Fig.4,Create Factory is the method to get factroy instance: reading the configuraton file from factory class’s construction function, then, acquiring components information in current system configuration, encapasulating this information to some services stored into Components set. When encapasulating a service, the information about interface, reliztion class, program set, etc. must be defined. First, we define the interface “Idepartment” in the workflow system, then, realize this interface in application program. The use of API are described as follow:
Step1: Defines the reflection based factory interface structure: Idepartment;
Step2: Realizes API in the application program, by compiling to generates the application program set: Organization.dll;
Step3: Write the information (parameters) of program set into configuration file;
The QoS Calculation in Cloud Workflow System
The customers in cloud system are divided into two types: the providers of service resource and the users of service resource. Different service providers provide the services which have the same functions of service but different quality of service. According to the characteristics of cloud workflow, we selected five parameter (such as time, cost, reliability, availability and reputation) to construct cloud workflow QoS parameter system, using a five tuple QoS= (QT, QC, QR, QA, QP) to describe service quality, QT, QC, QR, QA, QP respectively denote the time, cost, reliability, availability, reputation of some candidate service correspondding to the task.
The Parameter Calculation of QoS
Time (QT): Refers to the entire workflow execution time, but also the total span of time, Cost (QC): Refers to
the executive pay cost, including the pay of management workflow and use of cloud resource, Reliabilit (QR): Indicates the executive ability of a service which can be executed successfully, is the ratio of the
number of successful execution services and the total number of the execution services. This parameter relate to the factors ,eg. authentication, authorization, confidentiality and trust in the process of workflow execution, Availability (QA): Indicates the ability of service pro-viding under certain conditions and within
the specified time. the value of the availability of a service is the ratio of the service running time and the total time. The availability relate to usually reliability parameter. Reputation (QP): Refers to a measure of its
[image:5.595.187.399.406.534.2]trust worthiness. The reputation mainly depends on the user experience. Different users may have different opinions on the same service. A Cloud workflow is composed of a plurality of activities, a workflow can be considered a composited activity. The QoS parameters calculation method for each activity can be determined corresponding on the basic flow control con- struct. (see Fig. 5): sequential construct, parallel construct, choice construct, loop construct, etc.
Figure 5. The basic control construct of cloud workflow.
In Fig. 5(a), a task is composed of sub activities, and, each activity performs sequentially, the formula for calculating the QoS’s parameters as follows, n is the number of sub activities, ai is the sub activities.
) ( Q Q n 1 i T
T
ai
Q n Q ( )
1 i
C C
ai
Q Q (ai)
n 1 i R R
Q Q (ai)
n 1 i A A
Q n Q ( )
1
i P
P
ai
(1) In Fig. 5(b), the sub activities included in the process can be executed in parallel, the formula for calculating the QoS’s parameters as follows, n is the number of parallel sub active-ties.
) (a Q Q i n 1 i R R
Q {QT(ai )} n 1 ι T Max
Q Q ( ) n
1 i
C C
ai
Q Q (ai) n 1 i A A
Q ( )
1
Q n
1 i
P
P ai
N
In Fig.5(c), the task can be performed by selecting a sub activity from the multiple branches, the formula for calculating the QoS’s parameters as follows:
i i p a
) ( Q Q n 1 i TT
ai pi ) ( Q Q n 1 i C
C
ai pi ) ( Q Q n 1 i R
R ai pi
) ( Q Q n 1 i A
A
ai pi ) ( Q Q n 1 i P P (3) In Fig. 5(d), in the task process, the sub activities can be executed repeatedly, the formula for calculating the QoS’s parameters as follows:
) ( Q Q n 1 i T T m
ai
Q n Q ( )
1 i
C C m
ai m ) ) (a Q ( Q i n 1 i R R
Q ( Q (a ))m
i n 1 i A A
Q 1 Q ( )
n
1 i
P
P ai
N
(4) In (4), n is the number of loop sub activity, m is the number of cycles.
Estimation of Cloud Workflow QoS
First, defining a function Get_QoS_value (active_mode), which will return each dimensional QoS
parameters value of the activity according to the control structure type of activity, The procedure of algorithm is as follow:
Step1: Initialization.
for(i =0; i <5; i++) *QoS[i] =0; //set each dimensional parameters of QoS to 0 . Step2: Acquisition of the flow information.
//According to the constructs of activities in the instance workflow, then gaining the workflow’s number of layer (denote as layer_num) and the activity’s type of each layer, this information will be stored in a array layer_flow [layer _no,*activity_mode], analogy, gaining the number of activity (denote as layer1_num) and types of the outermost layer.
Step3: Recursive estimation. for (j=1;j<=layer1_num;j++) {
*QoS=GetQoSvalue(*layer_flow. active_mode)
// According to the calculating order from inside to outside layer, recursive decomposing all nested sub activities, the results will be stored in *QoS[ ].
}
return *QoS
Summary
method of cloud workflow service quality, which can provide a reasonable basis for process scheduling under the QoS constraint.
Acknowledgements
This research was financially supported by “Social Science Foundation of Hunan Province (Grant No. 11YBB 229)”.
References
[1] Vaquero, L. M., Rodero-Merino, L., Caceres, J. and Lindner, M A Break in the clouds: towards a cloud definition. ACM SIGCOMM Computer Communication Review 39(1):50–55,2008.
[2] Ke Liu, Hai Jin, Jinjun Chen, Xiao Liu , Dong Yuan,Yun Yang. A Compromised-Time-Cost
Scheduling Algorithm in SwinDeW C for Instance Intensive Cost-Constrained Workflows on a Cloud Computing Platform, The Interna-tional Journal of High Performance Computing Applica- tions,24(4) 445– 456,2010.
[3] M. Tanaka and O. Tatebe, “Workflow scheduling to minimize data movement using multi-constraint graph partitioning,” in Proc. of the 12th IEEE/ACM Int. Symp. on Cluster, Cloud and Grid Computing (CCGRID), 2012, pp. 65–72.
[4] R. Kishore, H. Zhang, and R. Ramesh, “Enterprise integration using the agent paradigm: foundations of multi-agent-based integrative business information systems”, Decision Support Systems, Vol. 42, No.3,2006, pp. 48–78.
[5] A. Aerts, N. Szirbik and J. Goossenaerts, “The flexible agent based infrastructure for virtual enterprises”, International Journal of Computers in Industry, Vol. 49, No.3, 2002, pp. 311–328.
[6] NN.R. Jennings, “An agent based approach for building complex software systems”, Communications of the ACM, Vol. 44,No.4,2001, pp. 35– 41.
[7] R. Sikora and M.J. Shaw, “A multi-agent framework for the coordination and integration of information systems”, Management Science, Vol.. 44, No.11, 1998, pp. 65–78.
[8] Brian Ellis, Jeffrey Stylos, and Brad Myers, “The Factory Pattern in API Design: A Usability Evaluation”, the proceedings of ICSE 2007
[9] Edmond D, Arthur H M. “A reflective infastructure for workflow adaptability”, Data & Knowledge Engineering,Vol.34,No. 3,2000,pp. 271-304.
[10]Yu, J. and Buyya, R.. Scheduling scientific workflow applications with deadline and budget constraints using genetic algorithms. Scientific Programming Journal 14(3–4): 217–230, 2006.
[11]Qian Tao, Huiyou Chang, Yang Yi, Chunqin Gu, Yang Yu. “QoS Constrained Grid Workflow