Se ha denunciado esta presentación.
Utilizamos tu perfil de LinkedIn y tus datos de actividad para personalizar los anuncios y mostrarte publicidad más relevante. Puedes cambiar tus preferencias de publicidad en cualquier momento.

Scalable Database Options on AWS

2.454 visualizaciones

Publicado el

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

Publicado en: Tecnología

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 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.
  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