Running your database in the cloud presentation
Upcoming SlideShare
Loading in...5
×

Like this? Share it with your network

Share
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
    Be the first to like this
No Downloads

Views

Total Views
561
On Slideshare
561
From Embeds
0
Number of Embeds
0

Actions

Shares
Downloads
4
Comments
0
Likes
0

Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide

Transcript

  • 1. Running Your Database in the Cloud Eran Levin VP R&D - Xeround
  • 2. Agenda • The paradigm shift • Real life use case • Challenges running a database in the cloud • Available solutions • Q&A
  • 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. 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. Use Case eCommerce Application
  • 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. Arch. Evolution - Failover Passive Active
  • 8. Arch. Evolution – Traffic Increase Load Balancer
  • 9. Arch. Evolution – Application Scaling Load Balancer
  • 10. Arch. Evolution – Database Failover Load Balancer Passive Active
  • 11. Arch. Evolution – DB Read Scaling Load Balancer Master R R R
  • 12. Architectural Evolution – DB Write Scaling Load Balancer Master R R R
  • 13. Arch. Evolution – Anticipating the Peak Load Balancer Master R R R R R
  • 14. Arch. Evolution – Scaling Down Load Balancer Master R R R
  • 15. Arch. Evolution – Version Upgrade Load Balancer Load Balancer Master Master R R R R R R
  • 16. Running Your Database in the Cloud The Challenges
  • 17. The Challenges • Availability • Elasticity • Manageability • Cost Solved for the Web and application levels Imagine an equivalent solution for your database…
  • 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. The Challenges Availability
  • 20. Availability • Standby machine • Replication • Failover mechanism Source:
  • 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. The Challenges Scalability
  • 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. 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. 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. Elasticity • Scaling out/up AND in/down • One of the Cloud justifications (but what about databases)
  • 27. The Challenges Manageability
  • 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. Build Your Own Source:
  • 30. Database as a Service
  • 31. The Challenges Cost
  • 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. Q&A
  • 34. Running Your Database in the Cloud Thank You eran.levin@xeround.com www.xeround.com Visit us in Booth 407