(ARC304) Designing for SaaS: Next-Generation Software Delivery Models on AWS | AWS re:Invent 2014

Preview:

DESCRIPTION

SaaS architectures can be deployed onto AWS in a number of ways, and each optimizes for different factors from security to cost optimization. Come learn more about common deployment models used on AWS for SaaS architectures and how each of those models are tuned for customer specific needs. We will also review options and tradeoffs for common SaaS architectures, including cost optimization, resource optimization, performance optimization, and security and data isolation.

Citation preview

SaaS

delivery will constitute about

18% of all software spending

and nearly 20% of

applications spending

IDC "Worldwide SaaS and Cloud Software 2013–2017 Forecast and 2012 Vendor Shares" Doc #245084 Dec 2013

On-Prem Application

Hosting

AWS SaaS on AWS

https://aws.amazon.com/solutions/case-

studies

Fusion 360

Application

Object

Storage

Interaction

Monitoring

AnalyticsAuthentication &

Authorization

Databases

Application

Data Access Layer

Interaction

Authentication &

Authorization

Delivery

Users

Cache Locator Data

Accts

Rights

Monitoring Analytics

Ordering

Billing

Provisioning

Metering

~

Spot

Minute(s) Hour(s) Day(s) Week(s) Month(s) Year(s)

Ingest Analyze Summarize Aggregate Tier Archive

– Evolve your business model through usage analysis

– Monetize the data you collect

SaaS Component Architectures – Metering

Metering

Queue

Usage messages:

- User ID

- Timestamp

- Usage Type

- Usage Units

- …

Usage messages:

- User ID

- Usage Type

- Usage Units

- Usage Period

All actions and

consumption tagged

with user ID

App Data

Sources

Application

Instances

λ

Metering

Aggregators

Metering Data

Service

Billin

gA

naly

tics

Application

Instances

App Data

Metering Data

Billing Data

Custom Reports

Reporting Portal

Amazon S3

for Static Outputs

Canned Reports

via Portal Redirect

Reporting Portal Users

Direct Query

Access

Customer-Facing Analysis

Recommendations

Data Warehouse

Amazon EMR Cluster

Aggregation and Analysis

Direct Ingest

from Amazon S3

Amazon S3 Bucket

AWS Data

Pipelines—

Regularly Run

Log Rotation

DB Exports

Monitoring Analytics

Ordering

Billing

Provisioning

Metering

Customer N

Whole

stack

Auto scaling

CostCenter

=CustomerN

Tag

CostCenter

=CustomerN

Auto scaling

CostCenter

=CustomerN

Tag

Tag

Auto scaling

CostCenter

=Customer1

Tag

CostCenter

=Customer1

Auto scaling

CostCenter

=Customer1

Tag

Tag

Customer 1 …. SaaS Platform

Feature Usage

Monitoring Analytics

Ordering

Billing

Provisioning

Metering

SaaS Platform

Auto Scaling

Auto Scaling

Customer 1 Customer 2

Amazon EC2 Container Service Cluster

Monitoring Analytics

Ordering

Billing

Provisioning

Metering

SaaS Platform

Customer 1 Customer 2

Amazon EC2 Container Service

~

Spot

Security Group

Security Group

Application

Data Access Layer

Interaction

Monitoring Analytics

Authorization & Authentication

Delivery Ordering

Billing

Provisioning

Metering

Users

CacheData

LocatorApp Data Security

:

Rights

Rights

SaaS Consulting:

1. AWS flexibility Quickly respond to

changes in application needs in a cost

effective way

2. AWS innovation Keep up with latest

industry trends without building it all

yourself

3. AWS ecosystem Stand on the

shoulders of giants on the AWS platform

Collaborate

Build

Grow

Office Hours

Reference Architectures

Journey Stories

Partner Solutions

Upcoming Webinars*

*A complete schedule will be posted on

the APN Portal for registered SaaS

Partners.

Please give us your feedback on this

session. Complete session evaluations

and earn re:Invent swag.

http://bit.ly/awsevals

SaaS Architecture Best Practices:

• Separate the platform and program

• Future proof through abstraction

• Design for multi-multi-tenancy

• Know the lifecycle of your data

• Choose the right deployment model

• Collect everything and learn from it

• Optimize for cost and performance

• Secure and isolate