SlideShare a Scribd company logo
Scaling Your Database
     in the Cloud
 Watch the video of this webinar

           July 21, 2011
2#



 Your Panel Today
Presenting:
• Uri Budnik: Director, ISV Partner Program, RightScale @uribudnik
• Cory Isaacson: CEO & Founder, CodeFutures @dbShards
• David Blinder: CTO, Family Builder

Q&A:
• Jason Altobelli, Inside Sales Representative, RightScale


   Please use the chat box window to ask questions anytime!
        Webinar Recordings: www.rightscale.com/webinars
3#



Agenda

 •   Introduction to RightScale
 •   Introduction to CodeFutures
 •   Live Demo
 •   Live Q&A


 Please use the chat box window to ask questions anytime!
4#



RightScale
Real Customers, Real Deployments, Real Benefits
• Managed Cloud Deployments for 4 Years
• More than 30,000 users; launched over 2.7MM servers
• Behind the largest production deployments on that cloud to
  date
5#


Complete Systems Management
6#



RightScale: Core Focus
 Improved Agility
    Reduce complexity with ServerTemplates™
    Manage Systems, not Servers
    Orchestrate and Automate
 Maintain Choice
    Multi-cloud
    Configuration Asset Marketplace
    ISV Partner Solutions
 Control & Security
    User Access and Roles
    Cost Control and Allocation
    Complete Transparency
7#



ServerTemplates: Built-to-Order Servers



                              VS.




             Image bundling and
                maintenance
8#



RightScripts in Multi-Cloud Marketplace
 • Two RightScripts you can use to analyze you application to
   determine if its “shard-safe”
     1. Logging Driver for Native MySQL®
     2. dbShards/Analyze Driver for JDBC
 • Installed in your app server to gather SQL statistics.
 • Its an in-depth analysis of what is
   needed to shard you database
 • Report lists each unique SQL statement
   and how it will function once sharded
 • Run once and generate a report that
   CodeFutures will review with you at
   no charge
9#



Introduction
• Who I am
   • Cory Isaacson, CEO of CodeFutures
   • Providers of dbShards
   • Author of Software Pipelines
• Partnerships:
   • Rightscale
       •   The leading Cloud Management Platform

• Leaders in database scalability, performance, and high-availability for
  the cloud
   • based on real-world experience with dozens of cloud-based applications
   • social networking, gaming, data collection, mobile, analytics
• Objective is to provide useful experience you can apply to scaling (and
  managing) your database tier…
   • especially for high volume applications
   • and an overview of dbShards technology
10#



Challenges of cloud computing
• Cloud provides highly attractive service environment
   • Flexible, scales with need (up or down)
   • No need for dedicated IT staff, fixed facility costs
   • Pay-as-you-go model
• Cloud services occasionally fail
   • Partial network outages
   • Server failures
       • by their nature cloud servers are “transient”
   • Disk volume issues
• Cloud-based resources are constrained
   • CPU
   • I/O Rates
       • the “Cloud I/O Barrier”
11#



Typical Application Architecture
12#



Scaling in the Cloud
• Scaling Load Balancers is easy
   • Stateless routing to app server
   • Can add redundant Load Balancers if needed
   • If one goes down
        • failover to another

• Scaling Application Servers is easy
   •   Stateless
   •   Sessions can easily transition to another server
   •   Add or remove servers as need dictates
   •   If one goes down
        • failover to another
13#



Scaling in the Cloud
• Scaling the Database tier is hard
   • “Statefull” by definition (and necessity)
   • Large, integrated data sets
       • 10s of GBs to TBs (or more)
       • Difficult to move, reload
   • I/O dependent
       • adversely affected by cloud service failures
       • and slow cloud I/O
   • If one goes down
       • ouch!
14#



Scaling in the Cloud
• Databases form the “last mile” of true application scalability
   • Start with simple optimizations
       • implement a follow-on scalability strategy for long-term performance goals
       • and a high-availability strategy is a must
   • Ensure your databases can failover
       • unplanned outages
       • and planned maintenance

• The best time to plan your database scalability strategy is now
   • don‟t wait until it‟s a “3-alarm fire”
15#



Familybuilder




    Innovator in Facebook applications
    Among first 500 apps worldwide
    David Blinder, CTO
16#



