ECS781P 12 Serverless
ECS781P 12 Serverless
CLOUD COMPUTING
2
Cloud Deployment Models (NIST)
• Public cloud • Private cloud
• Sold to the public, mega- • Enterprise owned or leased
scale infrastructure • Tight security control
• ‘Infinite’ capability
• Metered usage
• Hybrid cloud
• Composition of public and
private clouds
3
Cloud Service Models (NIST)
• Depending on the types of resources offered by the cloud:
• Software as a Service (SaaS) - Gmail
• Use provider’s applications over a network
• Platform as a Service (PaaS) – Google App Engine
• Deploy customer-created applications to a cloud
• Infrastructure as a Service (IaaS) – AWS, GCP
• Rent processing, storage, network capacity, and other
fundamental computing resources
4
Cloud applications
Scalability Consistency
Communications
Application
Data
Maintainability Reliability
5
Essential Cloud Characteristics (from NIST)
• Pervasive network access
• Location independence
• High availability
• Resource pooling and partitioning
• Extensive use of virtualization
• Automated management for cloud clients
• Rapid elasticity
6
Managing current cloud applications
In current cloud infrastructure we have access to
resources on demand, but we still need to manage
them:
•How many resources do we need?
•What replication factor is right?
•Will I get better performance by load balancing?
7
Issues to address setting up a cloud env
1. Redundancy for availability, so that a single machine failure doesn’t
take down the service.
2. Geographic distribution of redundant copies to preserve the service
in case of disaster.
3. Load balancing and request routing to efficiently utilize resources.
4. Autoscaling in response to changes in load to scale up or down the
system.
5. Monitoring to make sure the service is still running well.
6. Logging to record messages needed for debugging or performance
tuning.
7. System upgrades, including security patching.
8. Migration to new instances as they become available.
https://arxiv.org/abs/1902.03383 8
Contents
• The current state of cloud
• Cloud developments
• Serverless computing
9
The Big Data way
Job
M R
Map
Reduce
Input Output
Map
Data Data
Reduce
Map
10
Resource management in Big Data
• Developers purely focus on writing the processing
functions
11
DBaaS
• Database systems maintained by public cloud providers,
and offered as a service
• Excellent integration with cloud ecosystem, but vendor
lock-in
https://cloud.google.com/datastore/pricing 12
Contents
• The current state of cloud
• Cloud developments
• Serverless computing
13
What serverless proposes instead
• The cloud platform automatically takes care of
starting and stopping containers/applications
• Potentially scaling down to zero
• New instances must be up in milliseconds
• Change in billing model: pay per workload, rather
than pay per time
• FaaS: Serverless
14
FaaS (Function as a Service)
• FaaS: Cloud model in which users submit functions
that are executed in a serverless way by the cloud
• Programming model similar to reactive
• Pay per function execution, not per time
• Started by Amazon Lambda functions
• Currently in development for all major platforms
• Google Cloud functions
• Azure Functions
• Oracle FN // Apache OpenWhisk OSS
15
Architecture of a serverless cloud
https://arxiv.org/abs/1902.03383 16
Serverless and cloud computing
17
What is serverless being used for now
https://serverless.com/blog/2018-serverless-community-survey-huge-growth-usage/ 18
Serverless challenges
• Stateless functions: provide storage solutions for
helping with function state
• Serverless-aware data access: low latency
read/write access to data
• Networking should be able to implement some
communication patterns in a much more efficient
manner
• Functions must be isolated to guarantee security
19
Recommended Reading
Cloud Programming Simplified: A Berkeley View on
Serverless Computing
•Eric Jonas, Johann Schleier-Smith, Vikram Sreekanti, Chia-
Che Tsai, Anurag Khandelwal, Qifan Pu, Vaishaal
Shankar, Joao Carreira, Karl Krauth, Neeraja
Yadwadkar, Joseph E. Gonzalez, Raluca Ada Popa, Ion
Stoica, David A. Patterson
•https://arxiv.org/abs/1902.03383
20
Further Reading
Mohammad Sadegh Aslanpour, A.N. Toosi, Claudio Cicconetti, Bahman Javadi, Peter
Sbarski, Davide Taibi, Marcos Assuncao, Sukhpal Singh Gill, Raj Gaire, Schahram Dustdar,
Serverless Edge Computing: Vision and Challenges, Proceedings of the 19th Australasian
Symposium on Parallel and Distributed Computing (AusPDC 2021), February 1–5, 2021,
Dunedin, New Zealand.
Link: https://dl.acm.org/doi/10.1145/3437378.3444367b
21
22