elastic processes on clouds of hybrid services: principles, enabling techniques and approaches

44
Elastic Processes on Clouds of Hybrid Services: Principles, Enabling Techniques and Approaches Hong-Linh Truong Distributed Systems Group, Vienna University of Technology [email protected] http://www.infosys.tuwien.ac.at/ staff/truong 1 SummerSOC 12, 3 Jul 2012

Upload: hong-linh-truong

Post on 19-Nov-2014

414 views

Category:

Education


1 download

DESCRIPTION

The emerging cloud computing and socially-enhanced services computing concepts offer several service models, including software-based and human-based services, for programming elastic composite applications utilizing human and software capabilities. However, the current view of elasticity still is centered on the elasticity of software resources. In this talk, we will systematically conceptualize principles forsupporting multi-dimensional elasticity, covering resources (softwareand humans), quality (e.g., quality of service and quality of data), and costs and benefits (e.g., price, rewards and incentives). We then discussenabling techniques for supporting multi-dimensional elasticity indata-, compute- and human-intensive processes. Finally, we will discuss some initial results and approaches on modeling multi-dimensional elasticity, programming software and human services, and elasticity reasoning.

TRANSCRIPT

Page 1: Elastic Processes on Clouds of Hybrid Services: Principles, Enabling Techniques and Approaches

SummerSOC 12, 3 Jul 2012 1

Elastic Processes on Clouds of Hybrid Services: Principles, Enabling Techniques

and Approaches

Hong-Linh Truong Distributed Systems Group,

Vienna University of Technology

[email protected]://www.infosys.tuwien.ac.at/staff/truong

Page 2: Elastic Processes on Clouds of Hybrid Services: Principles, Enabling Techniques and Approaches

2

Acknowledgement: some results from joint works with: Kamal Bhattacharya, Schahram Dustdar, Muhammad Zuhri Catur Candra, Aditya Ghose, Lam-Son Le, Frank Leymann, Vitaliy Liptchinsky, Tran-Vu Pham, Michael Reiter, Mirela Riveni, Ognjen Scekic, Quang-Hieu Vu, and Rostyslav Zaboloznyi

SummerSOC 12, 3 Jul 2012

Page 3: Elastic Processes on Clouds of Hybrid Services: Principles, Enabling Techniques and Approaches

3

An example of elastic processes

Recap: Schahram‘s presentation yesterday

SummerSOC 12, 3 Jul 2012

Page 4: Elastic Processes on Clouds of Hybrid Services: Principles, Enabling Techniques and Approaches

4

Hybrid services in the cloud

SummerSOC 12, 3 Jul 2012

Page 5: Elastic Processes on Clouds of Hybrid Services: Principles, Enabling Techniques and Approaches

5

How to realize elasticity in hybrid systems?

Attention: ongoing work not everything is well tested !

SummerSOC 12, 3 Jul 2012

Page 6: Elastic Processes on Clouds of Hybrid Services: Principles, Enabling Techniques and Approaches

6

Outline

Vienna Elastic Computing Model Incorporating humans into programming

paradigms Programming hybrid services in the cloud Modeling elasticity constraints Reasoning elasticity constraints Conclusions and future work

SummerSOC 12, 3 Jul 2012

Page 7: Elastic Processes on Clouds of Hybrid Services: Principles, Enabling Techniques and Approaches

7

VIENNA ELASTIC COMPUTING MODEL

SummerSOC 12, 3 Jul 2012

Page 8: Elastic Processes on Clouds of Hybrid Services: Principles, Enabling Techniques and Approaches

SummerSOC 12, 3 Jul 2012 8

Multi-dimensional Elasticity

Units can be networks, middleware, SaaS, PaaS

Page 9: Elastic Processes on Clouds of Hybrid Services: Principles, Enabling Techniques and Approaches

SummerSOC 12, 3 Jul 2012 9

Vienna Elastic Computing Modelmulti-dimensional elasticity, service computing models and cloud provisioning models

Schahram Dustdar, Hong-Linh Truong, "Virtualizing Software and Humans for Elastic Processes in Multiple Clouds - a Service Management Perspective" International Journal of Next-Generation Computing, To appear, 2012

Page 10: Elastic Processes on Clouds of Hybrid Services: Principles, Enabling Techniques and Approaches

SummerSOC 12, 3 Jul 2012 10

INCORPORATING HUMANS INTO PROGRAMMING PARADIGM

Page 11: Elastic Processes on Clouds of Hybrid Services: Principles, Enabling Techniques and Approaches

11

Incorporate humans into a programming paradigm