All CPUs wait at the same speed…




 The Cloud I/O Barrier
17#



Database slowdown is not linear…

                                  Database Load Curve
                      10000
                       9000
                       8000
                       7000
          Load Time




                       6000
                       5000
                       4000                                            Time
                       3000                                            Expon. (Time)
                       2000
                       1000
                          0
                              0    10        20          30   40
                                        Data File (GB)



         GB                                          Load Time (Min)
         .9                                          1
         1.3                                         2.5
         3.5                                         11.7
         39.0                                        10 days…
18#



Challenges apply to all types of databases
• Traditional RDBMS (MySQL, PostgreSQL, Oracle…)
   •   I/O bound
   •   Multi-user, lock contention
   •   High-availability
   •   Lifecycle management…
        • backup/restore
        • schema changes
        • index maintenance

• NoSQL Databases (In-memory, Caching, Document)
   • Reliability, High-availability
   • Limits of a single server
        • and a single thread
   • Data dumps to disk
   • Replication
   • Lifecycle Management
19#



Challenges apply to all types of databases
• No matter what the technology, big databases are hard to
  manage
   • elastic scaling is a real challenge
   • degradation from growth in size and volume is a certainty
   • application-specific database requirements add to the challenge
• Sound database design is key…
   • balance performance vs. convenience vs. data size
20#



The Laws of Databases
• Law #1: Small Databases are fast
• Law #2: Big Databases are slow
• Law #3: Keep databases small
21#



What is the answer?

  • Database sharding is the only effective method for
    achieving scale, elasticity, reliability and easy management
     • regardless of your database technology
22#



What is Database Sharding?
  • “Horizontal partitioning is a database design principle
    whereby rows of a database table are held separately...
    Each partition forms part of a shard, which may in turn be
    located on a separate database server or physical
    location.” Wikipedia
23#



What is Database Sharding?
  • Start with a big monolithic database
     • break it into smaller databases
     • across many servers
     • using a key value
24#



The key to Database Sharding…
25#



dbShards Architecture
26#



Database Sharding… the results
27#



Why does Database Sharding work?
• Maximize CPU/Memory per database instance
   • as compared to database size
• Reduce the size of index trees
   • speeds writes dramatically
   • reads are faster too
   • aggregate, list queries are generally much faster
• No contention between servers
   • locking, disk, memory, CPU
• Allows for intelligent parallel processing
   • Go Fish queries across shards
• Keep CPUs busy and productive
28#



Breaking the Cloud I/O Barrier
29#



Familybuilder




    Top 50 Facebook Application
    100,000 New Users Daily
    Doubled Users in 12 months to over 40MM
    David Blinder, CTO
30#



Relational Sharding




        Shard-Tree Root Table


        Shard-Tree Child Tables


        Global Tables
31#



How Relational Sharding works
32#



How Relational Sharding works
• Shard key recognition in SQL
   • SELECT * FROM customer
     WHERE customer_id = 1234
   • INSERT INTO customer
     (customer_id, first_name, last_name, addr_line1,…)
     VALUES
     (2345, „John‟, „Jones‟, „123 B Street‟,…)
   • UPDATE customer
     SET addr_line1 = „456 C Avenue‟
     WHERE customer_id = 4567
33#



What about Cross-Shard result sets?
34#



Cross-shard result set example
• Go Fish (no shard key)
   • SELECT country_id, count(*) FROM customer
     GROUP BY country_id
35#

Moving to Database Sharding with
dbShards
36#



dbShards/Analyze
• Review Database Schema
• Define your initial shard strategy
• Run dbShards/Analyze Driver
   • on your app in a test environment
   • generate logs of all application SQL
• Generate dbShards/Analyze reports
   • with your data model
   • your shard strategy
   • your SQL logs as input
• Ensure your application is shard-safe
   • before you shard your database
   • and identify optimization opportunities
Demo
38#



No-charge Shard Analysis
• Drop-in dbShards/Analyze Drivers
   • Native MySQL
   • JDBC
   • ODBC
• Available as Rightscale templates
   • search Multi-Cloud Marketplace for CodeFutures
       • Logging Driver for Native MySQL®
       • dbShards/Analyze Driver for JDBC

• Run driver in your environment, with your app
   • ship us the logs, schema
   • a dbShards consultant take you through the analysis
