SlideShare una empresa de Scribd logo
1 de 25
SYBL: an Extensible Language for
Controlling Elasticity in Cloud Applications
Georgiana Copil, Daniel Moldovan,
Hong-Linh Truong, Schahram Dustdar
Distributed Systems Group,
Vienna University of Technology
CCGRID, 23 May 2013 2
Overview
 Motivation
 Elasticity Requirements Specification Approach
 SYBL
– Language Constructs
– Examples of Elasticity Controls
 SYBL Runtime
 Experiments
 Conclusions and Future Work
CCGRID, 23 May 2013 3
Motivation – Complex and High-Level
Elasticity Control Requirements [1/2]
 Application user: “If the cost is greater than 800 Euro, there
should be a scale-in action for keeping costs in acceptable limits”
 Software provider: “Response time should be less than an
amount varying with the number of users.”
 Developer: “The result from the data analytics algorithm must
reach a certain data accuracy under a cost constraint. I don’t care
about how many resources should be used for executing this
code.”
 Cloud provider: “When availability is higher than 99% for a period
of time, and the cost is the same as for availability 80%, the cost
should increase with 10%.”
Motivation –Complex and High-Level
Elasticity Control Requirements [2/2]
Elasticity control needed at different levels, covering
Application, Component, Code-level
Cost
“If the cost is greater than 800 Euro…”
Quality
“Response time should be less than an amount varying…”
Resources
“allocated memory should be at least 6 GB…”
CCGRID, 23 May 2013 5
Elasticity & Cloud …
 Resource Scaling in Industry Approach
– Amazon: AutoScale
– Paraleap: AzureWatch
– CloudStack: AutoScale
– Cloud Solution K7: ScaleInfra
 Research Works for Elasticity
– Controlling resource elasticity [Han 2012]
– Measuring resource elasticity [Martin 2011], [Li 2012]
– Controlling resource elasticity for cost optimization [Sharma 2012] [Tosana-
Casalaz 2012]
 Limited view on elasticity control
CCGRID, 23 May 2013 6
Elasticity & Cloud …
 Multi-dimensional nature of elasticity [Dustdar 2011]
• Quality, Cost and Resources
 How can we support elasticity specification?
– Consider complex application structure
– Consider multi-dimensional elasticity
CCGRID, 23 May 2013 7
Our approach – using directives for specifying
and controlling elasticity requirements
 The user can rely on high-level specifications language
– Specifying elasticity control directives at multiple levels required
by multiple types of users
• Considering the application structure for multiple levels of control
• Address the elasticity requirements specification needs of multiple types of
users
– Cloud application owner, software provider, software developer, PaaS provider
• Allow high-level specifications
– Transparently transformed into complex elasticity control
– Controlling elasticity at multiple levels of considering application
structure
• Online/on the fly elasticity control
 This paper
– Focus on elasticity requirements specification
CCGRID, 23 May 2013 8
SYBL – Overview
 SYBL (Simple Yet Beautiful Language)
– Language for elasticity requirements specification
– Possible users: cloud provider, application owner, application
developer, software provider
– Goals: easy to use, high-level, multiple levels of control
 SYBL-supported requirement levels
– Application Level
– Component Level
– Programming/Code Level
 Core SYBL concepts
– <Monitoring, Constraint, Strategy> structure
– Predefined functions and environment variables
CCGRID, 23 May 2013 9
Main concepts used in SYBL [1/4]
 „Monitoring“
– Directive for describing what needs to be monitored and under
what conditions
CCGRID, 23 May 2013 10
Main concepts used in SYBL [2/4]
 „Constraint“
– Directive for describing what needs to true and under what
conditions
CCGRID, 23 May 2013 11
Main concepts used in SYBL [3/4]
 „Strategy“
– Directive for describing how to achieve certain goals and under
what conditions
CCGRID, 23 May 2013 12
Main concepts used in SYBL [4/4]
 Other constructs: predefined functions and environment
variables
CCGRID, 23 May 2013 13
Examples of SYBL Elasticity Controls
 SYBL elasticity requirements – cloud provider
– Specifying application level elasticity directives
• For adapting the application to demand
• For defining cost schema
CCGRID, 23 May 2013 14
Examples of SYBL Elasticity Controls
 SYBL elasticity requirements – cloud customer