• Abstracting human compute units as program elements• Extending programming languages to support human

compute units• Data/control flows via extensible APIs

Programming languages

• Shared memory (e.g., human –software – human), message passing (human-to-human), artifact-centric, etc., via APIs working atop the compute unit abstraction layer

Multiple programming

models

• Computing capability /profile management: human computing power, reputation and incentive models

• Monitoring: monitoring and enforcing incentives/rewards, quality of results, availability

• Communication: between human-middleware, among ICU/SCU , within SCU for exchanging artifacts and comprehensing social tasks

Execution environment

SummerSOC 12, 3 Jul 2012

Page 12: Elastic Processes on Clouds of Hybrid Services: Principles, Enabling Techniques and Approaches

12

Incorporate humans into a programming paradigm

Volunteers ProfessionalsTeamIndividual

Service-based Middleware

CommunicationMonitoringCapability/Profile

Management

Provisioning/Negotiation/Execution API

Abstraction of Human Compute Units

SCU

ICU

ICU ICU SCU

Program languages and programming models

Program elements

Software Compute

Units

program human actions and dependenciesprogram incentive condition and rewarding actionprogram result evaluation method

Human-to-middleware interfaces:• visualization of collective

tasks• embedding of common

forms• mobile app

SummerSOC 12, 3 Jul 2012

Page 13: Elastic Processes on Clouds of Hybrid Services: Principles, Enabling Techniques and Approaches

13

Existing technologies are not adequate

SummerSOC 12, 3 Jul 2012

Page 14: Elastic Processes on Clouds of Hybrid Services: Principles, Enabling Techniques and Approaches

14

PROGRAMMING HYBRID SERVICES IN THE CLOUD

Hong-Linh Truong, Schahram Dustdar, Kamal Bhattacharya, Programming Hybrid Services in the Cloud, Working paper,2012

SummerSOC 12, 3 Jul 2012

Page 15: Elastic Processes on Clouds of Hybrid Services: Principles, Enabling Techniques and Approaches

15

HBS Communication Interface

Based on well known technologies for integrating human requests/responses into SBS Emails, web interfaces, Web services, etc.

Some special characteristics The same protocol can be used for multiple layers

(middleware, application, OS) -- unlike in SBS Only asyschronous communication and unknown

upper-bound delay

Can support message passing and shared memory models hbsi hbsj or hbsi sbs hbsj

SummerSOC 12, 3 Jul 2012

Page 16: Elastic Processes on Clouds of Hybrid Services: Principles, Enabling Techniques and Approaches

16

Human Power Unit (HPU)

Humans are determined via skills/skill levels A particular HBS cloud can define its own sets of

skills (CS) and skill levels (SK) Similar to Amazon defines its own EC unit Different ways to make sure skill and skill levels

declared in a cloud consistent (e.g., via testing and monitoring).

HPU Definition: HPU is a value describing the computing power of an HBS measured in an abstract unit. A cloud of HBS has a pre-defined basic power unit, hpuθ, corresponding to the baseline skill bsθ of the cloud.”

SummerSOC 12, 3 Jul 2012

Page 17: Elastic Processes on Clouds of Hybrid Services: Principles, Enabling Techniques and Approaches

17

Human Power Unit (HPU) – our starting point

Given an HBS, its theoretical HPU can be larger or smaller than its real HPU – unlike SBS

HPU for a particular (skill, skill level)

HPU for a set of (skill, skill level), no weighted factors

Decomposition/composition of HPU for a shared HBS

SummerSOC 12, 3 Jul 2012

Page 18: Elastic Processes on Clouds of Hybrid Services: Principles, Enabling Techniques and Approaches

18

HBS Instances Provisioning

