Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

On the Elasticity of Social Compute Units @ CAiSE2014

684 views

Published on

Published in: Software, Business, Technology
  • Be the first to comment

On the Elasticity of Social Compute Units @ CAiSE2014

  1. 1. On the Elasticity of Social Compute Units 1 Mirela Riveni, Hongh-Linh Truong and Schahram Dustdar Distributed Systems Group Vienna University of Technology Austria CAiSE 2014,19 June Thessaloniki, Greece http://www.infosys.tuwien.ac.at/research/viecom/ 26th International Conference on Advanced Information Systems Engineering (CAiSE 2014)
  2. 2. • Introduction and Motivation • Elastic Social Compute Unit (SCU) model • Elastic SCU provisioning engine • Illustrative examples • Future work and Conclusion 2 Outline CAiSE 2014,19 June Thessaloniki, Greece
  3. 3. Background and Motivation 3 CAiSE 2014,19 June Thessaloniki, Greece
  4. 4. • People in Crowdsourcing – Passive approach, bidding • People as Programmable (Human-based) services – Active approach, discovery and composition • SCUs • People in Collective Adaptive Systems (CAS) – Active approach, decentralized management, open, elastic in size – Heterogeneous resources for complex task execution – Smart society (socio-technical system) 4 Introduction SCUs in the General Human Computation Scope CAiSE 2014,19 June Thessaloniki, Greece
  5. 5. Motivation Elasticity in Collaborative Collective Work • Traditionally – Fixed collectives • Optimization and adaptation within the collective • Centralized decision-making • We have Vertical Elasticity • Current trends and new needs – Tailored and elastic applications (with Clouds) • Reflected in socially-enhanced applications • Dynamic adaptation, resource variability • Decentralized decision-making to fit collective’s goals • We need Horizontal Elasticity 5 CAiSE 2014,19 June Thessaloniki, Greece
  6. 6. 6 • Software Engineering Project for a Health-Care System – Automate the selection of the right resources at runtime – Provide elastic execution • Skills e.g., requirements engineer, developer, designer, health-care consultant … • Current solutions: – Mostly centralized management – Fixed workers/difficult to add new capabilities – Lack of real productivity assessment – Cannot provide modifying on-demand collaborations Scenario CAiSE 2014,19 June Thessaloniki, Greece
  7. 7. Scenario (cont.) Issues that Elasticity can Address • We need elasticity in human computation – Reliable responsiveness to change • New skill-needs in unexpectedly generated tasks – Delays in skill learning or finding new appropriate resources – Low quality of results • Badly planned delegations – Overloaded and/or underutilized human-based services – In either case human compute units need to be payed! • The unpredictable nature of humans – Incentive-based or agreement-based mechanisms • still there is uncertainty in human service availability – Misbehaving human-based compute units 7 CAiSE 2014,19 June Thessaloniki, Greece
  8. 8. Elastic Social Compute Units 8 CAiSE 2014,19 June Thessaloniki, Greece
  9. 9. Adding Elastic Capabilities to Social Compute Units • Programmable collective adaptive systems – Human-based resources as core compute units • Individual Compute Units – ICU • Recruited on-demand, from: crowdsourcing platforms, expert networks, enterprise pools… • Complex task execution – Compute power – Lifecycle – Cloud-like behavior • On-demand composition • Based on customer-set constraints • Scalable in size and capabilities • Elastic properties 9 CAiSE 2014,19 June Thessaloniki, Greece
  10. 10. • SCU Provisioning Platform – Not just communication and collaboration support! – Elastic execution-management support! • Elasticity of Social Compute Units - Definition – (semi)automatic runtime adaptability • responsiveness to on-demand change – scaling in size and capabilities, (re)scheduling – optimal capability/performance parameters – meeting customer-set constraints – state and structural changes Elasticity in SCUs 10 CAiSE 2014,19 June Thessaloniki, Gre
  11. 11. What needs to be done to provide elastic SCUs? • Mechanisms of support for the execution phase of SCUs • Enable state and structural changes • Metrics and monitoring • APIs for ICU and SCU virtualization… • Scheduling algorithms • Framework for elastic SCU provisioning 11 CAiSE 2014,19 June Thessaloniki, Greece
  12. 12. 12 Elasticity in SCUs – Execution Phase Request Create Assimilate Virtualize Deploy Execution Dissolve An SCU in the Execution Phase Defined by: SCUexec(𝜏) = {SCUsize(𝜏), SCUstructure(𝜏), SCUstate(𝜏), SCUeffort(𝜏), SCUproductivity(𝜏), SCUcost(𝜏), SCUreputation(𝜏)} CAiSE 2014,19 June Thessaloniki, Greece • The execution phase of the SCU must be modeled and captured to be able to determine at runtime : – whether constraints are met and which action plans to take if not – which elastic action plans to invoke in which unexpected events…
  13. 13. SCU States 13 • The scope determines the validity of complex SCU-states • Complex-state example: running Λ suspending Λ expanding • SCU and ICU (cluster) scope • Mutually exclusive: running Λ stopping • SCU scope • We need knowledge about the state of an SCU – for our provisioning framework: to be able to design and provide efficient core elastic scheduling algorithms – for application developers: to efficiently implement our elastic APIs, e.g., in custom decision algorithms substituting, adding, removing the right ICUs… Trigger action State Scope Triggering Role Platform Consumer ICU Run Running SCU √ √ / Suspend Suspending SCU/ICUcluster/ICU √ √ √ Activate Resuming SCU/ICUcluster/ICU √ √ √ Add Expanding ICUcluster/ICU √ √ √ Exclude Reducing ICUcluster/ICU √ √ √ Stop/Exclude/Add Substituting ICUcluster/ICU √ √ √ Stop Stopping SCU √ √ / CAiSE 2014,19 June Thessaloniki, Greece
  14. 14. ICU Metrics • Profile properties (Id, Name, Mail adress, Location…) • Dynamic Profile properties – Global view • Skill-set, price, reputation, global state (list of states within SCUs), availability, productivity, connectedness – SCU-specific view • State within an SCU, reliability, availability, reciprocity, effort, productivity, SCU-based trust, nr of completed tasks 14 Basic metrics! More to be developed by application developers. CAiSE 2014,19 June Thessaloniki, Greece
  15. 15. 15 Fundamental metrics! More to be developed (by appl. dev). SCU Metrics For Elasticity Management Consumers don’t care about: SCU size or topology but do care about Cost, Productivity… CAiSE 2014,19 June Thessaloniki, Greece
  16. 16. Programming Elastic SCUs • Enable application developers to virtualize and manipulate SCUs • Enable monitoring • Provide fundamental elastic strategies extensible by App developers 16 CAiSE 2014,19 June Thessaloniki, Greece
  17. 17. SCU Management • Structure and state changes 17 CAiSE 2014,19 June Thessaloniki, Greece
  18. 18. Putting it all together Elastic SCU Provisioning Engine 18 Next CAiSE 2014,19 June Thessaloniki, Greece
  19. 19. Examples and Evaluation 19 CAiSE 2014,19 June Thessaloniki, Greece
  20. 20. An ICU Feedback-based Example Algorithm • Steps: – For all tasks in SCU – Rank matching ICUs and store the first x – Assign task to top ranked ICU – Add ICU if not already in SCU – In case of time threshold • Remove ICU if idle (or if misbehaving) – For all ICUs in the reserve list with smaller task queue • Send willingness message • Reassign the task to an ICU that sent ACK (in descending rank) • Add ICU if not already in SCU 20 Reserve ICU List Without Payment CAiSE 2014,19 June Thessaloniki, Greece
  21. 21. CAiSE 2014,19 June Thessaloniki, Greece 21 An ICU Feedback-based Example Algorithm
  22. 22. Example Algorithm (cont.) Deriving new metrics • ICU Willingness and Willingness Confidentiality – The willingness confidentiality score can be utilized as a reliability measure for an ICU • words vs action 22 n n requests mentsacknowledg sWillingnes  n n tasksassigned tasksassignedsuccess Successreassigned _ __  n n n n tasksassigned tasksassignedsuccess requests mentsacknowledg sWillingnes alityConfidenti _ __  CAiSE 2014,19 June Thessaloniki, Greece
  23. 23. Example Algorithm (cont.) Willingness Enhanced with Cost Priority • Steps when task/s on time threshold: - Send willingness request to all ICUs with the customer-set constraints - From all ICUs that send ACKs calculate and analyze cost if ICU is added: - Check If and - Add ICU/s where 23 CAiSE 2014,19 June Thessaloniki, Greece
  24. 24. Benefits • Enable application developers to: – deploy elastic runtime models for SCUs based on customer requirements – provide tailored elastic socially-enhanced applications – efficient runtime-management of the SCUs to best meet customer-requirements • Application developer (SaaS) and ICU(resource) cost benefits CAiSE 2014,19 June Thessaloniki, Greece 24
  25. 25. Conclusion and Future Work • Socially Enhanced Applications need to have possibility for elastic utilization of human–based services in collaboration scenarios – Our goal: an engine with the mechanisms for Elastic SCU Provisioning • Until now: – Execution model of Elastic SCUs – APIs for Developing Elastic SCU Applications – Example algorithms – Novel monitoring metrics reflecting human behavior and elasticity • Future Work – SLAs for Social Compute Units – A Generic SCU Compute Power Model 25 CAiSE 2014,19 June Thessaloniki, Greece
  26. 26. Thank You for Your Attention! 26 Mirela Riveni, Hongh-Linh Truong, Schahram Dustdar Distributed Systems Group Vienna University of Technology Austria m.riveni@infosys.tuwien.ac.at http://www.infosys.tuwien.ac.at/staff/mriveni/ CAiSE 2014,19 June Thessaloniki, Greece

×