serverless computing · •direct-to-data store integration: batch, compress, and encrypt streaming...

67

Upload: others

Post on 20-May-2020

8 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Serverless Computing · •Direct-to-data store integration: Batch, compress, and encrypt streaming data for delivery into data destinations in as little as 60 secs using simple configurations
Page 2: Serverless Computing · •Direct-to-data store integration: Batch, compress, and encrypt streaming data for delivery into data destinations in as little as 60 secs using simple configurations

Roger S. Barga, Ph.D.

General Manager

Amazon Web Services

Serverless ComputingRedefining the Cloud

Page 3: Serverless Computing · •Direct-to-data store integration: Batch, compress, and encrypt streaming data for delivery into data destinations in as little as 60 secs using simple configurations

Technology Triggers

Page 4: Serverless Computing · •Direct-to-data store integration: Batch, compress, and encrypt streaming data for delivery into data destinations in as little as 60 secs using simple configurations
Page 5: Serverless Computing · •Direct-to-data store integration: Batch, compress, and encrypt streaming data for delivery into data destinations in as little as 60 secs using simple configurations

Highly Recommended http://a16z.com/2016/12/16/the-end-of-cloud-computing/

Page 6: Serverless Computing · •Direct-to-data store integration: Batch, compress, and encrypt streaming data for delivery into data destinations in as little as 60 secs using simple configurations

Serverless

Page 7: Serverless Computing · •Direct-to-data store integration: Batch, compress, and encrypt streaming data for delivery into data destinations in as little as 60 secs using simple configurations

Amazon Kinesis FirehoseLoad massive volumes of streaming data into S3, Redshift, Elasticsearch,…

• Zero administration: Capture and deliver streaming data into Amazon S3, Amazon Redshift, and

other destinations without writing an application or managing infrastructure.

• Direct-to-data store integration: Batch, compress, and encrypt streaming data for delivery into

data destinations in as little as 60 secs using simple configurations.

• Elastic: Scales to match data throughput w/o intervention

• Serverless ETL using AWS Lambda - Firehose can invoke your Lambda function to transform

incoming source data.

Capture and submit

streaming data

Analyze streaming data using your

favorite BI tools Firehose loads streaming data

continuously into Amazon S3, Redshift

and Elasticsearch

Page 8: Serverless Computing · •Direct-to-data store integration: Batch, compress, and encrypt streaming data for delivery into data destinations in as little as 60 secs using simple configurations

Amazon Kinesis Analytics

• Apply SQL on streams: Easily connect to a Kinesis Stream or Firehose Delivery Stream and apply SQL skills.

• Build real-time applications: Perform continual processing on streaming data with sub-second processing latencies using ANSI SQL

• Automatics Scalability : Serverless, elastically scales to match data throughput.

Connect to Kinesis streams,

Firehose delivery streamsRun standard SQL queries

against data streams

Kinesis Analytics can send processed data to

analytics tools so you can create alerts and

respond in real-time

Page 9: Serverless Computing · •Direct-to-data store integration: Batch, compress, and encrypt streaming data for delivery into data destinations in as little as 60 secs using simple configurations
Page 10: Serverless Computing · •Direct-to-data store integration: Batch, compress, and encrypt streaming data for delivery into data destinations in as little as 60 secs using simple configurations
Page 11: Serverless Computing · •Direct-to-data store integration: Batch, compress, and encrypt streaming data for delivery into data destinations in as little as 60 secs using simple configurations
Page 12: Serverless Computing · •Direct-to-data store integration: Batch, compress, and encrypt streaming data for delivery into data destinations in as little as 60 secs using simple configurations
Page 13: Serverless Computing · •Direct-to-data store integration: Batch, compress, and encrypt streaming data for delivery into data destinations in as little as 60 secs using simple configurations
Page 14: Serverless Computing · •Direct-to-data store integration: Batch, compress, and encrypt streaming data for delivery into data destinations in as little as 60 secs using simple configurations
Page 15: Serverless Computing · •Direct-to-data store integration: Batch, compress, and encrypt streaming data for delivery into data destinations in as little as 60 secs using simple configurations
Page 16: Serverless Computing · •Direct-to-data store integration: Batch, compress, and encrypt streaming data for delivery into data destinations in as little as 60 secs using simple configurations
Page 17: Serverless Computing · •Direct-to-data store integration: Batch, compress, and encrypt streaming data for delivery into data destinations in as little as 60 secs using simple configurations

