Scaling Seamlessly &
Going Global with the Cloud
Pieter Kemps & Ganesh Raja
503
Service Temporarily Unavailable
The server is temporarily unable to service
your request due to maintenance downtime o...
With AWS, scale from one instance…
…to thousands
Fully automated!
BUT…
How do I scale my architecture
to support my first 10M users?
“Think Big, Start Small, Scale Fast”
Eric Ries, author of NY Times
bestseller “The Lean Startup”
02 03
MVP Scale
Scaling Seamlessly & Going Global
Using a range of AWS services to build
a scalable Architecture that supp...
1. Dev & Test
2. Alpha Release
3. Beta Release
Production 1.0
Production 1.0
Architecture
Self-Managed Fully-Managed
Database Server on
Amazon EC2
Your choice of
database running on
Amazon EC2
Bring Your Own Lice...
But how do I choose what
DB technology I need?
SQL? NoSQL?
Some folks won’t like this.
But…
Start with SQL databases
But, but, but, but…
No. You don’t.
Start with SQL databases
Established and well worn technology
Lots of existing code, communities, books, tools, etc
Clear patterns to scalability
Y...
• Database-as-a-Service
• No need to install or manage database
instances
• Scalable and fault tolerant configurations
Fea...
Automatic resizing of
compute clusters based on
demand Trigger auto-scaling policy
Feature Details
Control Define minimum ...
Production 1.0
Architecture
Production 1.0 Architecture
Well-designed, 2 Tier architecture
Highly Available due to Multiple Availability Zone
Load Bal...
BUT…
Production 1.0 Architecture
Wasted server capacity for static content
Reliability and durability are not yet optimal
DRY –...
SO…
Let’s add
Simple Storage Service (S3)
CloudFront
to optimize the end-user experience
• World-wide content distribution
network
• Easily distribute content to end
users with low latency, high data
transfer sp...
Production 1.2
Architecture
Production 1.2 Architecture
Well-designed, 2 Tier architecture
Highly Available due to Multiple Availability Zone
Load Bal...
BUT…
Production 1.2 Architecture
You are now at Scale…
…with lots of data…
…and need to optimize continuously.
But how and wher...
SO…
Let’s add
Big Data
for analytics of web, mobile, gaming,
and log data
Multiple managed AWS services for Big Data
Provisioned throughput NoSQL database
Fast, predictable performance
Fully distributed, fault tolerant architecture
Feature...
• Scalability to deal with 1.2TB / 100GB of metadata per customer
• Needed a DB engine to support 12K reads + 12K writes p...
• Managed, elastic Hadoop cluster
• Integrates with S3 & DynamoDB
• Leverage Hive & Pig analytics scripts
Feature Details
...
Foursquare…
Founded in 2009
112M in Venture Capital
33 million users
1.3 million businesses using the service
…generates a...
Uses EMR for
Evaluation of new features
Machine learning
Exploratory analysis
Daily customer usage reporting
Long-term tre...
Benefits of EMR
Ease-of-Use
“We have decreased the processing time for urgent data-analysis”
Flexibility
To deal with chan...
Production 1.3
Architecture
Production 1.3 Architecture
Well-designed, 2 Tier architecture
Highly Available due to Multiple Availability Zone
Load Bal...
AWS Summit 2013 | India - Scaling Seamlessly and Going Global with the Cloud, Ganesh Raja
AWS Summit 2013 | India - Scaling Seamlessly and Going Global with the Cloud, Ganesh Raja
AWS Summit 2013 | India - Scaling Seamlessly and Going Global with the Cloud, Ganesh Raja
AWS Summit 2013 | India - Scaling Seamlessly and Going Global with the Cloud, Ganesh Raja
AWS Summit 2013 | India - Scaling Seamlessly and Going Global with the Cloud, Ganesh Raja
AWS Summit 2013 | India - Scaling Seamlessly and Going Global with the Cloud, Ganesh Raja
AWS Summit 2013 | India - Scaling Seamlessly and Going Global with the Cloud, Ganesh Raja
AWS Summit 2013 | India - Scaling Seamlessly and Going Global with the Cloud, Ganesh Raja
AWS Summit 2013 | India - Scaling Seamlessly and Going Global with the Cloud, Ganesh Raja
Upcoming SlideShare
Loading in …5
×