• Find out exactly what it takes to shard your database
   • regardless of the technology you select
39#



 Wrap-up
• Database Sharding is the tool for scaling
  your database
• dbShards is a complete, drop-in sharding
  solution
   • Plug-compatible database drivers
       •   nothing between you and your database
   • Intelligent agents for shard management,
     processing
   • Database agnostic, pick the DBMS you prefer
• Use dbShards for existing applications
   • new ones too
• dbShards supports the entire Database
  Sharding infrastructure
   • Analyze, Shard, Manage
   • 24X7 Monitoring and Support for all customers
40#



Questions/Answers




   Cory Isaacson
   CodeFutures Corporation
   sales@codefutures.com
   http://www.dbshards.com
41#



We Appreciate Your Time
Contacts
Cory Isaacson:                         RIGHTSCALE:
CodeFutures Corporation                (866) 720-0208
sales@codefutures.com                  sales@rightscale.com
http://www.dbshards.com                http://www.rightscale.com



 More Info:
 Webinar archive: RightScale.com/webinars
 Whitepapers: RightScale.com/whitepapers
 Free Edition: RightScale.com/free

More Related Content

PDF
Scalability, Availability & Stability Patterns
Jonas Bonér
 
PPTX
Choosing the right Cloud Database
Janakiram MSV
 
PPTX
Chapter1: NoSQL: It’s about making intelligent choices
Maynooth University
 
PDF
Application Development with Apache Cassandra as a Service
WSO2
 
PPTX
Scalable relational database with SQL Azure
Shy Engelberg
 
PDF
Azure Boot Camp 21.04.2018 SQL Server in Azure Iaas PaaS on-prem Lars Platzdasch
Lars Platzdasch
 
PPT
Cloudant Overview Bluemix Meetup from Lisa Neddam
Romeo Kienzler
 
PPTX
Geek Sync | How to Be the DBA When You Don't Have a DBA - Eric Cobb | IDERA
IDERA Software
 
Scalability, Availability & Stability Patterns
Jonas Bonér
 
Choosing the right Cloud Database
Janakiram MSV
 
Chapter1: NoSQL: It’s about making intelligent choices
Maynooth University
 
Application Development with Apache Cassandra as a Service
WSO2
 
Scalable relational database with SQL Azure
Shy Engelberg
 
Azure Boot Camp 21.04.2018 SQL Server in Azure Iaas PaaS on-prem Lars Platzdasch
Lars Platzdasch
 
Cloudant Overview Bluemix Meetup from Lisa Neddam
Romeo Kienzler
 
Geek Sync | How to Be the DBA When You Don't Have a DBA - Eric Cobb | IDERA
IDERA Software
 

What's hot (20)

PPTX
Big Data on Cloud Native Platform
Sunil Govindan
 
PDF
Hazelcast 101
Emrah Kocaman
 
PDF
Web session replication with Hazelcast
Emrah Kocaman
 
PPTX
Azure cosmos db, Azure no-SQL database,
BRIJESH KUMAR
 
PPTX
SQL Azure
Pavel Revenkov
 
PPTX
How SQL Server 2016 SP1 Changes the Game
PARIKSHIT SAVJANI
 
PPTX
PASS VC: SQL Server Performance Monitoring and Baselining
PARIKSHIT SAVJANI
 
PPT
SQL or NoSQL, that is the question!
Andraz Tori
 
PDF
NoSQL Databases: An Introduction and Comparison between Dynamo, MongoDB and C...
Vivek Adithya Mohankumar
 
PPTX
Geek Sync | SQL Security Principals and Permissions 101
IDERA Software
 
PPTX
Sql vs nosql
Nick Verschueren
 
PPTX
Mysql ecosystem in 2019
Alkin Tezuysal
 
PDF
Storing and processing data with the wso2 platform
WSO2
 
PPTX
Introduction to NuoDB
Sandun Perera
 
PPTX
From distributed caches to in-memory data grids
Max Alexejev
 
PDF
Cassandra Community Webinar: From Mongo to Cassandra, Architectural Lessons
DataStax
 
PPTX
IaaS for DBAs in Azure
Kellyn Pot'Vin-Gorman
 
PPTX
SQL ON Azure (decision-matrix)
PARIKSHIT SAVJANI
 
PPTX
Azure Data Storage
Ken Cenerelli
 