Possible conflict?
• Cost targeted by
different users at
different levels
• Different constraints
CCGRID, 23 May 2013 15
SYBL and Implementation
 Current SYBL implementation
– in Java using Java annotations
• @SYBLAnnotation(monitoring=„“,constraints=„“,strategies=„“)
– in XML
• Specific xml schema
– <ProgrammingDirective><Constraints><Constraint
name=c1>...</Constraint></Constraints>...</ProgrammingDirective>
 Other possibilities
– C# Attributes
• [ProgrammingAttribute(monitoring=„“,constraints=„“,strategies=„“)]
– Python Decorators
• @ProgrammingDecorator(monitoring,constraints,strategies)
– ...
CCGRID, 23 May 2013 16
SYBL Runtime
1. SYBL directives inserted in application
3. The elasticity requirements are
enforced locally if possible, otherwise
they are sent to the Control Service
4. The Cloud Service uses the Monitoring
and Enforcement API for communicating
with Cloud APIs and Monitoring tools
CCGRID, 23 May 2013 17
Experiments – Setup
 Cloud infrastructure
– OpenStack based, 100 cores
• Possible actions: adding/removing virtual machines
• Ganglia for monitoring
 Application used
 All software components are pre-installed in VM images
CCGRID, 23 May 2013 18
Experiments – SYBL Elasticity
Requirements Description [1/2]
 Goal: controlling application component elasticity based
on performance conditions
 Easy specification
– Don’t have to work with JClouds or any other tools for
connecting to the Cloud APIs
– Don’t have to process monitoring
CCGRID, 23 May 2013 19
Experiments – SYBL Elasticity
Requirements Description [2/2]
 Goal: fine-grained elasticity requirements specification
at programming level
Experiments – Results [1/2]
Using SYBL specifications, we can adapt the application for
achieving the quality/cost/resources elasticity
SYBL runtime adds/removes virtual machines on demand
Experiments – Results [2/2]
Application elasticity is a complex property, evolving over time on
multiple dimensions
Cost, Resources and Quality progressively
increase
Cost, Resources and Quality
progressively decrease
When quality is too low
an adaptation
action is triggered by
SYBL strategies
CCGRID, 23 May 2013 22
Conclusions and Future Work
 We present SYBL and its Runtime as a novel means for
specifying and controlling elasticity
– Wide range of users, applications
– Easy-to-use elasticity specifications
 Prototypes
– http://www.infosys.tuwien.ac.at/research/viecom/prototypes.html
 Future work
– Extend our implementation of the SYBL runtime stack
– Utilize SYBL for various types of applications
CCGRID, 23 May 2013 23
Thanks for your attention!
Georgiana Copil
e.copil@dsg.tuwien.ac.at
http://www.infosys.tuwien.ac.at/staff/ecopil/
Distributed Systems Group
Vienna University of Technology
Austria
CCGRID, 23 May 2013 24
References [1/2]
 [Dustdar 2011] Schahram Dustdar, Yike Guo, Benjamin Satzger, Hong Linh
Truong: Principles of Elastic Processes. IEEE Internet Computing 15(5): 66-71
(2011)
 [Galán 2009] Fermín Galán, Americo Sampaio, Luis Rodero-Merino, Irit Loy, Victor
