SlideShare uma empresa Scribd logo
1 de 30
Ahead in the Clouds
aka Growing up with AWS
Who are we?
Who are we?

•   Premium photo & video sharing.
•   Everyone pays!
•   Bootstrapped in ’02.
•   $10M+ as of ’07.
•   Profitable.
•   Top 250 website.
•   35M+ people / month
The challenge

•   Premium! aka “more” + “better” + “faster”.
•   Unlimited storage.
•   Unlimited bandwidth.
•   Huge photos (100Mpix!). Billions of them.
•   Huge videos (1080p, high bitrates)
•   Lots of photos per page.
•   Super fast.
Architecture
early 2006

•   Multiple datacenters
•   Self-managed
•   Self-installed hardware
•   Tons of spinning disks
•   Tons of custom servers
•   Tons of distracting work
•   We’re not a datacenter company
The phone call
early 2006

•   *ring* “Hi, this is Amazon, we’d like to sell you storage.”
•   “Say what? Amazon? Storage?”
•   “Yeah, how does $0.50/GB/mo sound?”
•   ... quick napkin math ... “Sorry, we do $0.20/GB today”
•   “Oh, really? Thanks for the feedback.” *click*
•   ... days pass ...
•   *ring* “Hi, Amazon again. How about $0.15/GB/mo?”
•   Sold.
It begins
April 2006

•   Started simple. Storage - and lots of it.
•   Slow at first. “Isn’t Amazon a bookseller?”
•   First bill a huge $1147.41 in April. ;)
•   Redundant backup to begin with.
•   Soon, primary with on-site as backup.
•   Finally, 100% photos & videos in S3.
•   “Wow, this thing is for real!”
Show me the money
early 2007

• Guesstimate: ~$500K saved first year
• Actual:
  • Growth: 64M photos -> 140M photos
  • Stored 200TB at S3
  • Disks would have cost: $40K/mo -> $100K/mo
  • $922K projected spend, $230K actual
  • $692K in cold hard savings
• Taxes! $295K ‘saved’ in cash flow.
• Reselling disks - recouping sunk costs.
The revelation
early 2007

•   Yes, S3 is cheap.
•   Yes, it’s durable and available.
•   Yes, it’s fast.
•   But most important: Weight off our shoulders!
•   No more hard disk replacements!
•   No more midnight datacenter fiascos!
•   We can focus on photo sharing!
But wait, there’s more...
2007

•   Amazon does books ... storage... and compute?!
•   Hey, we have lots of compute!
•   Web servers, background proc, rendering, etc
•   Buying, installing, maintaining servers
•   Often idle.
•   Let’s try rendering first.
SkyNet Lives!
2007
SkyNet Lives!
2007

•   First EC2 service: ‘RubberBand’
•   Handles all background photo processing
•   Automated, near zero human interaction
•   Tried to take over the world
•   Launched ~1920 cores in a single API call
•   Amazon spun them up as requested
•   Renamed to ‘SkyNet’ :)
SkyNet success
2007-2012+

• Rendering load peaky
• User-driven based on # of photos shot recently
• Only roughly predictable
  • Sundays heavy - but how heavy?
  • Big spike - but will it last?
• Elastic scaling maximizes throughput, minimizes cost
• Instrument and automate
• No humans!
Leverage for... new products?
late 2007

•   Customers begging us for video
•   Not just any video: Hi-Def & high bitrate
•   Potentially huge $$ capital expense (lots of servers)
•   Totally unknown customer adoption
•   Upside? Who knows?!
Leverage for new products!
late 2007

•   Use EC2! No capital expense!
•   If usage takes off, just scale it up!
•   If usage falls off a cliff, just turn it off!
•   Worked like a charm
•   Minimal investment to get it into customers’ hands
•   Took off (whew!)
New products part two, electric boogaloo
mid 2008

•   Customers begging for archival storage
•   RAW photos, original video footage, etc
•   Breaks our business model
•   Potentially costly to implement
•   Again, unknown customer adoption
New products part two, electric boogaloo
mid 2008

•   DevPay to the rescue!
•   S3 + Amazon Payments mashup
•   We called it ‘SmugVault’
•   Store anything you like, pay as you go
•   Amazon bills customer directly
•   Terabytes of backup storage
•   Happy customers
Mo money
2009

•   Amazon does payments, too?
•   Sure, why not. We’ll try it.
•   SmugMug subscriptions via Amazon Payments
•   Immediate 7% increase in total signups
EC2 steamroller begins
2009

•   Important new EC2-related services arrive
•   Auto-Scaling
•   Elastic Load Balancing
•   Monitoring
•   Able to migrate lots more services to AWS
EC2 steamroller: Photos & Videos
2009