PDF
Azure Virtual Machines Deployment Scenarios
Brian Benz
 
Big Data on Cloud Native Platform
Sunil Govindan
 
Hazelcast 101
Emrah Kocaman
 
Web session replication with Hazelcast
Emrah Kocaman
 
Azure cosmos db, Azure no-SQL database,
BRIJESH KUMAR
 
SQL Azure
Pavel Revenkov
 
How SQL Server 2016 SP1 Changes the Game
PARIKSHIT SAVJANI
 
PASS VC: SQL Server Performance Monitoring and Baselining
PARIKSHIT SAVJANI
 
SQL or NoSQL, that is the question!
Andraz Tori
 
NoSQL Databases: An Introduction and Comparison between Dynamo, MongoDB and C...
Vivek Adithya Mohankumar
 
Geek Sync | SQL Security Principals and Permissions 101
IDERA Software
 
Sql vs nosql
Nick Verschueren
 
Mysql ecosystem in 2019
Alkin Tezuysal
 
Storing and processing data with the wso2 platform
WSO2
 
Introduction to NuoDB
Sandun Perera
 
From distributed caches to in-memory data grids
Max Alexejev
 
Cassandra Community Webinar: From Mongo to Cassandra, Architectural Lessons
DataStax
 
IaaS for DBAs in Azure
Kellyn Pot'Vin-Gorman
 
SQL ON Azure (decision-matrix)
PARIKSHIT SAVJANI
 
Azure Data Storage
Ken Cenerelli
 
Azure Virtual Machines Deployment Scenarios
Brian Benz
 
Ad

Similar to Scaling Your Database in the Cloud (20)

PPTX
CodeFutures - Scaling Your Database in the Cloud
RightScale
 
PPTX
Application architecture for the rest of us - php xperts devcon 2012
M N Islam Shihan
 
PDF
Scaling Databases On The Cloud
Imaginea
 
PDF
Scaing databases on the cloud
Imaginea
 
PDF
Scaling data on public clouds
Liran Zelkha
 
PPTX
Scaling SQL and NoSQL Databases in the Cloud
RightScale
 
PDF
Why Every NoSQL Deployment Should Be Paired with Hadoop Webinar
Cloudera, Inc.
 
PDF
Scaling Your Database In The Cloud
Cory Isaacson
 
PPTX
Spil Games: outgrowing an internet startup
art-spilgames
 
PPT
Getting Started with MongoDB at Oracle Open World 2012
MongoDB
 
PDF
Nosql intro
Hoang Nguyen
 
PPTX
Couchbase presentation
sharonyb
 
PDF
NYC Meetup November 15, 2012
NuoDB
 
PDF
Intro to NoSQL and MongoDB
DATAVERSITY
 
PDF
Azure and cloud design patterns
Venkatesh Narayanan
 
PPTX
Clustrix Database Overview
Clustrix
 
PDF
Scalable Architecture on Amazon AWS Cloud - Indicthreads cloud computing conf...
IndicThreads
 
PDF
Top 6 Reasons to Use a Distributed Data Grid
ScaleOut Software
 
PPTX
Minnebar 2013 - Scaling with Cassandra
Jeff Bollinger
 
PPTX
Tim Marston.
PatrickCrompton
 
CodeFutures - Scaling Your Database in the Cloud
RightScale
 
Application architecture for the rest of us - php xperts devcon 2012
M N Islam Shihan
 
Scaling Databases On The Cloud
Imaginea
 
Scaing databases on the cloud
Imaginea
 
Scaling data on public clouds
Liran Zelkha
 
Scaling SQL and NoSQL Databases in the Cloud
RightScale
 
Why Every NoSQL Deployment Should Be Paired with Hadoop Webinar
Cloudera, Inc.
 
Scaling Your Database In The Cloud
Cory Isaacson
 
Spil Games: outgrowing an internet startup
art-spilgames
 
Getting Started with MongoDB at Oracle Open World 2012
MongoDB
 
Nosql intro
Hoang Nguyen
 
Couchbase presentation
sharonyb
 
NYC Meetup November 15, 2012
NuoDB
 
Intro to NoSQL and MongoDB
DATAVERSITY
 
Azure and cloud design patterns
Venkatesh Narayanan
 
Clustrix Database Overview
Clustrix
 