Provisioning and Utilization

Availability and Fault Tolerance

Scaling

Operations and Management

Page 18: Serverless Computing · •Direct-to-data store integration: Batch, compress, and encrypt streaming data for delivery into data destinations in as little as 60 secs using simple configurations
Page 19: Serverless Computing · •Direct-to-data store integration: Batch, compress, and encrypt streaming data for delivery into data destinations in as little as 60 secs using simple configurations
Page 20: Serverless Computing · •Direct-to-data store integration: Batch, compress, and encrypt streaming data for delivery into data destinations in as little as 60 secs using simple configurations
Page 21: Serverless Computing · •Direct-to-data store integration: Batch, compress, and encrypt streaming data for delivery into data destinations in as little as 60 secs using simple configurations
Page 22: Serverless Computing · •Direct-to-data store integration: Batch, compress, and encrypt streaming data for delivery into data destinations in as little as 60 secs using simple configurations
Page 23: Serverless Computing · •Direct-to-data store integration: Batch, compress, and encrypt streaming data for delivery into data destinations in as little as 60 secs using simple configurations
Page 24: Serverless Computing · •Direct-to-data store integration: Batch, compress, and encrypt streaming data for delivery into data destinations in as little as 60 secs using simple configurations

Provisioning and Utilization

Availability and Fault Tolerance

Scaling

Operations and Management

Page 25: Serverless Computing · •Direct-to-data store integration: Batch, compress, and encrypt streaming data for delivery into data destinations in as little as 60 secs using simple configurations

Provisioning and Utilization

Availability and Fault Tolerance

Scaling

Operations and Management

Page 26: Serverless Computing · •Direct-to-data store integration: Batch, compress, and encrypt streaming data for delivery into data destinations in as little as 60 secs using simple configurations

Provisioning and Utilization

Availability and Fault Tolerance

Scaling

Operations and Management

Page 27: Serverless Computing · •Direct-to-data store integration: Batch, compress, and encrypt streaming data for delivery into data destinations in as little as 60 secs using simple configurations
Page 28: Serverless Computing · •Direct-to-data store integration: Batch, compress, and encrypt streaming data for delivery into data destinations in as little as 60 secs using simple configurations
Page 29: Serverless Computing · •Direct-to-data store integration: Batch, compress, and encrypt streaming data for delivery into data destinations in as little as 60 secs using simple configurations
Page 30: Serverless Computing · •Direct-to-data store integration: Batch, compress, and encrypt streaming data for delivery into data destinations in as little as 60 secs using simple configurations
Page 31: Serverless Computing · •Direct-to-data store integration: Batch, compress, and encrypt streaming data for delivery into data destinations in as little as 60 secs using simple configurations
Page 32: Serverless Computing · •Direct-to-data store integration: Batch, compress, and encrypt streaming data for delivery into data destinations in as little as 60 secs using simple configurations
Page 33: Serverless Computing · •Direct-to-data store integration: Batch, compress, and encrypt streaming data for delivery into data destinations in as little as 60 secs using simple configurations

Common Use Cases

Web Applications

• Static websites

• Complex web apps

• Packages for Flask and Express

Big Data

• Real time

• MapReduce

• Batch

Chatbots

• Powering chatbot logic

Backends

• Apps & services

• Mobile

• IoT

</></>

Amazon Alexa

• Powering voice-enabled apps

• Alexa Skills Kit

IT Automation

• Policy engines

• Extending AWS services

• Infrastructure management

Page 34: Serverless Computing · •Direct-to-data store integration: Batch, compress, and encrypt streaming data for delivery into data destinations in as little as 60 secs using simple configurations

Common Use Cases

Web Applications and Backends

Internet

Mobile Apps

Websites

Services

AWS Lambda

function

AWS

API Gateway

Cache

All publicly

accessible endpoints

Amazon

CloudWatch Monitoring

Amazon

CloudFront

AmazonS3AWS Lambda

function

AWS Lambda

functionAmazon DynamoDB

Web Applications

• Static websites

• Complex web apps

• Packages for Flask and Express

Backends

• Apps & services

• Mobile

• IoT

</></>

Page 35: Serverless Computing · •Direct-to-data store integration: Batch, compress, and encrypt streaming data for delivery into data destinations in as little as 60 secs using simple configurations

Task

Choice

Fail

Parallel

Lambda + Step FunctionsImage Recognition and Processing Backend