•   SmugMug’s security & privacy layer complex
•   Doesn’t map to S3’s
•   Needs a proxy layer to intercept & validate requests
•   From client straight to AWS
•   Bypasses our datacenters
•   Auto-Scaling + ELB + EC2 + S3 = Win
EC2 steamroller: Realtime rendering
2010

•   Lots of different devices & screens out there
•   SmugMug’s pre-rendered sizes don’t always fit
•   Allow realtime dynamic photo resizing server-side
•   Any resolution they wish
•   Must be lightning fast
•   Unpredictable load
•   More ELB + Auto-Scaling + EC2 + S3
EC2 steamroller: Uploads
2011

• No more proxy uploads to our servers
• Uploads go straight to ELB->EC2->S3
• Can’t use Auto-Scaling, terminates
  too fast
• User-generated, unpredictable load
• ELB + EC2 + S3
EC2 steamroller
today

•   Vast majority of CPU usage in EC2
•   100% photo & video requests served from AWS
•   4 out of 5 customer facing web clusters 100% in AWS
•   5th one “any day now” - full testing currently underway
•   Final stage required advanced AWS functionality
    • DynamoDB
    • EC2 instances w/SSD (hi.4xlarge)
• 100% AWS within reach
EC2 evolution: hi.4xlarge
2012

• Finally.
• Extremely high-scale I/O DB-class systems.
• Final missing-link to let us migrate 100% to AWS.
  • (We’re already 100% SSD in our datacenters)
• 2TB of SSD storage
• 120,000 random read IOPS
• 10,000 - 85,000 random write IOPS
• omg.
Alien technology: DynamoDB
2012

•   Finally.
•   “S3 for databases”
•   Bottomless low-latency datastore.
•   Key-value. (aka NoSQL)
•   Bulk of our data headed to DynamoDB
•   omg.
Alien technology: CloudSearch
2012
Alien technology: CloudSearch
2012

•   Billions of documents to search
•   Millions of new & changed docs per day
•   Many dozens of different facets
•   Old system basically duct tape + SSDs
•   CloudSearch blazingly fast even with crazy queries.
•   omg.
Handling Failure
always & forever

•   Everything breaks. Even in your own datacenters.
•   Especially in your own datacenters.
•   Plan for it.
•   With AWS, ‘breaking’ is clearly defined
•   Regions, Zones, Services, Instances, etc.
•   Mix & match for your needs
•   Multi-AZ is currently our sweet spot.
•   Minimal impact during various ‘Amazonpocalypse’ events
Thanks!
questions?

• Twitter: DonMacAskill

• Blog: http://don.blogs.smugmug.com/

• Email: don@smugmug.com
We are sincerely eager to
 hear your feedback on this
presentation and on re:Invent.

 Please fill out an evaluation
   form when you have a
            chance.

Mais conteúdo relacionado

Mais procurados

AWS Storage and Data Migration: AWS Innovate Ottawa
AWS Storage and Data Migration: AWS Innovate OttawaAWS Storage and Data Migration: AWS Innovate Ottawa
AWS Storage and Data Migration: AWS Innovate OttawaAmazon Web Services
 
Moving Your Media Supply Chain to the AWS Cloud
Moving Your Media Supply Chain to the AWS CloudMoving Your Media Supply Chain to the AWS Cloud
Moving Your Media Supply Chain to the AWS CloudAmazon Web Services
 
(SOV203) Understanding AWS Storage Options | AWS re:Invent 2014
(SOV203) Understanding AWS Storage Options | AWS re:Invent 2014(SOV203) Understanding AWS Storage Options | AWS re:Invent 2014
(SOV203) Understanding AWS Storage Options | AWS re:Invent 2014Amazon Web Services
 
AWS Services for Content Production
AWS Services for Content ProductionAWS Services for Content Production
AWS Services for Content ProductionAmazon Web Services
 
Building Scalable Immersive Media Solutions on AWS
Building Scalable Immersive Media Solutions on AWSBuilding Scalable Immersive Media Solutions on AWS
Building Scalable Immersive Media Solutions on AWSAmazon Web Services
 
Getting Started with the Hybrid Cloud: Enterprise Backup and Recovery
Getting Started with the Hybrid Cloud: Enterprise Backup and RecoveryGetting Started with the Hybrid Cloud: Enterprise Backup and Recovery
Getting Started with the Hybrid Cloud: Enterprise Backup and RecoveryAmazon Web Services
 
Migrating Large Scale Data Sets to the Cloud
Migrating Large Scale Data Sets to the CloudMigrating Large Scale Data Sets to the Cloud
Migrating Large Scale Data Sets to the CloudAmazon Web Services
 
Data Storage for the Long Haul: Compliance and Archive
Data Storage for the Long Haul: Compliance and ArchiveData Storage for the Long Haul: Compliance and Archive
Data Storage for the Long Haul: Compliance and ArchiveAmazon Web Services
 