Scalable Architecture on Amazon AWS Cloud - Indicthreads cloud computing conf...
IndicThreads
 
Top 6 Reasons to Use a Distributed Data Grid
ScaleOut Software
 
Minnebar 2013 - Scaling with Cassandra
Jeff Bollinger
 
Tim Marston.
PatrickCrompton
 
Ad

More from RightScale (20)

PDF
10 Must-Have Automated Cloud Policies for IT Governance
RightScale
 
PDF
Kubernetes and Terraform in the Cloud: How RightScale Does DevOps
RightScale
 
PDF
Optimize Software, SaaS, and Cloud with Flexera and RightScale
RightScale
 
PDF
Prepare Your Enterprise Cloud Strategy for 2019: 7 Things to Think About Now
RightScale
 
PDF
How to Set Up a Cloud Cost Optimization Process for your Enterprise
RightScale
 
PDF
Multi-Cloud Management with RightScale CMP (Demo)
RightScale
 
PDF
Comparing Cloud VM Types and Prices: AWS vs Azure vs Google vs IBM
RightScale
 
PDF
How to Allocate and Report Cloud Costs with RightScale Optima
RightScale
 
PDF
Should You Move Between AWS, Azure, or Google Clouds? Considerations, Pros an...
RightScale
 
PDF
Using RightScale CMP with Cloud Provider Tools
RightScale
 
PDF
Best Practices for Multi-Cloud Security and Compliance
RightScale
 
PDF
Automating Multi-Cloud Policies for AWS, Azure, Google, and More
RightScale
 
PDF
The 5 Stages of Cloud Management for Enterprises
RightScale
 
PDF
9 Ways to Reduce Cloud Storage Costs
RightScale
 
PDF
Serverless Comparison: AWS vs Azure vs Google vs IBM
RightScale
 
PDF
Best Practices for Cloud Managed Services Providers: The Path to CMP Success
RightScale
 
PDF
Cloud Storage Comparison: AWS vs Azure vs Google vs IBM
RightScale
 
PDF
2018 Cloud Trends: RightScale State of the Cloud Report
RightScale
 
PDF
Got a Multi-Cloud Strategy? How RightScale CMP Helps
RightScale
 
PDF
How to Manage Cloud Costs with RightScale Optima
RightScale
 
10 Must-Have Automated Cloud Policies for IT Governance
RightScale
 
Kubernetes and Terraform in the Cloud: How RightScale Does DevOps
RightScale
 
Optimize Software, SaaS, and Cloud with Flexera and RightScale
RightScale
 
Prepare Your Enterprise Cloud Strategy for 2019: 7 Things to Think About Now
RightScale
 
How to Set Up a Cloud Cost Optimization Process for your Enterprise
RightScale
 
Multi-Cloud Management with RightScale CMP (Demo)
RightScale
 
Comparing Cloud VM Types and Prices: AWS vs Azure vs Google vs IBM
RightScale
 
How to Allocate and Report Cloud Costs with RightScale Optima
RightScale
 
Should You Move Between AWS, Azure, or Google Clouds? Considerations, Pros an...
RightScale
 
Using RightScale CMP with Cloud Provider Tools
RightScale
 
Best Practices for Multi-Cloud Security and Compliance
RightScale
 
Automating Multi-Cloud Policies for AWS, Azure, Google, and More
RightScale
 
The 5 Stages of Cloud Management for Enterprises
RightScale
 
9 Ways to Reduce Cloud Storage Costs
RightScale
 
Serverless Comparison: AWS vs Azure vs Google vs IBM
RightScale
 
Best Practices for Cloud Managed Services Providers: The Path to CMP Success
RightScale
 
Cloud Storage Comparison: AWS vs Azure vs Google vs IBM
RightScale
 
2018 Cloud Trends: RightScale State of the Cloud Report
RightScale
 
Got a Multi-Cloud Strategy? How RightScale CMP Helps
RightScale
 
How to Manage Cloud Costs with RightScale Optima
RightScale
 

Recently uploaded (20)

PPTX
IT Runs Better with ThousandEyes AI-driven Assurance
ThousandEyes
 
PDF
Make GenAI investments go further with the Dell AI Factory
Principled Technologies
 
PDF
NewMind AI Weekly Chronicles - July'25 - Week IV
NewMind AI
 
