Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Running your database in the cloud presentation

558 views

Published on

Published in: Technology, Business
  • Be the first to comment

  • Be the first to like this

Running your database in the cloud presentation

  1. 1. Running Your Database in the Cloud Eran Levin VP R&D - Xeround
  2. 2. Agenda • The paradigm shift • Real life use case • Challenges running a database in the cloud • Available solutions • Q&A
  3. 3. The Paradigm Shift From Dedicated  On premise  Over provisioned  Self managed  To Shared resources  Cloud hosted  Pay-per-use  Managed service  • Without compromising functionality, performance, availability, …
  4. 4. The Paradigm Shift • The Cloud  Availability issues  Stateless  Limited control (HW, Virtualization, Networking)  Expectations (reduce capital and operational costs) • Databases  Mission critical, lossless  Statefull  Usage patterns (data and throughput)
  5. 5. Use Case eCommerce Application
  6. 6. Architectural Evolution - Rollout • You are ready to roll your new eCommerce app • Will deploy in the cloud (price, time to market, flexibility, “cool”)
  7. 7. Arch. Evolution - Failover Passive Active
  8. 8. Arch. Evolution – Traffic Increase Load Balancer
  9. 9. Arch. Evolution – Application Scaling Load Balancer
  10. 10. Arch. Evolution – Database Failover Load Balancer Passive Active
  11. 11. Arch. Evolution – DB Read Scaling Load Balancer Master R R R
  12. 12. Architectural Evolution – DB Write Scaling Load Balancer Master R R R
  13. 13. Arch. Evolution – Anticipating the Peak Load Balancer Master R R R R R
  14. 14. Arch. Evolution – Scaling Down Load Balancer Master R R R
  15. 15. Arch. Evolution – Version Upgrade Load Balancer Load Balancer Master Master R R R R R R
  16. 16. Running Your Database in the Cloud The Challenges
  17. 17. The Challenges • Availability • Elasticity • Manageability • Cost Solved for the Web and application levels Imagine an equivalent solution for your database…
  18. 18. Meeting the Challenges • Build your own  For example - MySQL on EC2, Postgres on Rackspace, …  Acquire instances  Install the database according to your architecture  Self manage your database • Database-as-a-Service  For example - Amazon RDS, Xeround, Database.com, …
  19. 19. The Challenges Availability
  20. 20. Availability • Standby machine • Replication • Failover mechanism Source:
  21. 21. Cloud Availability Solutions • Amazon RDS Multi Zone  Master – Slave configuration  Up to 3 minutes recovery  Double the cost  Maintenance window • Xeround  “Master-Master” configuration  Multiple replicas of the data  Always-on
  22. 22. The Challenges Scalability
  23. 23. Scalability – Scale Up vs. Scale Out • Scale Up  Select next available configuration (EC2, RDS)  Relatively simple but limited scalability • Scale Out  Add additional resources  Complicated but high scalability  RDS Read replicas Source:
  24. 24. Shared Everything vs. Shared Nothing • Shared Everything  Scale throughput but limited due to shared resources  Storage and networking limitations in the cloud  ScaleDB • Shared Nothing  Horizontal data partition / sharding  Unlimited scalability  Many design and implementation challenges
  25. 25. Shared Nothing in the Cloud • Xeround  Virtual partitioning – decoupling of data and resources  Linear scalability for both reads and writes  Automatic balancing and repartition following changes in data and / or resources with no downtime • ScaleBase / dbShards  Automatically partition the data and direct queries to right databases  Original databases deployment, management and cost  Partitioning events • MySQL Cluster  NOT supported on virtual environments
  26. 26. Elasticity • Scaling out/up AND in/down • One of the Cloud justifications (but what about databases)
  27. 27. The Challenges Manageability
  28. 28. Manageability • Self-serve is a fundamental characteristic of cloud computing • DBaaS should provide  User management  DB management  Control and Monitoring  Backup and restore  …  API to enable extendibility and interaction with the cloud ecosystem • Solutions: Amazon RDS, Xeround, FathomDB
  29. 29. Build Your Own Source:
  30. 30. Database as a Service
  31. 31. The Challenges Cost
  32. 32. Cost • Pay-per-use is another fundamental characteristic of cloud computing • Achieving this model requires:  Elasticity – scale resources according to actual usage  No over provisioning  No idle standby machines  Sharing resources to share cost  Measuring exact usage
  33. 33. Q&A
  34. 34. Running Your Database in the Cloud Thank You eran.levin@xeround.com www.xeround.com Visit us in Booth 407

×