Running your database in the cloud presentation
-
Upload
manish-singh -
Category
Software
-
view
34 -
download
1
Transcript of Running your database in the cloud presentation
Agenda
• The paradigm shift
• Real life use case
• Challenges running a database in the cloud
• Available solutions
• Q&A
The Paradigm Shift
From Dedicated On premise Over provisioned Self managed
• Without compromising functionality, performance, availability, …
To Shared resources Cloud hosted Pay-per-use Managed service
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)
Architectural Evolution - Rollout
• You are ready to roll your new eCommerce app
• Will deploy in the cloud (price, time to market, flexibility, “cool”)
The Challenges
• Availability
• Elasticity
• Manageability
• Cost
Solved for the Web and application levels
Imagine an equivalent solution for your database…
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, …
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
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:
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 implementationchallenges
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
Elasticity
• Scaling out/up AND in/down
• One of the Cloud justifications (but what about databases)
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
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
Running Your Database in the Cloud
Thank You
www.xeround.com
Visit us in Booth 407