• Individual Compute Unit (ICU)• Social Compute Unit (SCU

Types of services

• iICU(CS, HPU, price, utilization,location, APIs)

• iSCU(CS,HPU, price, utilization,connectedness, location, APIs)

• Other (traditional) NFPs

Instances Description

s

• utilization• offering communication APIs• connectedness

Pricing factors

SummerSOC 12, 3 Jul 2012

Page 19: Elastic Processes on Clouds of Hybrid Services: Principles, Enabling Techniques and Approaches

SummerSOC 12, 3 Jul 2012 19

Cloud APIs for Provisioning Hybrid Services

APIs hide low-level platforms and utilize low level HBS communication interfaces

APIs for HBS information and management

•listSkills();listSkillLevels();•listICU();listSCU()•negotiateHBS()•startHBS()•suspendHBS ()•resumeHBS ()•stopHBS()•reduceHBS()•expandHBS()

APIs for HBS execution and

communication •runRequestOnHBS ()•receiveResultFromHBS()

•sendMessageToHBS() •receiveMessageFromHBS()

Page 20: Elastic Processes on Clouds of Hybrid Services: Principles, Enabling Techniques and Approaches

20

Prototype (simulated environment)

Combined with Jcloud/boto for real SBS

SummerSOC 12, 3 Jul 2012

Page 21: Elastic Processes on Clouds of Hybrid Services: Principles, Enabling Techniques and Approaches

SummerSOC 12, 3 Jul 2012 21

Framework for Utilizing Hybrid Services

IT ManagementSmart City Management

Page 22: Elastic Processes on Clouds of Hybrid Services: Principles, Enabling Techniques and Approaches

22

Modeling HPU-aware Task Dependency Graphs

Link management skills and compliance constraints to tasks required HBS

Can be specified in TOSCA!Modeled in dependency graphs

SummerSOC 12, 3 Jul 2012

Page 23: Elastic Processes on Clouds of Hybrid Services: Principles, Enabling Techniques and Approaches

23

Programming a combination of HBS and SBS

e.g., preparing/managing inputs/outputs for HBS using SBS

SummerSOC 12, 3 Jul 2012

Page 24: Elastic Processes on Clouds of Hybrid Services: Principles, Enabling Techniques and Approaches

24

Forming iSCUs Done by consumers or cloud providers

SCU Formation Algorithms

Business As Usual

Corrective Action

HBS Constraints

SummerSOC 12, 3 Jul 2012

Page 25: Elastic Processes on Clouds of Hybrid Services: Principles, Enabling Techniques and Approaches

25

Configuring iSCU

Establish „connectedness“ based on compliance constraints and network topology Addional cost might occur!

Program SBS and HBS for the iSCU to have a complete working environment.

Different connectedness E.g., Ring-based, star-based, and master-slave

topologies

SummerSOC 12, 3 Jul 2012

Page 26: Elastic Processes on Clouds of Hybrid Services: Principles, Enabling Techniques and Approaches

26

Selecting HBS: Some algorithms

Several algorithms can be built based on existing team formation algorithms which do not consider dependency graphs

Different weighted factors can be consideredSummerSOC 12, 3 Jul 2012

Page 27: Elastic Processes on Clouds of Hybrid Services: Principles, Enabling Techniques and Approaches

27

Forming iSCU by minimizing cost and considering no direction

SummerSOC 12, 3 Jul 2012

Page 28: Elastic Processes on Clouds of Hybrid Services: Principles, Enabling Techniques and Approaches

SummerSOC 12, 3 Jul 2012 28

Example of star-based iSCU using Dropbox as a communication hub

Page 29: Elastic Processes on Clouds of Hybrid Services: Principles, Enabling Techniques and Approaches

29

Change Model for Task Graph’s Human Power Unit

SummerSOC 12, 3 Jul 2012

Page 30: Elastic Processes on Clouds of Hybrid Services: Principles, Enabling Techniques and Approaches

30

MODELING ELASTICITY CONSTRAINT

SummerSOC 12, 3 Jul 2012

Page 31: Elastic Processes on Clouds of Hybrid Services: Principles, Enabling Techniques and Approaches

31

Elasticitiy modeling

• Beyond traditional QoS metrics and for only services

• Modeling elasticity constraints• Attaching elasticity constraints to processes at

the design time for composition and runtime elasticity

SummerSOC 12, 3 Jul 2012

Page 32: Elastic Processes on Clouds of Hybrid Services: Principles, Enabling Techniques and Approaches

32

Beyond QoS metrics (1)

And many more metrics!

SummerSOC 12, 3 Jul 2012

Page 33: Elastic Processes on Clouds of Hybrid Services: Principles, Enabling Techniques and Approaches

33

Beyond QoS metrics (2)

Data marketplaces and DaaSElastic dynamic properties associated with:Service APIs, data APIs and data assets

Quang Hieu Vu, Tran Vu Pham, Hong-Linh Truong, Schahram Dustdar, Rasool Asal, DEMODS: A Description Model for Data-as-a-Service, The 26th IEEE International Conference on Advanced Information Networking and Applications (AINA-2012)

SummerSOC 12, 3 Jul 2012

Page 34: Elastic Processes on Clouds of Hybrid Services: Principles, Enabling Techniques and Approaches

34

Elastic Profile Using Rules

process

process fragment

activity

SummerSOC 12, 3 Jul 2012

Page 35: Elastic Processes on Clouds of Hybrid Services: Principles, Enabling Techniques and Approaches

35

Declarative constraints based first-order logic and set theory

Lam-Son Le, Hong-Linh Truong, Adytia Ghose, Schahram Dustdar, On Elasticity and Constrainedness of Business Services Provisioning, 9th International Conference on Services Computing (SCC 2012)

SummerSOC 12, 3 Jul 2012

Page 36: Elastic Processes on Clouds of Hybrid Services: Principles, Enabling Techniques and Approaches

SummerSOC 12, 3 Jul 2012 36

REASON THE ELASTICITY CONSTRAINTS

Page 37: Elastic Processes on Clouds of Hybrid Services: Principles, Enabling Techniques and Approaches

SummerSOC 12, 3 Jul 2012 37

Runtime quality, cost and benefits evaluation and reasoning principles

Part A Part B Part C

model i model j model k

Runtime: Elastic processes

Quality, cost and benefits

Page 38: Elastic Processes on Clouds of Hybrid Services: Principles, Enabling Techniques and Approaches

38

Composable cost evaluation

Hong Linh Truong, Schahram Dustdar: Composable cost estimation and monitoring for computational applications in cloud computing environments. Procedia CS 1(1): 2175-2184 (2010)

Tran Vu Pham, Hong-Linh Truong, Schahram Dustdar "Elastic High Performance Applications - A Composition Framework", The 2011 Asia-Pacific Services Computing Conference (IEEE APSCC 2011), (c) IEEE Computer Society, December 12 - 15, 2011, Jeju, Korea

SummerSOC 12, 3 Jul 2012

Page 39: Elastic Processes on Clouds of Hybrid Services: Principles, Enabling Techniques and Approaches

SummerSOC 12, 3 Jul 2012 39

Runtime evaluation of quality of data in workflows

Michael Reiter, Uwe Breitenbuecher, Schahram Dustdar, Dimka Karastoyanova, Frank Leymann, Hong-Linh Truong, A Novel Framework for Monitoring and Analyzing Quality of Data in Simulation Workflows, (c)IEEE Computer Society, The 7th IEEE International Conference on e-Science, 5-8 December, 2011, Stockholm, SwedenMichael Reiter, Hong-Linh Truong, Schahram Dustdar, Dimka Karastoyanova, Robert Krause, Frank Leymann, Dieter Pahr, On Analyzing Quality of Data Infuences on Performance of Finite Elements driven Computational Simulations, EuroPar 2012

Page 40: Elastic Processes on Clouds of Hybrid Services: Principles, Enabling Techniques and Approaches

40

Incentive Monitoring

Ognjen Scekic, Hong-Linh Truong, Schahram Dustdar, "Modeling Rewards and Incentive Mechanisms for Social BPM",, Short paper, 10th International Conference on Business Process Management (BPM2012), (c)Springer-Verlag, September 3-6, 2012, Tallinn, Estonia

SummerSOC 12, 3 Jul 2012

Page 41: Elastic Processes on Clouds of Hybrid Services: Principles, Enabling Techniques and Approaches

41

Put things together -- IDE for elastic processes

SummerSOC 12, 3 Jul 2012

Page 42: Elastic Processes on Clouds of Hybrid Services: Principles, Enabling Techniques and Approaches

Put things together – from high-level languages to programmable units

42

Statelet: a declarative coordination language for collaboration processes

Statelet statements can be mapped to APIs for programmable units

Vitaliy Liptchinsky, Roman Khazankin, Hong Linh Truong, Schahram Dustdar: Statelets: Coordination of Social Collaboration Processes. COORDINATION 2012

Provisioning/Negotiation/Execution API

Abstraction of Human Compute Units

SCUICUICU ICU SCU

SummerSOC 12, 3 Jul 2012

Page 43: Elastic Processes on Clouds of Hybrid Services: Principles, Enabling Techniques and Approaches

43

Conclusions and Future Work

Novel models and APIs are needed for integrating humans into program paradigms

We need to address the whole stack Elasticity modeling, monitoring and reasoning Mapping high level languages to APIs of hybrid services

Future works Several issues mentioned here are ongoing work Declarative languages for specifying elasticity Methods for evaluation and experiments

Some open questions will be addressed in FP7 CELAR

SummerSOC 12, 3 Jul 2012

Page 44: Elastic Processes on Clouds of Hybrid Services: Principles, Enabling Techniques and Approaches

44

Thanks for your attention

Hong-Linh TruongDistributed Systems GroupVienna University of [email protected]://www.infosys.tuwien.ac.at/staff/truong

SummerSOC 12, 3 Jul 2012