SlideShare a Scribd company logo
Understanding
Serverless Architecture
윤석찬
1. Serverless Trends
2. What Is Serverless?
3. Serverless and Big Data
1. Serverless Trends
2. What Is Serverless?
3. Serverless and Big Data
Expected Market Growth
1. Serverless Trends
Serverless is the top-growing extended cloud service, with a 50 percent growth
over 2018.
Exploding Uses
1. Serverless Trends
The top five fastest-growing cloud services for 2020 include IoT, container-as-a-
service, machine learning/AI and serverless.
Exploding Uses
1. Serverless Trends
1. Serverless Trends
2. What Is Serverless?
3. Serverless and Big Data
IaaS vs PaaS vs FaaS
2. What Is Serverless?
• Wikipedia
Serverless computing is a cloud computing execution model in which
the cloud provider runs the server, and dynamically manages the
allocation of machine resources
• AWS
• No servers to manage or provision
• Consumption (not capacity) priced
• Scales with usage
• Availability and fault tolerance built in
Definition
2. What Is Serverless?
• Microservice • Event Driven • Stateless • Cold/Warm Start
Serverless architecture assists in breaking down of the application into
micro components to perform discrete functions.
Once it has completed its task it spins down, awaiting the next invocation.
This enables granular auto-scaling.
Features
2. What Is Serverless?
• Microservice • Event Driven • Stateless • Cold/Warm Start
Features
2. What Is Serverless?
The processing is only initiated once the
qualifying “event” occurs.
It is terminated when the processing is
complete or the set time has elapsed.
Events:
http requests, database events, monitoring
alerts, file uploads, cron jobs
• Microservice • Event Driven • Stateless • Cold/Warm Start
Functions should be written to be stateless and idempotent.
Functions run inside stateless containers.
Functions will most likely be invoked in a new container every time.
Features
2. What Is Serverless?
• Microservice • Event Driven • Stateless • Cold/Warm Start
The code and configuration to execute a Lambda are simply stored
somewhere on s3.
When a trigger happens, a container is mounted with the resources and
the code is loaded into memory.
Features
2. What Is Serverless?
• Microservice • Event Driven • Stateless • Cold/Warm Start
After a cold start, the Lambda will remain instantiated for a while allowing
other call not to have to wait for this initialization to be done each time.
Calls made during this period are called “warm call”.
Features
2. What Is Serverless?
• Microservice • Event Driven • Stateless • Cold/Warm Start
Keep warm:
A user can set up a cron which invokes this Lambda at regular intervals so
that it remains used from the AWS perspective.
This prevents the Lambda from being unloaded.
Features
2. What Is Serverless?
• Microservice • Event Driven • Stateless • Cold/Warm Start
One of the advantages of developing serverless applications is its
automatic autoscaling feature.
This means that in case of concurrent calls, the load will be spread over
several Lambdas instances.
Newly initialized Lambda corresponds to a longer waiting time for the user
because of the cold start.
Features
2. What Is Serverless?
• Microservice • Event Driven • Stateless • Cold/Warm Start
A way to avoid cold starts in case of concurrent calls is to create a pool of
Lambdas that are kept warm.
Each call on a Lambda at regular intervals will be charged.
It is necessary to determine the optimal number of Lambda instances.
Features
2. What Is Serverless?
• User can write code and directly run it in the cloud without worrying
about hardware.
• Applications get high availability and auto-scalability without additional
effort from the developer.
• Serverless enhances developer productivity by focusing on what matters
the most.
• Serverless can bring greater cost-effectiveness, as a user pays only for
the time taken to execute code, not for idle time.
Advantages
2. What Is Serverless?
• EDA(Event Driven Architecture)-based programming is generally harder
to debug.
• Integrated Development Environments (IDEs) to simplify the experience
for complex serverless applications are not well supported yet.
• Handling state using stateless functions takes time and resources.
• Concerns about vendor lock-in rise.
Limitations
2. What Is Serverless?
1. Serverless Trends
2. What Is Serverless?
3. Serverless and Big Data
On-premise
• Hadoop lowered the cost of the required bare metal infrastructure.
($ 10 ~ 100 million => $ 1 million)
Still expensive for small companies.
• Developers have to make hardwares provisioned, configured and paid
for in order to execute the application.
• It requires upfront capital investment in hardware and software before
a single line of code was generated.
Changing History
3. Serverless and Big Data
Cloud
• It doesn��t need upfront investment.
• Pay-as-you-go and scalable model lowered infrastructure cost
• Start-ups and SMEs can now afford to build and run big data apps
• Lead to rich open source development
• Still, setting up and maintaining the Cloud container architecture for big
data ai apps is difficult.
Those specialists are hard to find, and expensive.
Changing History
3. Serverless and Big Data
Serverless
• Developers can write and deploy code without the hassle of managing
the underlying infrastructure.
• Only unique functionalities have to be custom-coded.
The rest, from user authentication to sorting data can be done with
'plug-and-play' components.
• It no longer needs many DevOps experts.
Companies rely on the expertise of the developers at AWS, Google, MS,
instead of having to find, train, encourage.
• Cloud computing lowered cost barriers .
Serverless lowered the skill bars.
Changing History
3. Serverless and Big Data
• Files are uploaded to the Data Lake.
(like S3, Google Cloud Storage or Azure Storage)
• Once the data source arrives in the data lake, the function will be
triggered.
• The toughest part in batch processing is to estimate the load.
Serverless in this scenario provides a cost-efficient way to scale
automatically according to the load.
Big Data Application in Serverless Architecture
3. Serverless and Big Data
AWS Lambda vs Apache Spark
3. Serverless and Big Data
• https://medium.com/engineered-publicis-sapient/big-data-going-serverless-972df0b653f6%0B
• https://medium.com/systems-architectures/what-is-serverless-c39d251d9f9d%0B
• https://kruschecompany.com/serverless-big-data-ai/%20
• https://www.flexera.com/blog/industry-trends/trend-of-cloud-computing-2020/%0B
• https://cloud.google.com/blog/products/data-analytics/using-open-big-data-software-like-
dataproc%0B
• https://www.freecodecamp.org/news/a-brief-history-of-serverless-or-how-i-learned-to-stop-worrying-
and-start-loving-the-cloud-7e2fc633310d/%0B
• https://hackernoon.com/serverless-app-aws-cloudtrail-log-analytics-using-amazon-elasticsearch-
service-76ed8dfa064a
Reference
감사합니다.

