The emerging cloud computing and socially-enhanced services computing concepts o
ffer 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 for
supporting multi-dimensional elasticity, covering resources (software
and humans), quality (e.g., quality of service and quality of data), and
costs and benefits (e.g., price, rewards and incentives). We then discuss
enabling techniques for supporting multi-dimensional elasticity in
data-, 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.
Elastic Processes on Clouds of Hybrid Services: Principles, Enabling Techniques and Approaches
1. Elastic Processes on Clouds of Hybrid
Services: Principles, Enabling Techniques
and Approaches
Hong-Linh Truong
Distributed Systems Group,
Vienna University of Technology
truong@infosys.tuwien.ac.at
http://www.infosys.tuwien.ac.at/staff/truong
SummerSOC 12, 3 Jul 2012 1
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 2
3. An example of elastic processes
Recap: Schahram‘s presentation yesterday
SummerSOC 12, 3 Jul 2012 3
9. Vienna Elastic Computing Model
multi-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
SummerSOC 12, 3 Jul 2012 9
11. Incorporate humans into a
programming paradigm
• Abstracting human compute units as program elements
Programming • Extending programming languages to support human
languages compute units
• Data/control flows via extensible APIs
• Shared memory (e.g., human –software –
Multiple human), message passing (human-to-human), artifact-
programming centric, etc., via APIs working atop the compute unit
models abstraction layer
• Computing capability /profile management: human
computing power, reputation and incentive models
Execution • Monitoring: monitoring and enforcing
environment incentives/rewards, quality of results, availability
• Communication: between human-middleware, among
ICU/SCU , within SCU for exchanging artifacts and
comprehensing social tasks
SummerSOC 12, 3 Jul 2012 11
12. Incorporate humans into a
programming paradigm program human actions
and dependencies
program incentive condition
Program
elements
and rewarding action
program result evaluation
method
Program languages and programming models
Provisioning/Negotiation/Execution API
IC IC SC
U U U ICU SCU
Abstraction of Human Compute Units
Communication Capability/Profile Software Human-to-middleware
Monitoring
Management Compute interfaces:
Service-based Middleware Units •visualization of collective tasks
•embedding of common forms
•mobile app
Volunteers Professionals
Individual Team 12
SummerSOC 12, 3 Jul 2012
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 14
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 15
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 16
17. Human Power Unit (HPU) – our
starting point
HPU for a particular (skill,
skill level)
HPU for a set of (skill, skill
level), no weighted factors
Decomposition/compositi
on of HPU for a shared
HBS
Given an HBS, its theoretical HPU can be larger
or smaller than its real HPU – unlike SBS
SummerSOC 12, 3 Jul 2012 17
18. HBS Instances Provisioning
Types of • Individual Compute Unit (ICU)
services • Social Compute Unit (SCU
• iICU(CS, HPU, price, utilization,loc
Instances ation, APIs)
Description • iSCU(CS,HPU, price, utilization,co
s nnectedness, location, APIs)
• Other (traditional) NFPs
• utilization
Pricing • offering communication APIs
factors • connectedness
SummerSOC 12, 3 Jul 2012 18
19. Cloud APIs for Provisioning Hybrid
Services
APIs hide low-level platforms and utilize low level HBS
communication interfaces
APIs for HBS information and APIs for HBS execution and
management communication
• listSkills();listSkillLevels();
• listICU();listSCU() • runRequestOnHBS ()
• negotiateHBS() • receiveResultFromHBS()
• startHBS() • sendMessageToHBS()
• suspendHBS () • receiveMessageFromHBS()
• resumeHBS ()
• stopHBS()
• reduceHBS()
• expandHBS() 2012
SummerSOC 12, 3 Jul 19
21. Framework for Utilizing Hybrid
Services
IT Management
Smart City Management
SummerSOC 12, 3 Jul 2012 21
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
22
SummerSOC 12, 3 Jul 2012
23. Programming a combination of
HBS and SBS
e.g., preparing/managing inputs/outputs for HBS using SBS
SummerSOC 12, 3 Jul 2012 23
24. Forming iSCUs
Done by consumers or cloud providers
Business As
Usual
Corrective
Action
HBS
Constraints
SCU Formation
Algorithms
SummerSOC 12, 3 Jul 2012 24
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 25
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 considered
SummerSOC 12, 3 Jul 2012 26
27. Forming iSCU by minimizing cost
and considering no direction
SummerSOC 12, 3 Jul 2012 27
28. Example of star-based iSCU using
Dropbox as a communication hub
SummerSOC 12, 3 Jul 2012 28
29. Change Model for Task Graph’s
Human Power Unit
SummerSOC 12, 3 Jul 2012 29
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 31
32. Beyond QoS metrics (1)
And many more metrics!
SummerSOC 12, 3 Jul 2012 32
33. Beyond QoS metrics (2)
Elastic dynamic properties associated with:
Data marketplaces and DaaS
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 33
34. Elastic Profile Using Rules
process
process
fragment
activity
SummerSOC 12, 3 Jul 2012 34
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 35
37. Runtime quality, cost and benefits
evaluation and reasoning
principles
Runtime:
Elastic
processes
Part A Part B Part C
Quality, cost model i model j model k
and benefits
SummerSOC 12, 3 Jul 2012 37
38. Composable cost evaluation
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
Hong Linh Truong, Schahram Dustdar: Composable cost estimation and monitoring for computational applications in cloud
computing environments. Procedia CS 1(1): 2175-2184 (2010)
38
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, Sweden 3 Jul 2012
SummerSOC 12, 39
Michael 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
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 40
41. Put things together -- IDE for
elastic processes
SummerSOC 12, 3 Jul 2012 41
42. Put things together – from high-level
languages to programmable units
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
ICU ICU SCU ICU SCU
42
Abstraction of Human Compute Units
SummerSOC 12, 3 Jul 2012
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 43
44. Thanks for
your attention
Hong-Linh Truong
Distributed Systems Group
Vienna University of Technology
truong@infosys.tuwien.ac.at
http://www.infosys.tuwien.ac.at/staff/truong
SummerSOC 12, 3 Jul 2012 44