Introduction to AWS Storage Services
Introduction to AWS Storage ServicesIntroduction to AWS Storage Services
Introduction to AWS Storage ServicesAmazon Web Services
 
Understanding AWS Storage Options (STG101) | AWS re:Invent 2013
Understanding AWS Storage Options (STG101) | AWS re:Invent 2013Understanding AWS Storage Options (STG101) | AWS re:Invent 2013
Understanding AWS Storage Options (STG101) | AWS re:Invent 2013Amazon Web Services
 
AWS Summit Milan - Opening Keynote
AWS Summit Milan - Opening KeynoteAWS Summit Milan - Opening Keynote
AWS Summit Milan - Opening KeynoteAmazon Web Services
 
AWS Data Transfer Services: Data Ingest Strategies Into the AWS Cloud
AWS Data Transfer Services: Data Ingest Strategies Into the AWS CloudAWS Data Transfer Services: Data Ingest Strategies Into the AWS Cloud
AWS Data Transfer Services: Data Ingest Strategies Into the AWS CloudAmazon Web Services
 
Creative content storage in the AWS Cloud
Creative content storage in the AWS CloudCreative content storage in the AWS Cloud
Creative content storage in the AWS CloudAmazon Web Services
 
(STG311) AWS Storage Gateway: Secure, Cost-Effective Backup & Archive
(STG311) AWS Storage Gateway: Secure, Cost-Effective Backup & Archive(STG311) AWS Storage Gateway: Secure, Cost-Effective Backup & Archive
(STG311) AWS Storage Gateway: Secure, Cost-Effective Backup & ArchiveAmazon Web Services
 
AWS Data Transfer Services: Accelerating Large-Scale Data Ingest Into the AWS...
AWS Data Transfer Services: Accelerating Large-Scale Data Ingest Into the AWS...AWS Data Transfer Services: Accelerating Large-Scale Data Ingest Into the AWS...
AWS Data Transfer Services: Accelerating Large-Scale Data Ingest Into the AWS...Amazon Web Services
 

Mais procurados (20)

AWS Storage and Data Migration: AWS Innovate Ottawa
AWS Storage and Data Migration: AWS Innovate OttawaAWS Storage and Data Migration: AWS Innovate Ottawa
AWS Storage and Data Migration: AWS Innovate Ottawa
 
Moving Your Media Supply Chain to the AWS Cloud
Moving Your Media Supply Chain to the AWS CloudMoving Your Media Supply Chain to the AWS Cloud
Moving Your Media Supply Chain to the AWS Cloud
 
(SOV203) Understanding AWS Storage Options | AWS re:Invent 2014
(SOV203) Understanding AWS Storage Options | AWS re:Invent 2014(SOV203) Understanding AWS Storage Options | AWS re:Invent 2014
(SOV203) Understanding AWS Storage Options | AWS re:Invent 2014
 
AWS Services for Content Production
AWS Services for Content ProductionAWS Services for Content Production
AWS Services for Content Production
 
Aws storage for media overview
Aws storage for media overview Aws storage for media overview
Aws storage for media overview
 
Ingest Options on AWS
Ingest Options on AWSIngest Options on AWS
Ingest Options on AWS
 
Building Scalable Immersive Media Solutions on AWS
Building Scalable Immersive Media Solutions on AWSBuilding Scalable Immersive Media Solutions on AWS
Building Scalable Immersive Media Solutions on AWS
 
Getting Started with the Hybrid Cloud: Enterprise Backup and Recovery
Getting Started with the Hybrid Cloud: Enterprise Backup and RecoveryGetting Started with the Hybrid Cloud: Enterprise Backup and Recovery
Getting Started with the Hybrid Cloud: Enterprise Backup and Recovery
 
Tech Summit & AWS introduction
Tech Summit & AWS introductionTech Summit & AWS introduction
Tech Summit & AWS introduction
 
Migrating Large Scale Data Sets to the Cloud
Migrating Large Scale Data Sets to the CloudMigrating Large Scale Data Sets to the Cloud
Migrating Large Scale Data Sets to the Cloud
 
AWS Storage State of the Union
AWS Storage State of the UnionAWS Storage State of the Union
AWS Storage State of the Union
 
Data Storage for the Long Haul: Compliance and Archive
Data Storage for the Long Haul: Compliance and ArchiveData Storage for the Long Haul: Compliance and Archive
Data Storage for the Long Haul: Compliance and Archive
 
Introduction to AWS Storage Services
Introduction to AWS Storage ServicesIntroduction to AWS Storage Services
Introduction to AWS Storage Services
 