Common Use Cases

Web Applications

• Static websites

• Complex web apps

• Packages for Flask and Express

Backends

• Apps & services

• Mobile

• IoT

</></>

Page 36: Serverless Computing · •Direct-to-data store integration: Batch, compress, and encrypt streaming data for delivery into data destinations in as little as 60 secs using simple configurations

Serverless IoT with AWS Lambda at iRobot

Page 37: Serverless Computing · •Direct-to-data store integration: Batch, compress, and encrypt streaming data for delivery into data destinations in as little as 60 secs using simple configurations

AWSLambda

AmazonCloudFront

AmazonS3

AmazonDynamoDB

Amazon Redshift

AmazonRoute 53 Amazon VPC

AmazonCloudWatch

AWSCloudFormation

AWSCloudTrail

AWSConfig AWS IAMAWS KMSAWS WAF

Amazon Cognito AmazonSNS

Amazon APIGateway

AmazonSQS

AmazonElasticsearch Service

AmazonKinesis

AmazonQuickSight

AWS IoT

How iRobot leverages AWS

Page 38: Serverless Computing · •Direct-to-data store integration: Batch, compress, and encrypt streaming data for delivery into data destinations in as little as 60 secs using simple configurations

Serverless is Distributed by Nature

• Component graph becomes call graph

• Distributed systems thinking is required from the start

• Event-based architecture

Page 39: Serverless Computing · •Direct-to-data store integration: Batch, compress, and encrypt streaming data for delivery into data destinations in as little as 60 secs using simple configurations

Common Use Cases

Web Applications

• Static websites

• Complex web apps

• Packages for Flask and Express

Data Processing

• Real time

• MapReduce

• Batch

Chatbots

• Powering chatbot logic

Backends

• Apps & services

• Mobile

• IoT

</></>

Amazon Alexa

• Powering voice-enabled apps

• Alexa Skills Kit

IT Automation

• Policy engines

• Extending AWS services

• Infrastructure management

Page 40: Serverless Computing · •Direct-to-data store integration: Batch, compress, and encrypt streaming data for delivery into data destinations in as little as 60 secs using simple configurations

Common Use Cases

Web Applications

• Static websites

• Complex web apps

• Packages for Flask and Express

Page 41: Serverless Computing · •Direct-to-data store integration: Batch, compress, and encrypt streaming data for delivery into data destinations in as little as 60 secs using simple configurations
Page 42: Serverless Computing · •Direct-to-data store integration: Batch, compress, and encrypt streaming data for delivery into data destinations in as little as 60 secs using simple configurations
Page 43: Serverless Computing · •Direct-to-data store integration: Batch, compress, and encrypt streaming data for delivery into data destinations in as little as 60 secs using simple configurations

Common Use Cases

Web Applications

• Static websites

• Complex web apps

• Packages for Flask and Express

Data Processing

• Real time

• MapReduce

• Batch

Chatbots

• Powering chatbot logic

Backends

• Apps & services

• Mobile

• IoT

</></>

Amazon Alexa

• Powering voice-enabled apps

• Alexa Skills Kit

IT Automation

• Policy engines

• Extending AWS services

• Infrastructure management

Lambda + S3

Page 44: Serverless Computing · •Direct-to-data store integration: Batch, compress, and encrypt streaming data for delivery into data destinations in as little as 60 secs using simple configurations

Common Use Cases

Data Processing

• Real time

• MapReduce

• Batch

Lambda + Kinesis + DynamoDB

Page 45: Serverless Computing · •Direct-to-data store integration: Batch, compress, and encrypt streaming data for delivery into data destinations in as little as 60 secs using simple configurations

Common Use Cases

Data Processing

• Real time

• MapReduce

• Batch

Lambda + DynamoDB + Redshift

Page 46: Serverless Computing · •Direct-to-data store integration: Batch, compress, and encrypt streaming data for delivery into data destinations in as little as 60 secs using simple configurations

What to expect from the session

15-20 minutes of processing now in seconds2x order of magnitude for cost savings

https://www.youtube.com/watch?v=TXmkj2a0fRE

Nordstrom Recommendations

Page 47: Serverless Computing · •Direct-to-data store integration: Batch, compress, and encrypt streaming data for delivery into data destinations in as little as 60 secs using simple configurations

Common Use Cases

Web Applications

• Static websites

• Complex web apps

• Packages for Flask and Express

Data Processing