PDF
AI-Cloud-Business-Management-Platforms-The-Key-to-Efficiency-Growth.pdf
Artjoker Software Development Company
 
PDF
Brief History of Internet - Early Days of Internet
sutharharshit158
 
PDF
Security features in Dell, HP, and Lenovo PC systems: A research-based compar...
Principled Technologies
 
PDF
How-Cloud-Computing-Impacts-Businesses-in-2025-and-Beyond.pdf
Artjoker Software Development Company
 
PDF
Data_Analytics_vs_Data_Science_vs_BI_by_CA_Suvidha_Chaplot.pdf
CA Suvidha Chaplot
 
PDF
The Future of Mobile Is Context-Aware—Are You Ready?
iProgrammer Solutions Private Limited
 
PDF
Google I/O Extended 2025 Baku - all ppts
HusseinMalikMammadli
 
PDF
Economic Impact of Data Centres to the Malaysian Economy
flintglobalapac
 
PDF
Structs to JSON: How Go Powers REST APIs
Emily Achieng
 
PDF
BLW VOCATIONAL TRAINING SUMMER INTERNSHIP REPORT
codernjn73
 
PPTX
AI in Daily Life: How Artificial Intelligence Helps Us Every Day
vanshrpatil7
 
PDF
The Future of Artificial Intelligence (AI)
Mukul
 
