0
AWS Database Options and Decision FactorsBest Practice Tips and Techniques   • Optimizing for Manageability and Scale  Ed...
Easily and rapidly analyzepetabytes of data1/10 the cost of traditionaldata warehousesAutomated deployment &administration...
1. Zero to App in ____ Minutes2. Zero to Millions of users in ____ Days3. Zero to “Hero” in ____ Months
Focus on your App
Load balancerApplication tierDatabase tier
Load balancer                                           Security, Scale, Availability…                                    ...
SQL              NoSQLDo-it Yourself   Fully                 Managed                             Not available           ...
SQL              NoSQLDo-it Yourself   Fully                 Managed
SQL               NoSQLDo-it Yourself    Fully                  ManagedMySQL            MySQLOracle           OracleSQL Se...
SQL               NoSQL  Do-it Yourself    Fully                    ManagedMongoDB            DynamoDBCassandra          E...
Should I useShould I use SQL         MySQL on EC2 or  or NoSQL?                  RDS? Should I use  MongoDB,              ...
What are myWhat are my scale           transactional andand latency needs?         consistency needs?   What are my       ...
Factors                SQL                                  NoSQLApplication            • App with complex business logic?...
Amazon RDS is a fully managed SQL database service.    Choice of Database engines    Simple to deploy and scale    Reliabl...
Migration                                           Backup and recoverySchema design                              Patching...
MySQL Manual for Read Replica Multiple databases per instance Use MySQL tools & drivers Quickly set up Read Replicas H...
 AZ location for both Primary and Stand-by are now visible You can place 3rd replica in an AZ different from Primary and...
ElastiCache is a fully managed Memcachedcaching service.Easy to set up and operateScale cache clusters with push button ea...
Amazon DynamoDB is a fully managed NoSQLdatabase service.Store and retrieve any amount of dataScale throughput to millions...
CreateTable    PutItem                           UpdateTable                                              GetItem         ...
So, what are the tips and techniques forsuccessful deployments?
KimoEducates millions of students                                RosenbaumReaches millions of citizensAnalyzes billions of...
Where learning happens.                            Kimo Rosenbaum                          kimo@edmodo.com                ...
Learning 101•   Largest, fastest growing social platform for education•   Secure learning network for teachers and student...
Stats 101•   100,000 schools•   14 million users•   7 million new users in the last year•   1 million visits daily
Web                                                                      Instance                                         ...
DBA 101•   Restore from snapshot•   Replica creation•   Parameter tuning•   Metrics collection•   Know your app/data
Educates millions of students                                  JayReaches millions of citizens                            ...
Me.• Twitter: First dedicated DBA• OFA: Lead Database Engineer• PalominoDB: CTO & VP/Operations
Obama for America.• Technically sophisticated for a campaign      • Not “web-scale”• Hockey-stick++ growth• Downtime hurts...
Hockey-stick++
OFA Architecture    RDS Read Replica      ElastiCache                              RDS with  DynamoDB                    M...
Problems!• You always need more databases     • OFA had 24+ schemas & 100+ RDS instances• You never have enough DBAs     •...
Why RDS?• Makes operational issues very easy     • Need more replicas? BAM!     • Upsize hardware? KAPOW!     • Point in t...
Why not RDS?• Hardware cap (vertical v. horizontal)• Sophisticated use-cases     • Frequent topology changes     • Multi-r...
Educates millions of studentsReaches millions of citizens                                AndyAnalyzes billions of Ads     ...
Managed Services Bias
New Products/Markets – YesSQL!
Big Data? Cast your problem
AWS Options
Case Study: Crawl history
andy@brandverity.com
• Managed services let you focus on creating value• Amazon S3 - Very robust, handles large items, but you filter• Amazon D...
Thank youFree   aws.amazon.com/dynamodbTier       aws.amazon.com/rds       aws.amazon.com/elasticache
Scalable Database Options on AWS
Scalable Database Options on AWS
Upcoming SlideShare
Loading in...5
×

Scalable Database Options on AWS

1,829

Published on

Learn more about the scalable database options available on Amazon Web Services, including Amazon DynamoDB, RDS and the new Redshift datawarehouse.

Published in: Technology