Gil, and Luis M. Vaquero. 2009. Service specification in cloud environments based
on extensions to open standards. In Proceedings of the Fourth International ICST
Conference on COMmunication System softWAre and middlewaRE (COMSWARE
'09)
 [Han 2012] Rui Han, Li Guo, Moustafa M. Ghanem, and Yike Guo. “Lightweight
Resource Scaling for Cloud Applications”. In Proceedings of the 2012 12th
IEEE/ACM International Symposium on Cluster, Cloud and Grid Computing (ccgrid
2012) (CCGRID '12)
 [Li 2012] Zheng Li; O'Brien, L.; He Zhang; Cai, R., "On a Catalogue of Metrics for
Evaluating Commercial Cloud Services," 2012 ACM/IEEE 13th International
Conference on Grid Computing (GRID), vol., no., pp.164,173, 20-23 Sept. 2012
CCGRID, 23 May 2013 25
References [2/2]
 [Martin 2011] Patrick Martin, Andrew Brown, Wendy Powley, Jose Luis Vazquez-
Poletti, "Autonomic management of elastic services in the cloud," Computers and
Communications (ISCC), 2011 IEEE Symposium on , vol., no., pp.135,140, June 28
2011-July 1 2011
 [Moran 2011] Daniel Morán, Luis M. Vaquero, and Fermín Galán."Elastically Ruling
the Cloud: Specifying Application's Behavior in Federated Clouds," 2011 IEEE
International Conference on Cloud Computing (CLOUD)
 [Sharma 2011] Upendra Sharma, Prashant Shenoy, Sambit Sahu, and Anees
Shaikh. “A Cost-Aware Elasticity Provisioning System for the Cloud”. In Proceedings
of the 2011 31st International Conference on Distributed Computing Systems
(ICDCS '11)
 [Tolosana-Calasanz 2012] Rafael Tolosana-Calasanz, José Ángel Bañares,
Congduc Pham, and Omer F. Rana. 2012. Revenue-Based resource management
on shared clouds for heterogenous bursty data streams. In Proceedings of the 9th
international conference on Economics of Grids, Clouds, Systems, and Services
(GECON'12)

Más contenido relacionado

La actualidad más candente

The Power Of Event Chapter 7
The Power Of Event Chapter 7The Power Of Event Chapter 7
The Power Of Event Chapter 7Woojin Joe
 
The Power Of Event Chapter 2
The Power Of Event  Chapter 2The Power Of Event  Chapter 2
The Power Of Event Chapter 2Woojin Joe
 
The Power Of Event Chapter 5
The Power Of Event Chapter 5The Power Of Event Chapter 5
The Power Of Event Chapter 5Woojin Joe
 
Intelligent Workload Management in Virtualized Cloud Environment
Intelligent Workload Management in Virtualized Cloud EnvironmentIntelligent Workload Management in Virtualized Cloud Environment
Intelligent Workload Management in Virtualized Cloud EnvironmentIJTET Journal
 
The Power Of Event Chapter 1
The Power Of Event Chapter 1The Power Of Event Chapter 1
The Power Of Event Chapter 1Woojin Joe
 
STUDY THE EFFECT OF PARAMETERS TO LOAD BALANCING IN CLOUD COMPUTING
STUDY THE EFFECT OF PARAMETERS TO LOAD BALANCING IN CLOUD COMPUTINGSTUDY THE EFFECT OF PARAMETERS TO LOAD BALANCING IN CLOUD COMPUTING
STUDY THE EFFECT OF PARAMETERS TO LOAD BALANCING IN CLOUD COMPUTINGIJCNCJournal
 

La actualidad más candente (6)

The Power Of Event Chapter 7
The Power Of Event Chapter 7The Power Of Event Chapter 7
The Power Of Event Chapter 7
 
The Power Of Event Chapter 2
The Power Of Event  Chapter 2The Power Of Event  Chapter 2
The Power Of Event Chapter 2
 
The Power Of Event Chapter 5
The Power Of Event Chapter 5The Power Of Event Chapter 5
The Power Of Event Chapter 5
 
Intelligent Workload Management in Virtualized Cloud Environment
Intelligent Workload Management in Virtualized Cloud EnvironmentIntelligent Workload Management in Virtualized Cloud Environment
Intelligent Workload Management in Virtualized Cloud Environment
 
The Power Of Event Chapter 1
The Power Of Event Chapter 1The Power Of Event Chapter 1
The Power Of Event Chapter 1
 
STUDY THE EFFECT OF PARAMETERS TO LOAD BALANCING IN CLOUD COMPUTING
STUDY THE EFFECT OF PARAMETERS TO LOAD BALANCING IN CLOUD COMPUTINGSTUDY THE EFFECT OF PARAMETERS TO LOAD BALANCING IN CLOUD COMPUTING
STUDY THE EFFECT OF PARAMETERS TO LOAD BALANCING IN CLOUD COMPUTING
 

Similar a SYBL: An Extensible Language for Controlling Elasticity in Cloud Apps

Cloud computing performance evaluation issues and challenges3
Cloud computing performance evaluation issues and challenges3Cloud computing performance evaluation issues and challenges3
Cloud computing performance evaluation issues and challenges3ijccsa
 
Lifecycle Management of Service-based Applications on Multi-Clouds: A Resear...
Lifecycle Management of Service-based Applications on Multi-Clouds: A Resear...Lifecycle Management of Service-based Applications on Multi-Clouds: A Resear...
Lifecycle Management of Service-based Applications on Multi-Clouds: A Resear...George Baryannis
 
Novel Models and Techniques for Monitoring and Analysis of Software-defined E...
Novel Models and Techniques for Monitoring and Analysis of Software-defined E...Novel Models and Techniques for Monitoring and Analysis of Software-defined E...
Novel Models and Techniques for Monitoring and Analysis of Software-defined E...Daniel Moldovan
 
Cloud Computing for Agent-Based Urban Transport Structure
Cloud Computing for Agent-Based Urban Transport StructureCloud Computing for Agent-Based Urban Transport Structure
Cloud Computing for Agent-Based Urban Transport StructureIRJET Journal
 
IRJET- Nebula and Cloud Computing – Analyzing all Aspects of Both Entities
IRJET- Nebula and Cloud Computing – Analyzing all Aspects of Both EntitiesIRJET- Nebula and Cloud Computing – Analyzing all Aspects of Both Entities
IRJET- Nebula and Cloud Computing – Analyzing all Aspects of Both EntitiesIRJET Journal
 
mu-DDRL_A_QoS-Aware_Distributed_Deep_Reinforcement_Learning_Technique_for_Ser...
mu-DDRL_A_QoS-Aware_Distributed_Deep_Reinforcement_Learning_Technique_for_Ser...mu-DDRL_A_QoS-Aware_Distributed_Deep_Reinforcement_Learning_Technique_for_Ser...
mu-DDRL_A_QoS-Aware_Distributed_Deep_Reinforcement_Learning_Technique_for_Ser...adityadesai817
 
Revenue Maximization with Good Quality of Service in Cloud Computing
Revenue Maximization with Good Quality of Service in Cloud ComputingRevenue Maximization with Good Quality of Service in Cloud Computing
Revenue Maximization with Good Quality of Service in Cloud ComputingINFOGAIN PUBLICATION
 
Get Ready for Cloud Testing
Get Ready for Cloud TestingGet Ready for Cloud Testing
Get Ready for Cloud TestingTechWell
 
SERVICE LEVEL AGREEMENT BASED FAULT TOLERANT WORKLOAD SCHEDULING IN CLOUD COM...
SERVICE LEVEL AGREEMENT BASED FAULT TOLERANT WORKLOAD SCHEDULING IN CLOUD COM...SERVICE LEVEL AGREEMENT BASED FAULT TOLERANT WORKLOAD SCHEDULING IN CLOUD COM...
SERVICE LEVEL AGREEMENT BASED FAULT TOLERANT WORKLOAD SCHEDULING IN CLOUD COM...ijgca
 
SERVICE LEVEL AGREEMENT BASED FAULT TOLERANT WORKLOAD SCHEDULING IN CLOUD COM...
SERVICE LEVEL AGREEMENT BASED FAULT TOLERANT WORKLOAD SCHEDULING IN CLOUD COM...SERVICE LEVEL AGREEMENT BASED FAULT TOLERANT WORKLOAD SCHEDULING IN CLOUD COM...
SERVICE LEVEL AGREEMENT BASED FAULT TOLERANT WORKLOAD SCHEDULING IN CLOUD COM...ijgca
 
SERVICE LEVEL AGREEMENT BASED FAULT TOLERANT WORKLOAD SCHEDULING IN CLOUD COM...
SERVICE LEVEL AGREEMENT BASED FAULT TOLERANT WORKLOAD SCHEDULING IN CLOUD COM...SERVICE LEVEL AGREEMENT BASED FAULT TOLERANT WORKLOAD SCHEDULING IN CLOUD COM...
SERVICE LEVEL AGREEMENT BASED FAULT TOLERANT WORKLOAD SCHEDULING IN CLOUD COM...ijgca
 
Certified Cloud Computing Specialist (CCCS)
Certified Cloud Computing Specialist (CCCS)Certified Cloud Computing Specialist (CCCS)
Certified Cloud Computing Specialist (CCCS)GICTTraining
 
IWSM2014 MEGSUS14 - GQM on energy for SaaS - CETIC
IWSM2014   MEGSUS14 - GQM on energy for SaaS - CETICIWSM2014   MEGSUS14 - GQM on energy for SaaS - CETIC
IWSM2014 MEGSUS14 - GQM on energy for SaaS - CETICNesma
 
CloudLighting - A Brief Overview
CloudLighting - A Brief OverviewCloudLighting - A Brief Overview
CloudLighting - A Brief OverviewCloudLightning
 
Mobile cloud computing as future for mobile applications
Mobile cloud computing as future for mobile applicationsMobile cloud computing as future for mobile applications
Mobile cloud computing as future for mobile applicationseSAT Publishing House
 
Certified Cloud Computing Associate (CCCA)
Certified Cloud Computing Associate (CCCA)Certified Cloud Computing Associate (CCCA)
Certified Cloud Computing Associate (CCCA)GICTTraining
 
Preserving load balance in multiservice cloud storage
Preserving load balance in multiservice cloud storagePreserving load balance in multiservice cloud storage
Preserving load balance in multiservice cloud storageanbu mani
 

Similar a SYBL: An Extensible Language for Controlling Elasticity in Cloud Apps (20)

Cloud computing performance evaluation issues and challenges3
Cloud computing performance evaluation issues and challenges3Cloud computing performance evaluation issues and challenges3
Cloud computing performance evaluation issues and challenges3
 
Lifecycle Management of Service-based Applications on Multi-Clouds: A Resear...
Lifecycle Management of Service-based Applications on Multi-Clouds: A Resear...Lifecycle Management of Service-based Applications on Multi-Clouds: A Resear...
Lifecycle Management of Service-based Applications on Multi-Clouds: A Resear...
 
Novel Models and Techniques for Monitoring and Analysis of Software-defined E...
Novel Models and Techniques for Monitoring and Analysis of Software-defined E...Novel Models and Techniques for Monitoring and Analysis of Software-defined E...
Novel Models and Techniques for Monitoring and Analysis of Software-defined E...
 
Cloud Computing for Agent-Based Urban Transport Structure
Cloud Computing for Agent-Based Urban Transport StructureCloud Computing for Agent-Based Urban Transport Structure
Cloud Computing for Agent-Based Urban Transport Structure
 
IRJET- Nebula and Cloud Computing – Analyzing all Aspects of Both Entities
IRJET- Nebula and Cloud Computing – Analyzing all Aspects of Both EntitiesIRJET- Nebula and Cloud Computing – Analyzing all Aspects of Both Entities
IRJET- Nebula and Cloud Computing – Analyzing all Aspects of Both Entities
 
mu-DDRL_A_QoS-Aware_Distributed_Deep_Reinforcement_Learning_Technique_for_Ser...
mu-DDRL_A_QoS-Aware_Distributed_Deep_Reinforcement_Learning_Technique_for_Ser...mu-DDRL_A_QoS-Aware_Distributed_Deep_Reinforcement_Learning_Technique_for_Ser...
mu-DDRL_A_QoS-Aware_Distributed_Deep_Reinforcement_Learning_Technique_for_Ser...
 
Forecast odcau3 100_posttech
Forecast odcau3 100_posttechForecast odcau3 100_posttech
Forecast odcau3 100_posttech
 
Revenue Maximization with Good Quality of Service in Cloud Computing
Revenue Maximization with Good Quality of Service in Cloud ComputingRevenue Maximization with Good Quality of Service in Cloud Computing
Revenue Maximization with Good Quality of Service in Cloud Computing
 
Get Ready for Cloud Testing
Get Ready for Cloud TestingGet Ready for Cloud Testing
Get Ready for Cloud Testing
 
SERVICE LEVEL AGREEMENT BASED FAULT TOLERANT WORKLOAD SCHEDULING IN CLOUD COM...
SERVICE LEVEL AGREEMENT BASED FAULT TOLERANT WORKLOAD SCHEDULING IN CLOUD COM...SERVICE LEVEL AGREEMENT BASED FAULT TOLERANT WORKLOAD SCHEDULING IN CLOUD COM...
SERVICE LEVEL AGREEMENT BASED FAULT TOLERANT WORKLOAD SCHEDULING IN CLOUD COM...
 
SERVICE LEVEL AGREEMENT BASED FAULT TOLERANT WORKLOAD SCHEDULING IN CLOUD COM...
SERVICE LEVEL AGREEMENT BASED FAULT TOLERANT WORKLOAD SCHEDULING IN CLOUD COM...SERVICE LEVEL AGREEMENT BASED FAULT TOLERANT WORKLOAD SCHEDULING IN CLOUD COM...
SERVICE LEVEL AGREEMENT BASED FAULT TOLERANT WORKLOAD SCHEDULING IN CLOUD COM...
 
SERVICE LEVEL AGREEMENT BASED FAULT TOLERANT WORKLOAD SCHEDULING IN CLOUD COM...
SERVICE LEVEL AGREEMENT BASED FAULT TOLERANT WORKLOAD SCHEDULING IN CLOUD COM...SERVICE LEVEL AGREEMENT BASED FAULT TOLERANT WORKLOAD SCHEDULING IN CLOUD COM...
SERVICE LEVEL AGREEMENT BASED FAULT TOLERANT WORKLOAD SCHEDULING IN CLOUD COM...
 
Certified Cloud Computing Specialist (CCCS)
Certified Cloud Computing Specialist (CCCS)Certified Cloud Computing Specialist (CCCS)
Certified Cloud Computing Specialist (CCCS)
 
IWSM2014 MEGSUS14 - GQM on energy for SaaS - CETIC
IWSM2014   MEGSUS14 - GQM on energy for SaaS - CETICIWSM2014   MEGSUS14 - GQM on energy for SaaS - CETIC
IWSM2014 MEGSUS14 - GQM on energy for SaaS - CETIC
 
CloudLighting - A Brief Overview
CloudLighting - A Brief OverviewCloudLighting - A Brief Overview
CloudLighting - A Brief Overview
 
Overview of CloudLightning
Overview of CloudLightningOverview of CloudLightning
Overview of CloudLightning
 
N046037983
N046037983N046037983
N046037983
 
Mobile cloud computing as future for mobile applications
Mobile cloud computing as future for mobile applicationsMobile cloud computing as future for mobile applications
Mobile cloud computing as future for mobile applications
 
Certified Cloud Computing Associate (CCCA)
Certified Cloud Computing Associate (CCCA)Certified Cloud Computing Associate (CCCA)
Certified Cloud Computing Associate (CCCA)
 
Preserving load balance in multiservice cloud storage
Preserving load balance in multiservice cloud storagePreserving load balance in multiservice cloud storage
Preserving load balance in multiservice cloud storage
 

Último

Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountPuma Security, LLC
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitecturePixlogix Infotech
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024Scott Keck-Warren
 
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024The Digital Insurer
 
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...gurkirankumar98700
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure servicePooja Nehwal
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...HostedbyConfluent
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationRidwan Fadjar
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesSinan KOZAK
 

Último (20)

Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC Architecture
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024
 
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 Presentation
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen Frames
 

SYBL: An Extensible Language for Controlling Elasticity in Cloud Apps

  • 1. SYBL: an Extensible Language for Controlling Elasticity in Cloud Applications Georgiana Copil, Daniel Moldovan, Hong-Linh Truong, Schahram Dustdar Distributed Systems Group, Vienna University of Technology
  • 2. CCGRID, 23 May 2013 2 Overview  Motivation  Elasticity Requirements Specification Approach  SYBL – Language Constructs – Examples of Elasticity Controls  SYBL Runtime  Experiments  Conclusions and Future Work
  • 3. CCGRID, 23 May 2013 3 Motivation – Complex and High-Level Elasticity Control Requirements [1/2]  Application user: “If the cost is greater than 800 Euro, there should be a scale-in action for keeping costs in acceptable limits”  Software provider: “Response time should be less than an amount varying with the number of users.”  Developer: “The result from the data analytics algorithm must reach a certain data accuracy under a cost constraint. I don’t care about how many resources should be used for executing this code.”  Cloud provider: “When availability is higher than 99% for a period of time, and the cost is the same as for availability 80%, the cost should increase with 10%.”
  • 4. Motivation –Complex and High-Level Elasticity Control Requirements [2/2] Elasticity control needed at different levels, covering Application, Component, Code-level Cost “If the cost is greater than 800 Euro…” Quality “Response time should be less than an amount varying…” Resources “allocated memory should be at least 6 GB…”
  • 5. CCGRID, 23 May 2013 5 Elasticity & Cloud …  Resource Scaling in Industry Approach – Amazon: AutoScale – Paraleap: AzureWatch – CloudStack: AutoScale – Cloud Solution K7: ScaleInfra  Research Works for Elasticity – Controlling resource elasticity [Han 2012] – Measuring resource elasticity [Martin 2011], [Li 2012] – Controlling resource elasticity for cost optimization [Sharma 2012] [Tosana- Casalaz 2012]  Limited view on elasticity control
  • 6. CCGRID, 23 May 2013 6 Elasticity & Cloud …  Multi-dimensional nature of elasticity [Dustdar 2011] • Quality, Cost and Resources  How can we support elasticity specification? – Consider complex application structure – Consider multi-dimensional elasticity
  • 7. CCGRID, 23 May 2013 7 Our approach – using directives for specifying and controlling elasticity requirements  The user can rely on high-level specifications language – Specifying elasticity control directives at multiple levels required by multiple types of users • Considering the application structure for multiple levels of control • Address the elasticity requirements specification needs of multiple types of users – Cloud application owner, software provider, software developer, PaaS provider • Allow high-level specifications – Transparently transformed into complex elasticity control – Controlling elasticity at multiple levels of considering application structure • Online/on the fly elasticity control  This paper – Focus on elasticity requirements specification
  • 8. CCGRID, 23 May 2013 8 SYBL – Overview  SYBL (Simple Yet Beautiful Language) – Language for elasticity requirements specification – Possible users: cloud provider, application owner, application developer, software provider – Goals: easy to use, high-level, multiple levels of control  SYBL-supported requirement levels – Application Level – Component Level – Programming/Code Level  Core SYBL concepts – <Monitoring, Constraint, Strategy> structure – Predefined functions and environment variables
  • 9. CCGRID, 23 May 2013 9 Main concepts used in SYBL [1/4]  „Monitoring“ – Directive for describing what needs to be monitored and under what conditions
  • 10. CCGRID, 23 May 2013 10 Main concepts used in SYBL [2/4]  „Constraint“ – Directive for describing what needs to true and under what conditions
  • 11. CCGRID, 23 May 2013 11 Main concepts used in SYBL [3/4]  „Strategy“ – Directive for describing how to achieve certain goals and under what conditions
  • 12. CCGRID, 23 May 2013 12 Main concepts used in SYBL [4/4]  Other constructs: predefined functions and environment variables
  • 13. CCGRID, 23 May 2013 13 Examples of SYBL Elasticity Controls  SYBL elasticity requirements – cloud provider – Specifying application level elasticity directives • For adapting the application to demand • For defining cost schema
  • 14. CCGRID, 23 May 2013 14 Examples of SYBL Elasticity Controls  SYBL elasticity requirements – cloud customer Possible conflict? • Cost targeted by different users at different levels • Different constraints
  • 15. CCGRID, 23 May 2013 15 SYBL and Implementation  Current SYBL implementation – in Java using Java annotations • @SYBLAnnotation(monitoring=„“,constraints=„“,strategies=„“) – in XML • Specific xml schema – <ProgrammingDirective><Constraints><Constraint name=c1>...</Constraint></Constraints>...</ProgrammingDirective>  Other possibilities – C# Attributes • [ProgrammingAttribute(monitoring=„“,constraints=„“,strategies=„“)] – Python Decorators • @ProgrammingDecorator(monitoring,constraints,strategies) – ...
  • 16. CCGRID, 23 May 2013 16 SYBL Runtime 1. SYBL directives inserted in application 3. The elasticity requirements are enforced locally if possible, otherwise they are sent to the Control Service 4. The Cloud Service uses the Monitoring and Enforcement API for communicating with Cloud APIs and Monitoring tools
  • 17. CCGRID, 23 May 2013 17 Experiments – Setup  Cloud infrastructure – OpenStack based, 100 cores • Possible actions: adding/removing virtual machines • Ganglia for monitoring  Application used  All software components are pre-installed in VM images
  • 18. CCGRID, 23 May 2013 18 Experiments – SYBL Elasticity Requirements Description [1/2]  Goal: controlling application component elasticity based on performance conditions  Easy specification – Don’t have to work with JClouds or any other tools for connecting to the Cloud APIs – Don’t have to process monitoring
  • 19. CCGRID, 23 May 2013 19 Experiments – SYBL Elasticity Requirements Description [2/2]  Goal: fine-grained elasticity requirements specification at programming level
  • 20. Experiments – Results [1/2] Using SYBL specifications, we can adapt the application for achieving the quality/cost/resources elasticity SYBL runtime adds/removes virtual machines on demand
  • 21. Experiments – Results [2/2] Application elasticity is a complex property, evolving over time on multiple dimensions Cost, Resources and Quality progressively increase Cost, Resources and Quality progressively decrease When quality is too low an adaptation action is triggered by SYBL strategies
  • 22. CCGRID, 23 May 2013 22 Conclusions and Future Work  We present SYBL and its Runtime as a novel means for specifying and controlling elasticity – Wide range of users, applications – Easy-to-use elasticity specifications  Prototypes – http://www.infosys.tuwien.ac.at/research/viecom/prototypes.html  Future work – Extend our implementation of the SYBL runtime stack – Utilize SYBL for various types of applications
  • 23. CCGRID, 23 May 2013 23 Thanks for your attention! Georgiana Copil e.copil@dsg.tuwien.ac.at http://www.infosys.tuwien.ac.at/staff/ecopil/ Distributed Systems Group Vienna University of Technology Austria
  • 24. CCGRID, 23 May 2013 24 References [1/2]  [Dustdar 2011] Schahram Dustdar, Yike Guo, Benjamin Satzger, Hong Linh Truong: Principles of Elastic Processes. IEEE Internet Computing 15(5): 66-71 (2011)  [Galán 2009] Fermín Galán, Americo Sampaio, Luis Rodero-Merino, Irit Loy, Victor Gil, and Luis M. Vaquero. 2009. Service specification in cloud environments based on extensions to open standards. In Proceedings of the Fourth International ICST Conference on COMmunication System softWAre and middlewaRE (COMSWARE '09)  [Han 2012] Rui Han, Li Guo, Moustafa M. Ghanem, and Yike Guo. “Lightweight Resource Scaling for Cloud Applications”. In Proceedings of the 2012 12th IEEE/ACM International Symposium on Cluster, Cloud and Grid Computing (ccgrid 2012) (CCGRID '12)  [Li 2012] Zheng Li; O'Brien, L.; He Zhang; Cai, R., "On a Catalogue of Metrics for Evaluating Commercial Cloud Services," 2012 ACM/IEEE 13th International Conference on Grid Computing (GRID), vol., no., pp.164,173, 20-23 Sept. 2012
  • 25. CCGRID, 23 May 2013 25 References [2/2]  [Martin 2011] Patrick Martin, Andrew Brown, Wendy Powley, Jose Luis Vazquez- Poletti, "Autonomic management of elastic services in the cloud," Computers and Communications (ISCC), 2011 IEEE Symposium on , vol., no., pp.135,140, June 28 2011-July 1 2011  [Moran 2011] Daniel Morán, Luis M. Vaquero, and Fermín Galán."Elastically Ruling the Cloud: Specifying Application's Behavior in Federated Clouds," 2011 IEEE International Conference on Cloud Computing (CLOUD)  [Sharma 2011] Upendra Sharma, Prashant Shenoy, Sambit Sahu, and Anees Shaikh. “A Cost-Aware Elasticity Provisioning System for the Cloud”. In Proceedings of the 2011 31st International Conference on Distributed Computing Systems (ICDCS '11)  [Tolosana-Calasanz 2012] Rafael Tolosana-Calasanz, José Ángel Bañares, Congduc Pham, and Omer F. Rana. 2012. Revenue-Based resource management on shared clouds for heterogenous bursty data streams. In Proceedings of the 9th international conference on Economics of Grids, Clouds, Systems, and Services (GECON'12)

Notas del editor

  1. Linh: maybe you can change the headline to stress the &quot;research challenges&quot;, e.g., &quot;Complex and high-level elasticity control requirements&quot;
  2. Clarify the relationship between high level elasticity requirements and low level onesLinh: what would be a single statement to emphasize this slide? e.g., complexity of cloud services and elasticity can be applied/occur in all these levels?
  3. Linh: what is a single statement to describe the related work? E.g., too limited? Not enough?
  4. Focus on elasticity specification – show that we propose abstract specification which can be mapped on different languagesLinh: elaborate a bit the approach, but short, e.g., first, second, third.
  5. - stress the benefits-
  6. - stress the benefits-
  7. New Slides about sybl and implementation
  8. Linh: can you use animation to describe steps. the presentation should be better with clear steps. can you also say about the implementation?
  9. Linh: What about thesystem of the experiment?How many machines? Etc.
  10. Linh: “First write down what is the goal?Then here is the way how we supportWhy it is good?”
  11. Linh: “What is the goal? What is the conclusion of the experiment here?”