Understanding AWS Storage Options (STG101) | AWS re:Invent 2013
Understanding AWS Storage Options (STG101) | AWS re:Invent 2013Understanding AWS Storage Options (STG101) | AWS re:Invent 2013
Understanding AWS Storage Options (STG101) | AWS re:Invent 2013
 
AWS Summit Milan - Opening Keynote
AWS Summit Milan - Opening KeynoteAWS Summit Milan - Opening Keynote
AWS Summit Milan - Opening Keynote
 
AWS Data Transfer Services: Data Ingest Strategies Into the AWS Cloud
AWS Data Transfer Services: Data Ingest Strategies Into the AWS CloudAWS Data Transfer Services: Data Ingest Strategies Into the AWS Cloud
AWS Data Transfer Services: Data Ingest Strategies Into the AWS Cloud
 
Creative content storage in the AWS Cloud
Creative content storage in the AWS CloudCreative content storage in the AWS Cloud
Creative content storage in the AWS Cloud
 
(STG311) AWS Storage Gateway: Secure, Cost-Effective Backup & Archive
(STG311) AWS Storage Gateway: Secure, Cost-Effective Backup & Archive(STG311) AWS Storage Gateway: Secure, Cost-Effective Backup & Archive
(STG311) AWS Storage Gateway: Secure, Cost-Effective Backup & Archive
 
AWS Data Transfer Services: Accelerating Large-Scale Data Ingest Into the AWS...
AWS Data Transfer Services: Accelerating Large-Scale Data Ingest Into the AWS...AWS Data Transfer Services: Accelerating Large-Scale Data Ingest Into the AWS...
AWS Data Transfer Services: Accelerating Large-Scale Data Ingest Into the AWS...
 
Deep Dive On Amazon Redshift
Deep Dive On Amazon RedshiftDeep Dive On Amazon Redshift
Deep Dive On Amazon Redshift
 

Semelhante a STP102 Ahead in the Clouds - AWS re: Invent 2012

Running MongoDB in the Cloud
Running MongoDB in the CloudRunning MongoDB in the Cloud
Running MongoDB in the CloudTony Tam
 
Inside Wordnik's Architecture
Inside Wordnik's ArchitectureInside Wordnik's Architecture
Inside Wordnik's ArchitectureTony Tam
 