Transcript of "Scalable Database Options on AWS"

  1. 1. AWS Database Options and Decision FactorsBest Practice Tips and Techniques • Optimizing for Manageability and Scale  Edmodo • Optimizing for App Velocity and Scale  Obama for America • Leveraging YesSQL and NoSQL  BrandVerityQ&A
  2. 2. Easily and rapidly analyzepetabytes of data1/10 the cost of traditionaldata warehousesAutomated deployment &administrationCompatible with popularBI tools – MicroStrategy,Jaspersoft
  3. 3. 1. Zero to App in ____ Minutes2. Zero to Millions of users in ____ Days3. Zero to “Hero” in ____ Months
  4. 4. Focus on your App
  5. 5. Load balancerApplication tierDatabase tier
  6. 6. Load balancer Security, Scale, Availability… Application tier Security, Innovation, Scale, Performance, Availability… Database tierSecurity, Innovation, Scale, Transactions, Performance, Durability, Availability, Skills..
  7. 7. SQL NoSQLDo-it Yourself Fully Managed Not available on AWSLow Cost High Cost
  8. 8. SQL NoSQLDo-it Yourself Fully Managed
  9. 9. SQL NoSQLDo-it Yourself Fully ManagedMySQL MySQLOracle OracleSQL Server SQL ServerMariaDBPostgres…
  10. 10. SQL NoSQL Do-it Yourself Fully ManagedMongoDB DynamoDBCassandra ElastiCacheRedis SimpleDBMemcache
  11. 11. Should I useShould I use SQL MySQL on EC2 or or NoSQL? RDS? Should I use MongoDB, ? Should I use Redis, Cassandra, or Memcache, or DynamoDB? ElastiCache?
  12. 12. What are myWhat are my scale transactional andand latency needs? consistency needs? What are my ? What are my time toread/write, storage market and server and IOPS needs? control needs?
  13. 13. Factors SQL NoSQLApplication • App with complex business logic? • Web app with lots of users?Transactions • Complex txns, joins, updates? • Simple data model, updates, queries?Scale • Developer managed • Automatic, on-demand scalingPerformance • Developer architected • Consistent, high performance at scaleAvailability • Architected for fail-over • Seamless and transparentCore Skills • SQL + Java/Ruby/Python/PhP • NoSQL + Java/Ruby/Python/PhP Best of both worlds: Possible to Use SQL and NoSQL models in one App
  14. 14. Amazon RDS is a fully managed SQL database service. Choice of Database engines Simple to deploy and scale Reliable and cost effective Without any operational burden.
  15. 15. Migration Backup and recoverySchema design PatchingQuery construction ConfigurationQuery optimization Software upgrades Storage upgrades Frequent server upgrades Focus on the “innovation” Hardware crash Off load the “administration”
  16. 16. MySQL Manual for Read Replica Multiple databases per instance Use MySQL tools & drivers Quickly set up Read Replicas High availability Multi-AZ option OR Amazon RDS console Ability to promote Read replicas, Rename as Master Diagnostics Native MySQL replication SSL for encryption over the wire Monitor metrics Shell, super user or direct file system access (Think security!)
  17. 17.  AZ location for both Primary and Stand-by are now visible You can place 3rd replica in an AZ different from Primary and Stand-by Ability to promote Read replicas Rename as Master after promotion
  18. 18. ElastiCache is a fully managed Memcachedcaching service.Easy to set up and operateScale cache clusters with push button easeUltra fast response time for read scalingWithout any operational burden.
  19. 19. Amazon DynamoDB is a fully managed NoSQLdatabase service.Store and retrieve any amount of dataScale throughput to millions of IOSingle digit millisecond latenciesWithout any operational burden.
  20. 20. CreateTable PutItem UpdateTable GetItem DeleteTable UpdateItem “Select”, “insert”, “update” DescribeTable itemsManage tables DeleteItem ListTables BatchGetItem Query Bulk select or update Query specific items OR Scan BatchWriteItem (max 1MB) scan the full table
  21. 21. So, what are the tips and techniques forsuccessful deployments?
  22. 22. KimoEducates millions of students RosenbaumReaches millions of citizensAnalyzes billions of Ads
  23. 23. Where learning happens. Kimo Rosenbaum kimo@edmodo.com AWS re: Invent 2012
  24. 24. Learning 101• Largest, fastest growing social platform for education• Secure learning network for teachers and students• Browser, iOS, Android• Free for teachers and students
  25. 25. Stats 101• 100,000 schools• 14 million users• 7 million new users in the last year• 1 million visits daily
  26. 26. Web Instance Auto scaling Group Amazon CloudWatchAmazon Route 53 Elastic Load Balancer Cache Cache Instance InstanceAmazon Cloudfront Instances Amazon S3 RDS DB Instance RDS DB Instance RDS DB Instance Read Replica Read Replica Read Replica Availability Zone RDS DB Instance RDS DB Instance RDS DB Instance Read Replica MySQL DB Instance Read Replica MySQL DB Instance Read Replica MySQL DB Instance
  27. 27. DBA 101• Restore from snapshot• Replica creation• Parameter tuning• Metrics collection• Know your app/data
  28. 28. Educates millions of students JayReaches millions of citizens EdwardsAnalyzes billions of Ads
  29. 29. Me.• Twitter: First dedicated DBA• OFA: Lead Database Engineer• PalominoDB: CTO & VP/Operations
  30. 30. Obama for America.• Technically sophisticated for a campaign • Not “web-scale”• Hockey-stick++ growth• Downtime hurts. A lot…really, really, really a lot.
  31. 31. Hockey-stick++
  32. 32. OFA Architecture RDS Read Replica ElastiCache RDS with DynamoDB Multi-AZ ELB
  33. 33. Problems!• You always need more databases • OFA had 24+ schemas & 100+ RDS instances• You never have enough DBAs • OFA had 1 – 2 x 0.5 fulltime MySQL DBAs
  34. 34. Why RDS?• Makes operational issues very easy • Need more replicas? BAM! • Upsize hardware? KAPOW! • Point in time restore? BIF!
  35. 35. Why not RDS?• Hardware cap (vertical v. horizontal)• Sophisticated use-cases • Frequent topology changes • Multi-region replication (on their roadmap)• DBAs need busy work
  36. 36. Educates millions of studentsReaches millions of citizens AndyAnalyzes billions of Ads Skalet
  37. 37. Managed Services Bias
  38. 38. New Products/Markets – YesSQL!
  39. 39. Big Data? Cast your problem
  40. 40. AWS Options
  41. 41. Case Study: Crawl history
  42. 42. andy@brandverity.com
  43. 43. • Managed services let you focus on creating value• Amazon S3 - Very robust, handles large items, but you filter• Amazon DynamoDB - Extremely fast, scalable, good value • Must cast your problem as kvs or key + range• Amazon RDS - MySQL, without the headaches• Amazon ElastiCache - As memcached, fast kvs for small data• Multi column queries on big data? • Looking forward to the AWS solution
  44. 44. Thank youFree aws.amazon.com/dynamodbTier aws.amazon.com/rds aws.amazon.com/elasticache
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×