PDF
Orbitly Pitch Deck|A Mission-Driven Platform for Side Project Collaboration (...
zz41354899
 
PDF
Oracle AI Vector Search- Getting Started and what's new in 2025- AIOUG Yatra ...
Sandesh Rao
 
PPTX
Applied-Statistics-Mastering-Data-Driven-Decisions.pptx
parmaryashparmaryash
 
PPTX
AI and Robotics for Human Well-being.pptx
JAYMIN SUTHAR
 
PDF
Software Development Methodologies in 2025
KodekX
 
IT Runs Better with ThousandEyes AI-driven Assurance
ThousandEyes
 
Make GenAI investments go further with the Dell AI Factory
Principled Technologies
 
NewMind AI Weekly Chronicles - July'25 - Week IV
NewMind AI
 
AI-Cloud-Business-Management-Platforms-The-Key-to-Efficiency-Growth.pdf
Artjoker Software Development Company
 
Brief History of Internet - Early Days of Internet
sutharharshit158
 
Security features in Dell, HP, and Lenovo PC systems: A research-based compar...
Principled Technologies
 
How-Cloud-Computing-Impacts-Businesses-in-2025-and-Beyond.pdf
Artjoker Software Development Company
 
Data_Analytics_vs_Data_Science_vs_BI_by_CA_Suvidha_Chaplot.pdf
CA Suvidha Chaplot
 
The Future of Mobile Is Context-Aware—Are You Ready?
iProgrammer Solutions Private Limited
 
Google I/O Extended 2025 Baku - all ppts
HusseinMalikMammadli
 
Economic Impact of Data Centres to the Malaysian Economy
flintglobalapac
 
Structs to JSON: How Go Powers REST APIs
Emily Achieng
 
BLW VOCATIONAL TRAINING SUMMER INTERNSHIP REPORT
codernjn73
 
AI in Daily Life: How Artificial Intelligence Helps Us Every Day
vanshrpatil7
 
The Future of Artificial Intelligence (AI)
Mukul
 
Orbitly Pitch Deck|A Mission-Driven Platform for Side Project Collaboration (...
zz41354899
 
Oracle AI Vector Search- Getting Started and what's new in 2025- AIOUG Yatra ...
Sandesh Rao
 
Applied-Statistics-Mastering-Data-Driven-Decisions.pptx
parmaryashparmaryash
 
AI and Robotics for Human Well-being.pptx
JAYMIN SUTHAR
 
Software Development Methodologies in 2025
KodekX
 

Scaling Your Database in the Cloud

  • 1. Scaling Your Database in the Cloud Watch the video of this webinar July 21, 2011
  • 2. 2# Your Panel Today Presenting: • Uri Budnik: Director, ISV Partner Program, RightScale @uribudnik • Cory Isaacson: CEO & Founder, CodeFutures @dbShards • David Blinder: CTO, Family Builder Q&A: • Jason Altobelli, Inside Sales Representative, RightScale Please use the chat box window to ask questions anytime! Webinar Recordings: www.rightscale.com/webinars
  • 3. 3# Agenda • Introduction to RightScale • Introduction to CodeFutures • Live Demo • Live Q&A Please use the chat box window to ask questions anytime!
  • 4. 4# RightScale Real Customers, Real Deployments, Real Benefits • Managed Cloud Deployments for 4 Years • More than 30,000 users; launched over 2.7MM servers • Behind the largest production deployments on that cloud to date
  • 6. 6# RightScale: Core Focus  Improved Agility  Reduce complexity with ServerTemplates™  Manage Systems, not Servers  Orchestrate and Automate  Maintain Choice  Multi-cloud  Configuration Asset Marketplace  ISV Partner Solutions  Control & Security  User Access and Roles  Cost Control and Allocation  Complete Transparency
  • 7. 7# ServerTemplates: Built-to-Order Servers VS. Image bundling and maintenance
  • 8. 8# RightScripts in Multi-Cloud Marketplace • Two RightScripts you can use to analyze you application to determine if its “shard-safe” 1. Logging Driver for Native MySQL® 2. dbShards/Analyze Driver for JDBC • Installed in your app server to gather SQL statistics. • Its an in-depth analysis of what is needed to shard you database • Report lists each unique SQL statement and how it will function once sharded • Run once and generate a report that CodeFutures will review with you at no charge
  • 9. 9# Introduction • Who I am • Cory Isaacson, CEO of CodeFutures • Providers of dbShards • Author of Software Pipelines • Partnerships: • Rightscale • The leading Cloud Management Platform • Leaders in database scalability, performance, and high-availability for the cloud • based on real-world experience with dozens of cloud-based applications • social networking, gaming, data collection, mobile, analytics • Objective is to provide useful experience you can apply to scaling (and managing) your database tier… • especially for high volume applications • and an overview of dbShards technology
  • 10. 10# Challenges of cloud computing • Cloud provides highly attractive service environment • Flexible, scales with need (up or down) • No need for dedicated IT staff, fixed facility costs • Pay-as-you-go model • Cloud services occasionally fail • Partial network outages • Server failures • by their nature cloud servers are “transient” • Disk volume issues • Cloud-based resources are constrained • CPU • I/O Rates • the “Cloud I/O Barrier”
  • 12. 12# Scaling in the Cloud • Scaling Load Balancers is easy • Stateless routing to app server • Can add redundant Load Balancers if needed • If one goes down • failover to another • Scaling Application Servers is easy • Stateless • Sessions can easily transition to another server • Add or remove servers as need dictates • If one goes down • failover to another
  • 13. 13# Scaling in the Cloud • Scaling the Database tier is hard • “Statefull” by definition (and necessity) • Large, integrated data sets • 10s of GBs to TBs (or more) • Difficult to move, reload • I/O dependent • adversely affected by cloud service failures • and slow cloud I/O • If one goes down • ouch!
  • 14. 14# Scaling in the Cloud • Databases form the “last mile” of true application scalability • Start with simple optimizations • implement a follow-on scalability strategy for long-term performance goals • and a high-availability strategy is a must • Ensure your databases can failover • unplanned outages • and planned maintenance • The best time to plan your database scalability strategy is now • don‟t wait until it‟s a “3-alarm fire”
  • 15. 15# Familybuilder  Innovator in Facebook applications  Among first 500 apps worldwide  David Blinder, CTO
  • 16. 16# All CPUs wait at the same speed… The Cloud I/O Barrier
  • 17. 17# Database slowdown is not linear… Database Load Curve 10000 9000 8000 7000 Load Time 6000 5000 4000 Time 3000 Expon. (Time) 2000 1000 0 0 10 20 30 40 Data File (GB) GB Load Time (Min) .9 1 1.3 2.5 3.5 11.7 39.0 10 days…
  • 18. 18# Challenges apply to all types of databases • Traditional RDBMS (MySQL, PostgreSQL, Oracle…) • I/O bound • Multi-user, lock contention • High-availability • Lifecycle management… • backup/restore • schema changes • index maintenance • NoSQL Databases (In-memory, Caching, Document) • Reliability, High-availability • Limits of a single server • and a single thread • Data dumps to disk • Replication • Lifecycle Management
  • 19. 19# Challenges apply to all types of databases • No matter what the technology, big databases are hard to manage • elastic scaling is a real challenge • degradation from growth in size and volume is a certainty • application-specific database requirements add to the challenge • Sound database design is key… • balance performance vs. convenience vs. data size
  • 20. 20# The Laws of Databases • Law #1: Small Databases are fast • Law #2: Big Databases are slow • Law #3: Keep databases small
  • 21. 21# What is the answer? • Database sharding is the only effective method for achieving scale, elasticity, reliability and easy management • regardless of your database technology
  • 22. 22# What is Database Sharding? • “Horizontal partitioning is a database design principle whereby rows of a database table are held separately... Each partition forms part of a shard, which may in turn be located on a separate database server or physical location.” Wikipedia
  • 23. 23# What is Database Sharding? • Start with a big monolithic database • break it into smaller databases • across many servers • using a key value
  • 24. 24# The key to Database Sharding…
  • 27. 27# Why does Database Sharding work? • Maximize CPU/Memory per database instance • as compared to database size • Reduce the size of index trees • speeds writes dramatically • reads are faster too • aggregate, list queries are generally much faster • No contention between servers • locking, disk, memory, CPU • Allows for intelligent parallel processing • Go Fish queries across shards • Keep CPUs busy and productive
  • 28. 28# Breaking the Cloud I/O Barrier
  • 29. 29# Familybuilder  Top 50 Facebook Application  100,000 New Users Daily  Doubled Users in 12 months to over 40MM  David Blinder, CTO
  • 30. 30# Relational Sharding Shard-Tree Root Table Shard-Tree Child Tables Global Tables
  • 32. 32# How Relational Sharding works • Shard key recognition in SQL • SELECT * FROM customer WHERE customer_id = 1234 • INSERT INTO customer (customer_id, first_name, last_name, addr_line1,…) VALUES (2345, „John‟, „Jones‟, „123 B Street‟,…) • UPDATE customer SET addr_line1 = „456 C Avenue‟ WHERE customer_id = 4567
  • 34. 34# Cross-shard result set example • Go Fish (no shard key) • SELECT country_id, count(*) FROM customer GROUP BY country_id
  • 35. 35# Moving to Database Sharding with dbShards
  • 36. 36# dbShards/Analyze • Review Database Schema • Define your initial shard strategy • Run dbShards/Analyze Driver • on your app in a test environment • generate logs of all application SQL • Generate dbShards/Analyze reports • with your data model • your shard strategy • your SQL logs as input • Ensure your application is shard-safe • before you shard your database • and identify optimization opportunities
  • 37. Demo
  • 38. 38# No-charge Shard Analysis • Drop-in dbShards/Analyze Drivers • Native MySQL • JDBC • ODBC • Available as Rightscale templates • search Multi-Cloud Marketplace for CodeFutures • Logging Driver for Native MySQL® • dbShards/Analyze Driver for JDBC • Run driver in your environment, with your app • ship us the logs, schema • a dbShards consultant take you through the analysis • Find out exactly what it takes to shard your database • regardless of the technology you select
  • 39. 39# Wrap-up • Database Sharding is the tool for scaling your database • dbShards is a complete, drop-in sharding solution • Plug-compatible database drivers • nothing between you and your database • Intelligent agents for shard management, processing • Database agnostic, pick the DBMS you prefer • Use dbShards for existing applications • new ones too • dbShards supports the entire Database Sharding infrastructure • Analyze, Shard, Manage • 24X7 Monitoring and Support for all customers
  • 40. 40# Questions/Answers Cory Isaacson CodeFutures Corporation [email protected] http://www.dbshards.com
  • 41. 41# We Appreciate Your Time Contacts Cory Isaacson: RIGHTSCALE: CodeFutures Corporation (866) 720-0208 [email protected] [email protected] http://www.dbshards.com http://www.rightscale.com More Info: Webinar archive: RightScale.com/webinars Whitepapers: RightScale.com/whitepapers Free Edition: RightScale.com/free

Editor's Notes

  • #27: Writes are linear, reads can be faster – depending on your database architecture.
  • #28: How did your database perform 6 months or a year ago?
  • #34: Difference between Black box sharding/NoSQL and App Aware sharding with an RDBMS – you can get sets of related data from the same shard, otherwise need to retrieve a row at a time and consolidate