AWS Summit 2013 | India - Scaling Seamlessly and Going Global with the Cloud, Ganesh Raja

933 views

Published on

AWS provides a platform that is ideally suited for deploying highly available and reliable systems that can scale with a minimal amount of human interaction. This talk describes a set of architectural patterns that support highly available services that are also scalable, low cost, low latency and allow for taking your application global with the click of a button. We walk through the various architectural decisions taken to achieve high scale and address global audience.

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
933
On SlideShare
0
From Embeds
0
Number of Embeds
2
Actions
Shares
0
Downloads
0
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

AWS Summit 2013 | India - Scaling Seamlessly and Going Global with the Cloud, Ganesh Raja

  1. 1. Scaling Seamlessly & Going Global with the Cloud Pieter Kemps & Ganesh Raja
  2. 2. 503 Service Temporarily Unavailable The server is temporarily unable to service your request due to maintenance downtime or capacity problems. Please try again later.
  3. 3. With AWS, scale from one instance…
  4. 4. …to thousands Fully automated!
  5. 5. BUT… How do I scale my architecture to support my first 10M users?
  6. 6. “Think Big, Start Small, Scale Fast” Eric Ries, author of NY Times bestseller “The Lean Startup”
  7. 7. 02 03 MVP Scale Scaling Seamlessly & Going Global Using a range of AWS services to build a scalable Architecture that support 10M users
  8. 8. 1. Dev & Test 2. Alpha Release 3. Beta Release
  9. 9. Production 1.0 Production 1.0 Architecture
  10. 10. Self-Managed Fully-Managed Database Server on Amazon EC2 Your choice of database running on Amazon EC2 Bring Your Own License (BYOL) Amazon DynamoDB Managed NoSQL database service using SSD storage Seamless scalability Zero administration Amazon RDS Relational Database as a managed service Flexible licensing: BYOL or License Included Database Options
  11. 11. But how do I choose what DB technology I need? SQL? NoSQL?
  12. 12. Some folks won’t like this. But…
  13. 13. Start with SQL databases
  14. 14. But, but, but, but…
  15. 15. No. You don’t.
  16. 16. Start with SQL databases
  17. 17. Established and well worn technology Lots of existing code, communities, books, tools, etc Clear patterns to scalability You aren’t going to break SQL DBs in your first 10 million users. No really, you won’t Why SQL?
  18. 18. • Database-as-a-Service • No need to install or manage database instances • Scalable and fault tolerant configurations Feature Details Platform support Create MySQL, SQL Server and Oracle Preconfigured Get started instantly with sensible default settings Automated patching Keep your database platform up to date automatically Backups Automatic backups and point in time recovery using snapshots Manual DB snapshots Failover Automated failover to slave hosts in event of a failure Replication Easily create read-replicas of your data and seamlessly replicate data across availability zones Amazon Relational Database Service (RDS)
  19. 19. Automatic resizing of compute clusters based on demand Trigger auto-scaling policy Feature Details Control Define minimum and maximum instance pool sizes and when scaling and cool down occurs. Integrated to Amazon CloudWatch Use metrics gathered by CloudWatch to drive scaling. Instance types Run Auto Scaling for On-Demand and Spot Instances. Compatible with VPC. as-create-auto-scaling-group MyGroup --launch-configuration MyConfig --availability-zones us-east-1a --min-size 4 --max-size 200 Auto-Scaling Amazon CloudWatch
  20. 20. Production 1.0 Architecture
  21. 21. Production 1.0 Architecture Well-designed, 2 Tier architecture Highly Available due to Multiple Availability Zone Load Balancing & Auto-Scaling for full scalability Fully managed Database included Capable of serving >10K-100Ks users
  22. 22. BUT…
  23. 23. Production 1.0 Architecture Wasted server capacity for static content Reliability and durability are not yet optimal DRY – Don’t Repeat Yourself End-user experience could be improved thru offloading & caching
  24. 24. SO…
  25. 25. Let’s add Simple Storage Service (S3) CloudFront to optimize the end-user experience
  26. 26. • World-wide content distribution network • Easily distribute content to end users with low latency, high data transfer speeds, and no commitments Feature Details Fast Multiple world-wide edge locations to serve content as close to your users as possible Integrated with other services Works seamlessly with S3 and EC2 origin servers Dynamic content Supports static and dynamic content from origin servers Streaming Supports rtmp from S3 and includes support for live streaming from Adobe FMS and Microsoft Media Server CloudFront
  27. 27. Production 1.2 Architecture
  28. 28. Production 1.2 Architecture Well-designed, 2 Tier architecture Highly Available due to Multiple Availability Zone Load Balancing & Auto-Scaling for full scalability Fully managed Database included Static content stored in durable, consistent way Improved end-user experience through CDN Capable of serving >100K-1M+ users
  29. 29. BUT…
  30. 30. Production 1.2 Architecture You are now at Scale… …with lots of data… …and need to optimize continuously. But how and where?
  31. 31. SO…
  32. 32. Let’s add Big Data for analytics of web, mobile, gaming, and log data
  33. 33. Multiple managed AWS services for Big Data
  34. 34. Provisioned throughput NoSQL database Fast, predictable performance Fully distributed, fault tolerant architecture Feature Details Provisioned throughput Dial up or down provisioned read/write capacity Predictable performance Average single digit millisecond latencies from SSD backed infrastructure Strong consistency Be sure you are reading the most up to date values Fault tolerant Data replicated across availability zones Monitoring Integrated to Cloud Watch Secure Integrates with AWS Identity and Access Management (IAM) Elastic MapReduce Integrates with Elastic MapReduce for complex analytics on large datasets DynamoDB
  35. 35. • Scalability to deal with 1.2TB / 100GB of metadata per customer • Needed a DB engine to support 12K reads + 12K writes per sec. • “…a very smooth experience. Thank you AWS for a great offering” druva.com/blog/2012/05/23/insync-makes-to-aws-dynamodb/
  36. 36. • Managed, elastic Hadoop cluster • Integrates with S3 & DynamoDB • Leverage Hive & Pig analytics scripts Feature Details Scalable Use as many or as few compute instances running Hadoop as you want. Modify the number of instances while your job flow is running Integrated with other services Works seamlessly with S3 as origin and output. Integrates with DynamoDB Comprehensive Supports languages such as Hive and Pig for defining analytics, and allows complex definitions in Cascading, Java, Ruby, Perl, Python, PHP, R, or C++ Cost effective Works with Spot instance types Monitoring Monitor job flows from with the management console Elastic MapReduce (EMR)
  37. 37. Foursquare… Founded in 2009 112M in Venture Capital 33 million users 1.3 million businesses using the service …generates a lot of Data 3.5 billion check-ins 15M+ venues, Terabytes of log data
  38. 38. Uses EMR for Evaluation of new features Machine learning Exploratory analysis Daily customer usage reporting Long-term trend analysis
  39. 39. Benefits of EMR Ease-of-Use “We have decreased the processing time for urgent data-analysis” Flexibility To deal with changing requirements & dynamically expand reporting clusters Costs “We have reduced our analytics costs by over 50%”
  40. 40. Production 1.3 Architecture
  41. 41. Production 1.3 Architecture Well-designed, 2 Tier architecture Highly Available due to Multiple Availability Zone Load Balancing & Auto-Scaling for full scalability Static content stored in durable, consistent way Improved end-user experience through CDN Big Data analytics built in for continuous optimization Capable of serving >1m-10M+ users

×