Keywords:cloud computing, human computing, elasticity strategy, elasticity modeling tool.
In the plethora of cloud computing today, elastic computing has emerged as a popular solution approach for on-demand computing resources' provisioning. Many efforts have been undertaken to achieve resource elasticity. Today, such dynamic resource provisioning is used not only in machine-based computing systems but also in mixed systems containing machine- and human-based computing elements (e.g. crowdsourced human workers).
Elasticity defines one key quality of cloud computing: resources must be managed by scaling up and down as needed so that limited resources can be offered for potentially unlimited use. When designing a system with elastic behavior, it is important to consider not only the resources but also the trade-offs between cost and quality. As part of our ongoing research in elastic computing, we present a framework for modeling elastic behavior of mixed systems with respect to these trade-offs.
The contributions of our framework are:
- Elasticty Profile (EP) which specifies constructs that can be used to model trade-offs and the dynamic provisioning of resources; and
- A conceptual runtime framework for EP as a mechanism and platform for EP deployment and execution.
In our framework, elastic behavior is modeled by the notion of Elasticity Profile (EP). An EP can be used in application layer or platform layer. On the application layer an EP can be attached to workflows or distibuted applications. And on platform layer an EP can be used to complement the system configuration. An EP contains constructs to define objects, metrics, behavior, and activities. Below is the complete grammar of EP.
To be meaningful and useful, the objects, metrics, and activities defined in Elasticity Profile (EP) must be bound to real entities in the system at runtime. The runtime binding mechanism is defined separately from EP. The binding could utilize standards protocols for remote invocations such as Remote Procedure Call (RPC) or Web service protocols (e.g. Java RMI, SOAP, RESTful, etc). Below is an example of EP's runtime binding using RESTful.
The use cases presented here exemplify some main features of our EP model.
Crowdsourced IT Support System
Here we present a typical workflow for a crowdsourced IT support system and model its elasticity. During the execution of the workflow, these support tasks will be created and published to a pool of crowdsourced workers. This is where the elasticity comes into play. Traditionally, when a task is submitted to a crowdsourcing marketplace, the cost and quality constraints of a task are predefined. However, in our example system, we want to have a trade-off between cost and quality based on the dynamics of the marketplace. There are two types of support tasks based on the customer type: normal supoort task, and premium support task. These two types of tasks has different elasticity rules as follows.
Rules for Normal Support Task The objective of the elasticity model for this task is to obtain workers with the best possible cost-quality trade-off. To obtain such workers, we use loose-elasticity-operator (highest) on the worker's fee-coefficient metric. In this example, we define fee-coefficient as ratio between the fee of the worker's bid and the rating of the worker.
Premium Support Task For premium support task, we want to attract the best worker to work on the task. These type of tasks may only be executed by worker who have more than 80% success rate. However, if the task is not yet assigned after the first hour, we will loosen up the constraints a little bit by reducing this minimum rating over time. This elastic rule will make the published task have a better chance to be assigned to someone. Thus, it delivers a more robust system by trading off the quality to fulfill the time constraint.
Location Aware Data-as-a-Service (DaaS)
Flexible Translation Service
Mixed System for Large Scale Event Analyzer
PaaS Dynamic Pricing Based on Utilization
Muhammad Z.C. Candra, Hong-Linh Truong, and Schahram Dustdar, "Modelling Elasticity Trade-offs in Adaptive Mixed Systems", 11th Adaptive Computing (and Agents) for Enhanced Collaboration (ACEC) Conference Track @ IEEE WETICE 2013, Hammamet, Tunisia, 17-20, June, 2013.