Running Your Database in the Cloud

34
Running Your Database in the Cloud Eran Levin VP R&D - Xeround

description

Running Your Database in the Cloud. Eran Levin VP R&D - Xeround. 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. To Shared resources - PowerPoint PPT Presentation

Transcript of Running Your Database in the Cloud

Page 1: Running Your Database in the Cloud

Running Your Database in the Cloud

Eran Levin

VP R&D - Xeround

Page 2: Running Your Database in the Cloud

Agenda

• The paradigm shift

• Real life use case

• Challenges running a database in the cloud

• Available solutions

• Q&A

Page 3: Running Your Database in the Cloud

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

Page 4: Running Your Database in the Cloud

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)

Page 5: Running Your Database in the Cloud

Use Case

eCommerce Application

Page 6: Running Your Database in the Cloud

Architectural Evolution - Rollout

• You are ready to roll your new eCommerce app

• Will deploy in the cloud (price, time to market, flexibility, “cool”)

Page 7: Running Your Database in the Cloud

Arch. Evolution - Failover

ActivePassive

Page 8: Running Your Database in the Cloud

Arch. Evolution – Traffic Increase

Load Balancer

Page 9: Running Your Database in the Cloud

Arch. Evolution – Application Scaling

Load Balancer

Page 10: Running Your Database in the Cloud

Arch. Evolution – Database Failover

ActivePassive

Load Balancer

Page 11: Running Your Database in the Cloud

Arch. Evolution – DB Read Scaling

Master

R

RR

Load Balancer

Page 12: Running Your Database in the Cloud

Architectural Evolution – DB Write Scaling

Master

R

RR

Load Balancer

Page 13: Running Your Database in the Cloud

Arch. Evolution – Anticipating the Peak

Master

R

RR

Load Balancer

RR

Page 14: Running Your Database in the Cloud

Arch. Evolution – Scaling Down

Master

R

RR

Load Balancer

Page 15: Running Your Database in the Cloud

Arch. Evolution – Version Upgrade

Master

R

RR

Load Balancer

Master

R

RR

Load Balancer

Page 16: Running Your Database in the Cloud

Running Your Database in the Cloud

The Challenges

Page 17: Running Your Database in the Cloud

The Challenges

• Availability

• Elasticity

• Manageability

• Cost

Solved for the Web and application levels

Imagine an equivalent solution for your database…

Page 18: Running Your Database in the Cloud

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, …

Page 19: Running Your Database in the Cloud

The Challenges

Availability

Page 20: Running Your Database in the Cloud

Availability

• Standby machine

• Replication

• Failover mechanism

Source:

Page 21: Running Your Database in the Cloud

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

Page 22: Running Your Database in the Cloud

The Challenges

Scalability

Page 23: Running Your Database in the Cloud

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:

Page 24: Running Your Database in the Cloud

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

Page 25: Running Your Database in the Cloud

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

Page 26: Running Your Database in the Cloud

Elasticity

• Scaling out/up AND in/down

• One of the Cloud justifications (but what about databases)

Page 27: Running Your Database in the Cloud

The Challenges

Manageability

Page 28: Running Your Database in the Cloud

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

Page 29: Running Your Database in the Cloud

Build Your Own

Source:

Page 30: Running Your Database in the Cloud

Database as a Service

Page 31: Running Your Database in the Cloud

The Challenges

Cost

Page 32: Running Your Database in the Cloud

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

Page 33: Running Your Database in the Cloud

Q & A

Page 34: Running Your Database in the Cloud

Running Your Database in the Cloud

Thank You

[email protected]

www.xeround.com

Visit us in Booth 407