• Real time

• MapReduce

• Batch

Chatbots

• Powering chatbot logic

Backends

• Apps & services

• Mobile

• IoT

</></>

Amazon Alexa

• Powering voice-enabled apps

• Alexa Skills Kit

IT Automation

• Policy engines

• Extending AWS services

• Infrastructure management

Page 48: Serverless Computing · •Direct-to-data store integration: Batch, compress, and encrypt streaming data for delivery into data destinations in as little as 60 secs using simple configurations

Common Use Cases

Web Applications

• Static websites

• Complex web apps

• Packages for Flask and Express

Data Processing

• Real time

• MapReduce

• Batch

Chatbots

• Powering chatbot logic

Backends

• Apps & services

• Mobile

• IoT

</></>

Amazon Alexa

• Powering voice-enabled apps

• Alexa Skills Kit

IT Automation

• Policy engines

• Extending AWS services

• Infrastructure management

Page 49: Serverless Computing · •Direct-to-data store integration: Batch, compress, and encrypt streaming data for delivery into data destinations in as little as 60 secs using simple configurations
Page 50: Serverless Computing · •Direct-to-data store integration: Batch, compress, and encrypt streaming data for delivery into data destinations in as little as 60 secs using simple configurations
Page 51: Serverless Computing · •Direct-to-data store integration: Batch, compress, and encrypt streaming data for delivery into data destinations in as little as 60 secs using simple configurations
Page 52: Serverless Computing · •Direct-to-data store integration: Batch, compress, and encrypt streaming data for delivery into data destinations in as little as 60 secs using simple configurations
Page 53: Serverless Computing · •Direct-to-data store integration: Batch, compress, and encrypt streaming data for delivery into data destinations in as little as 60 secs using simple configurations
Page 54: Serverless Computing · •Direct-to-data store integration: Batch, compress, and encrypt streaming data for delivery into data destinations in as little as 60 secs using simple configurations
Page 55: Serverless Computing · •Direct-to-data store integration: Batch, compress, and encrypt streaming data for delivery into data destinations in as little as 60 secs using simple configurations
Page 56: Serverless Computing · •Direct-to-data store integration: Batch, compress, and encrypt streaming data for delivery into data destinations in as little as 60 secs using simple configurations
Page 57: Serverless Computing · •Direct-to-data store integration: Batch, compress, and encrypt streaming data for delivery into data destinations in as little as 60 secs using simple configurations
Page 58: Serverless Computing · •Direct-to-data store integration: Batch, compress, and encrypt streaming data for delivery into data destinations in as little as 60 secs using simple configurations
Page 59: Serverless Computing · •Direct-to-data store integration: Batch, compress, and encrypt streaming data for delivery into data destinations in as little as 60 secs using simple configurations
Page 60: Serverless Computing · •Direct-to-data store integration: Batch, compress, and encrypt streaming data for delivery into data destinations in as little as 60 secs using simple configurations
Page 61: Serverless Computing · •Direct-to-data store integration: Batch, compress, and encrypt streaming data for delivery into data destinations in as little as 60 secs using simple configurations
Page 62: Serverless Computing · •Direct-to-data store integration: Batch, compress, and encrypt streaming data for delivery into data destinations in as little as 60 secs using simple configurations
Page 63: Serverless Computing · •Direct-to-data store integration: Batch, compress, and encrypt streaming data for delivery into data destinations in as little as 60 secs using simple configurations
Page 64: Serverless Computing · •Direct-to-data store integration: Batch, compress, and encrypt streaming data for delivery into data destinations in as little as 60 secs using simple configurations
Page 65: Serverless Computing · •Direct-to-data store integration: Batch, compress, and encrypt streaming data for delivery into data destinations in as little as 60 secs using simple configurations
Page 66: Serverless Computing · •Direct-to-data store integration: Batch, compress, and encrypt streaming data for delivery into data destinations in as little as 60 secs using simple configurations
Page 67: Serverless Computing · •Direct-to-data store integration: Batch, compress, and encrypt streaming data for delivery into data destinations in as little as 60 secs using simple configurations

Takeaways

Serverless is a Fundamental Component of Modern Applications

• Many enterprise applications can go serverless

• Move to event driven computing

The ecosystem continues to grow

• Tooling, languages, and application capabilities

• But we still have a long ways to go…

Serverless and Edge are technology triggers with the potential to

reshape distributed computing and the role of cloud computing