More Related Content

Understanding serverless architecture

  • 2. 1. Serverless Trends 2. What Is Serverless? 3. Serverless and Big Data
  • 3. 1. Serverless Trends 2. What Is Serverless? 3. Serverless and Big Data
  • 4. Expected Market Growth 1. Serverless Trends
  • 5. Serverless is the top-growing extended cloud service, with a 50 percent growth over 2018. Exploding Uses 1. Serverless Trends
  • 6. The top five fastest-growing cloud services for 2020 include IoT, container-as-a- service, machine learning/AI and serverless. Exploding Uses 1. Serverless Trends
  • 7. 1. Serverless Trends 2. What Is Serverless? 3. Serverless and Big Data
  • 8. IaaS vs PaaS vs FaaS 2. What Is Serverless?
  • 9. • Wikipedia Serverless computing is a cloud computing execution model in which the cloud provider runs the server, and dynamically manages the allocation of machine resources • AWS • No servers to manage or provision • Consumption (not capacity) priced • Scales with usage • Availability and fault tolerance built in Definition 2. What Is Serverless?
  • 10. • Microservice • Event Driven • Stateless • Cold/Warm Start Serverless architecture assists in breaking down of the application into micro components to perform discrete functions. Once it has completed its task it spins down, awaiting the next invocation. This enables granular auto-scaling. Features 2. What Is Serverless?
  • 11. • Microservice • Event Driven • Stateless • Cold/Warm Start Features 2. What Is Serverless? The processing is only initiated once the qualifying “event” occurs. It is terminated when the processing is complete or the set time has elapsed. Events: http requests, database events, monitoring alerts, file uploads, cron jobs
  • 12. • Microservice • Event Driven • Stateless • Cold/Warm Start Functions should be written to be stateless and idempotent. Functions run inside stateless containers. Functions will most likely be invoked in a new container every time. Features 2. What Is Serverless?
  • 13. • Microservice • Event Driven • Stateless • Cold/Warm Start The code and configuration to execute a Lambda are simply stored somewhere on s3. When a trigger happens, a container is mounted with the resources and the code is loaded into memory. Features 2. What Is Serverless?
  • 14. • Microservice • Event Driven • Stateless • Cold/Warm Start After a cold start, the Lambda will remain instantiated for a while allowing other call not to have to wait for this initialization to be done each time. Calls made during this period are called “warm call”. Features 2. What Is Serverless?
  • 15. • Microservice • Event Driven • Stateless • Cold/Warm Start Keep warm: A user can set up a cron which invokes this Lambda at regular intervals so that it remains used from the AWS perspective. This prevents the Lambda from being unloaded. Features 2. What Is Serverless?
  • 16. • Microservice • Event Driven • Stateless • Cold/Warm Start One of the advantages of developing serverless applications is its automatic autoscaling feature. This means that in case of concurrent calls, the load will be spread over several Lambdas instances. Newly initialized Lambda corresponds to a longer waiting time for the user because of the cold start. Features 2. What Is Serverless?
  • 17. • Microservice • Event Driven • Stateless • Cold/Warm Start A way to avoid cold starts in case of concurrent calls is to create a pool of Lambdas that are kept warm. Each call on a Lambda at regular intervals will be charged. It is necessary to determine the optimal number of Lambda instances. Features 2. What Is Serverless?
  • 18. • User can write code and directly run it in the cloud without worrying about hardware. • Applications get high availability and auto-scalability without additional effort from the developer. • Serverless enhances developer productivity by focusing on what matters the most. • Serverless can bring greater cost-effectiveness, as a user pays only for the time taken to execute code, not for idle time. Advantages 2. What Is Serverless?
  • 19. • EDA(Event Driven Architecture)-based programming is generally harder to debug. • Integrated Development Environments (IDEs) to simplify the experience for complex serverless applications are not well supported yet. • Handling state using stateless functions takes time and resources. • Concerns about vendor lock-in rise. Limitations 2. What Is Serverless?
  • 20. 1. Serverless Trends 2. What Is Serverless? 3. Serverless and Big Data
  • 21. On-premise • Hadoop lowered the cost of the required bare metal infrastructure. ($ 10 ~ 100 million => $ 1 million) Still expensive for small companies. • Developers have to make hardwares provisioned, configured and paid for in order to execute the application. • It requires upfront capital investment in hardware and software before a single line of code was generated. Changing History 3. Serverless and Big Data
  • 22. Cloud • It doesn’t need upfront investment. • Pay-as-you-go and scalable model lowered infrastructure cost • Start-ups and SMEs can now afford to build and run big data apps • Lead to rich open source development • Still, setting up and maintaining the Cloud container architecture for big data ai apps is difficult. Those specialists are hard to find, and expensive. Changing History 3. Serverless and Big Data
  • 23. Serverless • Developers can write and deploy code without the hassle of managing the underlying infrastructure. • Only unique functionalities have to be custom-coded. The rest, from user authentication to sorting data can be done with 'plug-and-play' components. • It no longer needs many DevOps experts. Companies rely on the expertise of the developers at AWS, Google, MS, instead of having to find, train, encourage. • Cloud computing lowered cost barriers . Serverless lowered the skill bars. Changing History 3. Serverless and Big Data
  • 24. • Files are uploaded to the Data Lake. (like S3, Google Cloud Storage or Azure Storage) • Once the data source arrives in the data lake, the function will be triggered. • The toughest part in batch processing is to estimate the load. Serverless in this scenario provides a cost-efficient way to scale automatically according to the load. Big Data Application in Serverless Architecture 3. Serverless and Big Data
  • 25. AWS Lambda vs Apache Spark 3. Serverless and Big Data
  • 26. • https://medium.com/engineered-publicis-sapient/big-data-going-serverless-972df0b653f6%0B • https://medium.com/systems-architectures/what-is-serverless-c39d251d9f9d%0B • https://kruschecompany.com/serverless-big-data-ai/%20 • https://www.flexera.com/blog/industry-trends/trend-of-cloud-computing-2020/%0B • https://cloud.google.com/blog/products/data-analytics/using-open-big-data-software-like- dataproc%0B • https://www.freecodecamp.org/news/a-brief-history-of-serverless-or-how-i-learned-to-stop-worrying- and-start-loving-the-cloud-7e2fc633310d/%0B • https://hackernoon.com/serverless-app-aws-cloudtrail-log-analytics-using-amazon-elasticsearch- service-76ed8dfa064a Reference