[AWSKRUG&JAWS-UG Meetup #1] 70% Cost Reduction with On-demand resizing
[AWSKRUG&JAWS-UG Meetup #1] 70% Cost Reduction with On-demand resizing[AWSKRUG&JAWS-UG Meetup #1] 70% Cost Reduction with On-demand resizing
[AWSKRUG&JAWS-UG Meetup #1] 70% Cost Reduction with On-demand resizingAWSKRUG - AWS한국사용자모임
 
Coates bosc2010 clouds-fluff-and-no-substance
Coates bosc2010 clouds-fluff-and-no-substanceCoates bosc2010 clouds-fluff-and-no-substance
Coates bosc2010 clouds-fluff-and-no-substanceBOSC 2010
 
A Case Study of NoSQL Adoption: What Drove Wordnik Non-Relational?
A Case Study of NoSQL Adoption: What Drove Wordnik Non-Relational?A Case Study of NoSQL Adoption: What Drove Wordnik Non-Relational?
A Case Study of NoSQL Adoption: What Drove Wordnik Non-Relational?DATAVERSITY
 
What Drove Wordnik Non-Relational?
What Drove Wordnik Non-Relational?What Drove Wordnik Non-Relational?
What Drove Wordnik Non-Relational?DATAVERSITY
 
Scaling on AWS for the First 10 Million Users
Scaling on AWS for the First 10 Million UsersScaling on AWS for the First 10 Million Users
Scaling on AWS for the First 10 Million UsersAmazon Web Services
 
AWS Summit London 2014 | Scaling on AWS for the First 10 Million Users (200)
AWS Summit London 2014 | Scaling on AWS for the First 10 Million Users (200)AWS Summit London 2014 | Scaling on AWS for the First 10 Million Users (200)
AWS Summit London 2014 | Scaling on AWS for the First 10 Million Users (200)Amazon Web Services
 
Kuby, ActiveDeployment for Rails Apps
Kuby, ActiveDeployment for Rails AppsKuby, ActiveDeployment for Rails Apps
Kuby, ActiveDeployment for Rails AppsCameron Dutro
 
The challenges of live events scalability
The challenges of live events scalabilityThe challenges of live events scalability
The challenges of live events scalabilityGuy Tomer
 
To Cloud or Not To Cloud?
To Cloud or Not To Cloud?To Cloud or Not To Cloud?
To Cloud or Not To Cloud?Greg Lindahl
 
Ohio Devfest - Visual Analysis with GCP
Ohio Devfest - Visual Analysis with GCPOhio Devfest - Visual Analysis with GCP
Ohio Devfest - Visual Analysis with GCPWesley Workman
 
Scaling on AWS for the First 10 Million Users
Scaling on AWS for the First 10 Million UsersScaling on AWS for the First 10 Million Users
Scaling on AWS for the First 10 Million UsersAmazon Web Services
 
PlayStation and Lucene - Indexing 1M documents per second: Presented by Alexa...
PlayStation and Lucene - Indexing 1M documents per second: Presented by Alexa...PlayStation and Lucene - Indexing 1M documents per second: Presented by Alexa...
PlayStation and Lucene - Indexing 1M documents per second: Presented by Alexa...Lucidworks
 
Five Years of EC2 Distilled
Five Years of EC2 DistilledFive Years of EC2 Distilled
Five Years of EC2 DistilledGrig Gheorghiu
 
T1 – Architecting highly available applications on aws
T1 – Architecting highly available applications on awsT1 – Architecting highly available applications on aws
T1 – Architecting highly available applications on awsAmazon Web Services
 

Semelhante a STP102 Ahead in the Clouds - AWS re: Invent 2012 (20)

Running MongoDB in the Cloud
Running MongoDB in the CloudRunning MongoDB in the Cloud
Running MongoDB in the Cloud
 
Inside Wordnik's Architecture
Inside Wordnik's ArchitectureInside Wordnik's Architecture
Inside Wordnik's Architecture
 
[AWSKRUG&JAWS-UG Meetup #1] 70% Cost Reduction with On-demand resizing
[AWSKRUG&JAWS-UG Meetup #1] 70% Cost Reduction with On-demand resizing[AWSKRUG&JAWS-UG Meetup #1] 70% Cost Reduction with On-demand resizing
[AWSKRUG&JAWS-UG Meetup #1] 70% Cost Reduction with On-demand resizing
 
Coates bosc2010 clouds-fluff-and-no-substance
Coates bosc2010 clouds-fluff-and-no-substanceCoates bosc2010 clouds-fluff-and-no-substance
Coates bosc2010 clouds-fluff-and-no-substance
 
A Case Study of NoSQL Adoption: What Drove Wordnik Non-Relational?
A Case Study of NoSQL Adoption: What Drove Wordnik Non-Relational?A Case Study of NoSQL Adoption: What Drove Wordnik Non-Relational?
A Case Study of NoSQL Adoption: What Drove Wordnik Non-Relational?
 
What Drove Wordnik Non-Relational?
What Drove Wordnik Non-Relational?What Drove Wordnik Non-Relational?
What Drove Wordnik Non-Relational?
 
Scaling on AWS for the First 10 Million Users
Scaling on AWS for the First 10 Million UsersScaling on AWS for the First 10 Million Users
Scaling on AWS for the First 10 Million Users
 
Dibi Conference 2012
Dibi Conference 2012Dibi Conference 2012
Dibi Conference 2012
 
Azure Introduction
Azure IntroductionAzure Introduction
Azure Introduction
 
Demandware krueger
Demandware kruegerDemandware krueger
Demandware krueger
 
AWS Summit London 2014 | Scaling on AWS for the First 10 Million Users (200)
AWS Summit London 2014 | Scaling on AWS for the First 10 Million Users (200)AWS Summit London 2014 | Scaling on AWS for the First 10 Million Users (200)
AWS Summit London 2014 | Scaling on AWS for the First 10 Million Users (200)
 
Kuby, ActiveDeployment for Rails Apps
Kuby, ActiveDeployment for Rails AppsKuby, ActiveDeployment for Rails Apps
Kuby, ActiveDeployment for Rails Apps
 
The challenges of live events scalability
The challenges of live events scalabilityThe challenges of live events scalability
The challenges of live events scalability
 
To Cloud or Not To Cloud?
To Cloud or Not To Cloud?To Cloud or Not To Cloud?
To Cloud or Not To Cloud?
 
Wongnai Engineering Story
Wongnai Engineering StoryWongnai Engineering Story
Wongnai Engineering Story
 
Ohio Devfest - Visual Analysis with GCP
Ohio Devfest - Visual Analysis with GCPOhio Devfest - Visual Analysis with GCP
Ohio Devfest - Visual Analysis with GCP
 
Scaling on AWS for the First 10 Million Users
Scaling on AWS for the First 10 Million UsersScaling on AWS for the First 10 Million Users
Scaling on AWS for the First 10 Million Users
 
PlayStation and Lucene - Indexing 1M documents per second: Presented by Alexa...
PlayStation and Lucene - Indexing 1M documents per second: Presented by Alexa...PlayStation and Lucene - Indexing 1M documents per second: Presented by Alexa...
PlayStation and Lucene - Indexing 1M documents per second: Presented by Alexa...
 
Five Years of EC2 Distilled
Five Years of EC2 DistilledFive Years of EC2 Distilled
Five Years of EC2 Distilled
 
T1 – Architecting highly available applications on aws
T1 – Architecting highly available applications on awsT1 – Architecting highly available applications on aws
T1 – Architecting highly available applications on aws
 

Mais de Amazon Web Services

Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...Amazon Web Services
 
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...Amazon Web Services
 
Esegui pod serverless con Amazon EKS e AWS Fargate
Esegui pod serverless con Amazon EKS e AWS FargateEsegui pod serverless con Amazon EKS e AWS Fargate
Esegui pod serverless con Amazon EKS e AWS FargateAmazon Web Services
 
Costruire Applicazioni Moderne con AWS
Costruire Applicazioni Moderne con AWSCostruire Applicazioni Moderne con AWS
Costruire Applicazioni Moderne con AWSAmazon Web Services
 
Come spendere fino al 90% in meno con i container e le istanze spot
Come spendere fino al 90% in meno con i container e le istanze spot Come spendere fino al 90% in meno con i container e le istanze spot
Come spendere fino al 90% in meno con i container e le istanze spot Amazon Web Services
 
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...Amazon Web Services
 
OpsWorks Configuration Management: automatizza la gestione e i deployment del...
OpsWorks Configuration Management: automatizza la gestione e i deployment del...OpsWorks Configuration Management: automatizza la gestione e i deployment del...
OpsWorks Configuration Management: automatizza la gestione e i deployment del...Amazon Web Services
 
Microsoft Active Directory su AWS per supportare i tuoi Windows Workloads
Microsoft Active Directory su AWS per supportare i tuoi Windows WorkloadsMicrosoft Active Directory su AWS per supportare i tuoi Windows Workloads
Microsoft Active Directory su AWS per supportare i tuoi Windows WorkloadsAmazon Web Services
 
Database Oracle e VMware Cloud on AWS i miti da sfatare
Database Oracle e VMware Cloud on AWS i miti da sfatareDatabase Oracle e VMware Cloud on AWS i miti da sfatare
Database Oracle e VMware Cloud on AWS i miti da sfatareAmazon Web Services
 
Crea la tua prima serverless ledger-based app con QLDB e NodeJS
Crea la tua prima serverless ledger-based app con QLDB e NodeJSCrea la tua prima serverless ledger-based app con QLDB e NodeJS
Crea la tua prima serverless ledger-based app con QLDB e NodeJSAmazon Web Services
 
API moderne real-time per applicazioni mobili e web
API moderne real-time per applicazioni mobili e webAPI moderne real-time per applicazioni mobili e web
API moderne real-time per applicazioni mobili e webAmazon Web Services
 
Database Oracle e VMware Cloud™ on AWS: i miti da sfatare
Database Oracle e VMware Cloud™ on AWS: i miti da sfatareDatabase Oracle e VMware Cloud™ on AWS: i miti da sfatare
Database Oracle e VMware Cloud™ on AWS: i miti da sfatareAmazon Web Services
 
Tools for building your MVP on AWS
Tools for building your MVP on AWSTools for building your MVP on AWS
Tools for building your MVP on AWSAmazon Web Services
 
How to Build a Winning Pitch Deck
How to Build a Winning Pitch DeckHow to Build a Winning Pitch Deck
How to Build a Winning Pitch DeckAmazon Web Services
 
Building a web application without servers
Building a web application without serversBuilding a web application without servers
Building a web application without serversAmazon Web Services
 
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...Amazon Web Services
 
Introduzione a Amazon Elastic Container Service
Introduzione a Amazon Elastic Container ServiceIntroduzione a Amazon Elastic Container Service
Introduzione a Amazon Elastic Container ServiceAmazon Web Services
 

Mais de Amazon Web Services (20)

Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
 
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
 
Esegui pod serverless con Amazon EKS e AWS Fargate
Esegui pod serverless con Amazon EKS e AWS FargateEsegui pod serverless con Amazon EKS e AWS Fargate
Esegui pod serverless con Amazon EKS e AWS Fargate
 
Costruire Applicazioni Moderne con AWS
Costruire Applicazioni Moderne con AWSCostruire Applicazioni Moderne con AWS
Costruire Applicazioni Moderne con AWS
 
Come spendere fino al 90% in meno con i container e le istanze spot
Come spendere fino al 90% in meno con i container e le istanze spot Come spendere fino al 90% in meno con i container e le istanze spot
Come spendere fino al 90% in meno con i container e le istanze spot
 
Open banking as a service
Open banking as a serviceOpen banking as a service
Open banking as a service
 
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
 
OpsWorks Configuration Management: automatizza la gestione e i deployment del...
OpsWorks Configuration Management: automatizza la gestione e i deployment del...OpsWorks Configuration Management: automatizza la gestione e i deployment del...
OpsWorks Configuration Management: automatizza la gestione e i deployment del...
 
Microsoft Active Directory su AWS per supportare i tuoi Windows Workloads
Microsoft Active Directory su AWS per supportare i tuoi Windows WorkloadsMicrosoft Active Directory su AWS per supportare i tuoi Windows Workloads
Microsoft Active Directory su AWS per supportare i tuoi Windows Workloads
 
Computer Vision con AWS
Computer Vision con AWSComputer Vision con AWS
Computer Vision con AWS
 
Database Oracle e VMware Cloud on AWS i miti da sfatare
Database Oracle e VMware Cloud on AWS i miti da sfatareDatabase Oracle e VMware Cloud on AWS i miti da sfatare
Database Oracle e VMware Cloud on AWS i miti da sfatare
 
Crea la tua prima serverless ledger-based app con QLDB e NodeJS
Crea la tua prima serverless ledger-based app con QLDB e NodeJSCrea la tua prima serverless ledger-based app con QLDB e NodeJS
Crea la tua prima serverless ledger-based app con QLDB e NodeJS
 
API moderne real-time per applicazioni mobili e web
API moderne real-time per applicazioni mobili e webAPI moderne real-time per applicazioni mobili e web
API moderne real-time per applicazioni mobili e web
 
Database Oracle e VMware Cloud™ on AWS: i miti da sfatare
Database Oracle e VMware Cloud™ on AWS: i miti da sfatareDatabase Oracle e VMware Cloud™ on AWS: i miti da sfatare
Database Oracle e VMware Cloud™ on AWS: i miti da sfatare
 
Tools for building your MVP on AWS
Tools for building your MVP on AWSTools for building your MVP on AWS
Tools for building your MVP on AWS
 
How to Build a Winning Pitch Deck
How to Build a Winning Pitch DeckHow to Build a Winning Pitch Deck
How to Build a Winning Pitch Deck
 
Building a web application without servers
Building a web application without serversBuilding a web application without servers
Building a web application without servers
 
Fundraising Essentials
Fundraising EssentialsFundraising Essentials
Fundraising Essentials
 
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
 
Introduzione a Amazon Elastic Container Service
Introduzione a Amazon Elastic Container ServiceIntroduzione a Amazon Elastic Container Service
Introduzione a Amazon Elastic Container Service
 

STP102 Ahead in the Clouds - AWS re: Invent 2012

  • 1. Ahead in the Clouds aka Growing up with AWS
  • 3. Who are we? • Premium photo & video sharing. • Everyone pays! • Bootstrapped in ’02. • $10M+ as of ’07. • Profitable. • Top 250 website. • 35M+ people / month
  • 4. The challenge • Premium! aka “more” + “better” + “faster”. • Unlimited storage. • Unlimited bandwidth. • Huge photos (100Mpix!). Billions of them. • Huge videos (1080p, high bitrates) • Lots of photos per page. • Super fast.
  • 5. Architecture early 2006 • Multiple datacenters • Self-managed • Self-installed hardware • Tons of spinning disks • Tons of custom servers • Tons of distracting work • We’re not a datacenter company
  • 6. The phone call early 2006 • *ring* “Hi, this is Amazon, we’d like to sell you storage.” • “Say what? Amazon? Storage?” • “Yeah, how does $0.50/GB/mo sound?” • ... quick napkin math ... “Sorry, we do $0.20/GB today” • “Oh, really? Thanks for the feedback.” *click* • ... days pass ... • *ring* “Hi, Amazon again. How about $0.15/GB/mo?” • Sold.
  • 7. It begins April 2006 • Started simple. Storage - and lots of it. • Slow at first. “Isn’t Amazon a bookseller?” • First bill a huge $1147.41 in April. ;) • Redundant backup to begin with. • Soon, primary with on-site as backup. • Finally, 100% photos & videos in S3. • “Wow, this thing is for real!”
  • 8. Show me the money early 2007 • Guesstimate: ~$500K saved first year • Actual: • Growth: 64M photos -> 140M photos • Stored 200TB at S3 • Disks would have cost: $40K/mo -> $100K/mo • $922K projected spend, $230K actual • $692K in cold hard savings • Taxes! $295K ‘saved’ in cash flow. • Reselling disks - recouping sunk costs.
  • 9. The revelation early 2007 • Yes, S3 is cheap. • Yes, it’s durable and available. • Yes, it’s fast. • But most important: Weight off our shoulders! • No more hard disk replacements! • No more midnight datacenter fiascos! • We can focus on photo sharing!
  • 10. But wait, there’s more... 2007 • Amazon does books ... storage... and compute?! • Hey, we have lots of compute! • Web servers, background proc, rendering, etc • Buying, installing, maintaining servers • Often idle. • Let’s try rendering first.
  • 12. SkyNet Lives! 2007 • First EC2 service: ‘RubberBand’ • Handles all background photo processing • Automated, near zero human interaction • Tried to take over the world • Launched ~1920 cores in a single API call • Amazon spun them up as requested • Renamed to ‘SkyNet’ :)
  • 13. SkyNet success 2007-2012+ • Rendering load peaky • User-driven based on # of photos shot recently • Only roughly predictable • Sundays heavy - but how heavy? • Big spike - but will it last? • Elastic scaling maximizes throughput, minimizes cost • Instrument and automate • No humans!
  • 14. Leverage for... new products? late 2007 • Customers begging us for video • Not just any video: Hi-Def & high bitrate • Potentially huge $$ capital expense (lots of servers) • Totally unknown customer adoption • Upside? Who knows?!
  • 15. Leverage for new products! late 2007 • Use EC2! No capital expense! • If usage takes off, just scale it up! • If usage falls off a cliff, just turn it off! • Worked like a charm • Minimal investment to get it into customers’ hands • Took off (whew!)
  • 16. New products part two, electric boogaloo mid 2008 • Customers begging for archival storage • RAW photos, original video footage, etc • Breaks our business model • Potentially costly to implement • Again, unknown customer adoption
  • 17. New products part two, electric boogaloo mid 2008 • DevPay to the rescue! • S3 + Amazon Payments mashup • We called it ‘SmugVault’ • Store anything you like, pay as you go • Amazon bills customer directly • Terabytes of backup storage • Happy customers
  • 18. Mo money 2009 • Amazon does payments, too? • Sure, why not. We’ll try it. • SmugMug subscriptions via Amazon Payments • Immediate 7% increase in total signups
  • 19. EC2 steamroller begins 2009 • Important new EC2-related services arrive • Auto-Scaling • Elastic Load Balancing • Monitoring • Able to migrate lots more services to AWS
  • 20. EC2 steamroller: Photos & Videos 2009 • SmugMug’s security & privacy layer complex • Doesn’t map to S3’s • Needs a proxy layer to intercept & validate requests • From client straight to AWS • Bypasses our datacenters • Auto-Scaling + ELB + EC2 + S3 = Win
  • 21. EC2 steamroller: Realtime rendering 2010 • Lots of different devices & screens out there • SmugMug’s pre-rendered sizes don’t always fit • Allow realtime dynamic photo resizing server-side • Any resolution they wish • Must be lightning fast • Unpredictable load • More ELB + Auto-Scaling + EC2 + S3
  • 22. EC2 steamroller: Uploads 2011 • No more proxy uploads to our servers • Uploads go straight to ELB->EC2->S3 • Can’t use Auto-Scaling, terminates too fast • User-generated, unpredictable load • ELB + EC2 + S3
  • 23. EC2 steamroller today • Vast majority of CPU usage in EC2 • 100% photo & video requests served from AWS • 4 out of 5 customer facing web clusters 100% in AWS • 5th one “any day now” - full testing currently underway • Final stage required advanced AWS functionality • DynamoDB • EC2 instances w/SSD (hi.4xlarge) • 100% AWS within reach
  • 24. EC2 evolution: hi.4xlarge 2012 • Finally. • Extremely high-scale I/O DB-class systems. • Final missing-link to let us migrate 100% to AWS. • (We’re already 100% SSD in our datacenters) • 2TB of SSD storage • 120,000 random read IOPS • 10,000 - 85,000 random write IOPS • omg.
  • 25. Alien technology: DynamoDB 2012 • Finally. • “S3 for databases” • Bottomless low-latency datastore. • Key-value. (aka NoSQL) • Bulk of our data headed to DynamoDB • omg.
  • 27. Alien technology: CloudSearch 2012 • Billions of documents to search • Millions of new & changed docs per day • Many dozens of different facets • Old system basically duct tape + SSDs • CloudSearch blazingly fast even with crazy queries. • omg.
  • 28. Handling Failure always & forever • Everything breaks. Even in your own datacenters. • Especially in your own datacenters. • Plan for it. • With AWS, ‘breaking’ is clearly defined • Regions, Zones, Services, Instances, etc. • Mix & match for your needs • Multi-AZ is currently our sweet spot. • Minimal impact during various ‘Amazonpocalypse’ events
  • 29. Thanks! questions? • Twitter: DonMacAskill • Blog: http://don.blogs.smugmug.com/ • Email: don@smugmug.com
  • 30. We are sincerely eager to hear your feedback on this presentation and on re:Invent. Please fill out an evaluation form when you have a chance.