SlideShare a Scribd company logo
1 of 16
Scaling MySQL in the cloud
        Moshe Shadmon
         Founder, CTO
          ScaleDB Inc.
Scaling the Database Tier in the Cloud

 • Shared Nothing
 • Shared Disk
 • Shared Data
Shared Nothing
          MySQL - Shared Nothing   • Scaling by Partitioning Data
                                     • Multi-months project
                                     • Manual – not a “cloud ready” approach
                                     • Not doable with many applications

                                   • High Availability
Masters                              • Manual – not a “cloud ready” approach
                                     • Very hard to automate
                                     • Bad usage of cloud resources



Slaves
MySQL Shared Nothing Functionality
                                 Customers
           1-10K    10,001-20K 20,001-30K 30,0001-40K
                                  cust_num
                                                                                  All relations
                                  f_name
          Customers Customers Customers Customers          Orders                   must be
          cust_num  cust_num      l_name
                                cust_num   cust_num        cust_num              redefined and
          f_name    f_name        add1
                                f_name     f_name                     Prod_Ord
                                                           po_num
                                  add2
          l_name    l_name      l_name
                                  city
                                           l_name          date       p_num      handled in the
          add1      add1        add1       add1            p_num      amount
          add2      add2          state
                                add2       add2Products
                                                                                 application tier
          city      city          zip
                                city       cityp_name
          state     state         phone1
                                state      state
                                  phone2       p_des
          zip       zip         zip        zipp_num
          phone1    phone1      phone1     phone1
                                               inv_count
          phone2    phone2      phone2     phone2


Masters


 Slaves
Shared Disk
                        Oracle RAC /Exadata - Shared Disk
                    RAC Databases            Exadata Storage Cells
      Oracle                                                    Oracle’s Exadata
Database Instance
                                                                • Dynamic scaling
                                                                • No need to partition the data
                                                                • Automated HA

                                                                • Very expensive (in the millions)
                                                                • Needs dedicated hardware
                                                                •  Not a cloud solution
Shared Data
                    MySQL + ScaleDB      ScaleDB Storage
                    Database Nodes            Nodes

     MySQL                                                 MySQL + ScaleDB
Database Instance
                                                           •   Dynamic scaling
                                                           •   No need to partition the data
                                                           •   Automated HA
                                                           •   Leverage cloud infrastructure
                                                           •   Supports all types of applications
                                                           •   Builds into MySQL ecosystem
                                                           •   Provides Exadata functionality
                                                               on the cloud and with a much
                                                               lower TCO
Shared Data Maintains the Schema
             Customers
             cust_num
             f_name
                                           Orders
             l_name
                                           cust_num
             add1                                          Prod_Ord
                                           po_num
             add2
                                           date            p_num               All relations
             city                                          amount
             state
                                           p_num                              remain intact.
                         Products
             zip                                                              No partitioning
             phone1      p_name
             phone2      p_des                                               or repartitioning
                         p_num
                         inv_count


         ScaleDB                   ScaleDB               ScaleDB
             Compute                 Compute             Compute


  ScaleDB            ScaleDB               ScaleDB              ScaleDB
   Storage               Storage               Storage             Storage
ScaleDB DBMS Cluster Infrastructure
                                 Database Layer - Physical or VM nodes

MySQL tier                         Node 1             Node 2                  Node N
                                   DBMS               DBMS                     DBMS
                                                                     …
ScaleDB Database tier              ScaleDB             ScaleDB                 ScaleDB
                                                                                               Storage Engine
             ScaleDB Cluster      Local Cache         Local Cache             Local Cache      Local Cache
                Manager
ScaleDB Storage tier
Connectors         TCP/UDP            TCP/UDP                  TCP/UDP                TCP/UDP

Global Cache           Cache            Cache                    Cache                 Cache

Global Storage Striped Storage      Striped Storage         Striped Storage        Striped Storage


                                 Storage Layer - Physical or VM nodes
Scaling the Storage Tier
  ScaleDB Database Layer                            Node 1           Node 2                 Node N
Based on “shared disk” approach                     DBMS             DBMS                    DBMS
                                                                                  …
                        ScaleDB Cluster              ScaleDB         ScaleDB                ScaleDB
                           Manager
  ScaleDB Storage Layer

Striped                                Striped                              Striped
Storage                                Storage                              Storage
              Striped                                Striped                              Striped
              Mirror                                 Mirror                               Mirror
                           Striped                              Striped                                Striped
   Stripe 1               Hot Backup             Stripe 2      Hot Backup             Stripe N        Hot Backup
Traditional Query Processing
                   What Were Yesterday Sales ?
     DBMS Server                                 Storage Array
                                Get The
                               Sales Table



 Process
                                 Retrieve
Table Data
                                Entire Sales
                                   Table




                                                                 10
ScaleDB Query Processing
                                   DBMS Server


   What Were Yesterday Sales ?




Storage Nodes

                   Get              Get             Get
                October 15       October 15      October 15
                  Sales            Sales           Sales
Performance: Shared Data
  Performance tests running on DL380 servers, large data set

                                                                              2236
                            2500
                                                                    1884
    Operations per Second




                            2000
                                                1238
                            1500
                            1000       550
                            500
                              0
                                     MySQL   ScaleDB             ScaleDB   ScaleDB
Benchmark Details: YCSB Workload A,          1-Node              2-Nodes   3-Nodes
1:1 Read/Write Ratio, Database Size: 200M Rows, MariaDB V5.3.5
Performance: Shared Data
  Performance tests running on public cloud (Read:Write Ratio = 1:1)

                                                                  4668
                               5000
       Operations per Second




                               4500                     3542
                               4000
                               3500
                               3000
                               2500
                               2000
                               1500     544
                               1000
                                500
                                  0
                                      MySQL        ScaleDB     ScaleDB
                                                   1-Node      2-Nodes
Benchmark Details: YCSB Workload A,
1:1 Read/Write Ratio, Database Size: 40M Rows, MySQL V5.1.42
Performance: Shared Data
Performance tests running on public cloud (Read-Only)
                                                                             11920
                            12000
    Operations per Second




                            10000

                             8000
                                                      6117

                             6000

                             4000
                                      930
                             2000

                                0
                                    MySQL        ScaleDB                 ScaleDB
                                                 1-Node                  2-Nodes
Benchmark Details: YCSB Workload A, 1:0 Read/Write Ratio, Database Size: 40M Rows, MySQL V5.1.42
Value Proposition – Shared Data
• Scaling the Database Tier
   – Scales by adding database nodes to the cluster
   – No need to partition the data
   – No need to change the application
• Scaling the Storage Tier
   – Transparent to the application
   – Provides parallel processing at the storage layer
   – Leverages the cache of the storage nodes
• “Built-In” HA
• Leverages cloud infrastructure
• Lower TCO
From a single MySQL instance to a cluster of integrated
      databases and storage nodes in the Cloud


             Scaling MySQL in the Cloud

More Related Content

Viewers also liked

Cloud project secrets of success
Cloud project secrets of successCloud project secrets of success
Cloud project secrets of successKhazret Sapenov
 
Up 2012 wally mac dermid - final
Up 2012   wally mac dermid - finalUp 2012   wally mac dermid - final
Up 2012 wally mac dermid - finalKhazret Sapenov
 
Cloud computing bringing the dark side of enterprise apps into the light by...
Cloud computing   bringing the dark side of enterprise apps into the light by...Cloud computing   bringing the dark side of enterprise apps into the light by...
Cloud computing bringing the dark side of enterprise apps into the light by...Khazret Sapenov
 
Cisco pat adamiak navigating with a world of many clouds
Cisco pat adamiak   navigating with a world of many cloudsCisco pat adamiak   navigating with a world of many clouds
Cisco pat adamiak navigating with a world of many cloudsKhazret Sapenov
 

Viewers also liked (6)

CeDEM13 - Proceedings
CeDEM13 - Proceedings CeDEM13 - Proceedings
CeDEM13 - Proceedings
 
Cloud project secrets of success
Cloud project secrets of successCloud project secrets of success
Cloud project secrets of success
 
Up 2012 wally mac dermid - final
Up 2012   wally mac dermid - finalUp 2012   wally mac dermid - final
Up 2012 wally mac dermid - final
 
Antonio piraino v1
Antonio piraino v1Antonio piraino v1
Antonio piraino v1
 
Cloud computing bringing the dark side of enterprise apps into the light by...
Cloud computing   bringing the dark side of enterprise apps into the light by...Cloud computing   bringing the dark side of enterprise apps into the light by...
Cloud computing bringing the dark side of enterprise apps into the light by...
 
Cisco pat adamiak navigating with a world of many clouds
Cisco pat adamiak   navigating with a world of many cloudsCisco pat adamiak   navigating with a world of many clouds
Cisco pat adamiak navigating with a world of many clouds
 

Similar to Up2012 scaling my sql in the cloud by moshe shadmon, founder, cto scaledb

Biug 20112026 dimensional modeling and mdx best practices
Biug 20112026   dimensional modeling and mdx best practicesBiug 20112026   dimensional modeling and mdx best practices
Biug 20112026 dimensional modeling and mdx best practicesItay Braun
 
Large Scale Data Analysis Tools
Large Scale Data Analysis ToolsLarge Scale Data Analysis Tools
Large Scale Data Analysis Toolsboorad
 
DAT102 Introduction to Amazon DynamoDB - AWS re: Invent 2012
DAT102 Introduction to Amazon DynamoDB - AWS re: Invent 2012DAT102 Introduction to Amazon DynamoDB - AWS re: Invent 2012
DAT102 Introduction to Amazon DynamoDB - AWS re: Invent 2012Amazon Web Services
 
HA Hadoop -ApacheCon talk
HA Hadoop -ApacheCon talkHA Hadoop -ApacheCon talk
HA Hadoop -ApacheCon talkSteve Loughran
 
Neecom 2010 (Inovis-Dell case study)
Neecom 2010 (Inovis-Dell case study)Neecom 2010 (Inovis-Dell case study)
Neecom 2010 (Inovis-Dell case study)Doug Kern
 
Tez Data Processing over Yarn
Tez Data Processing over YarnTez Data Processing over Yarn
Tez Data Processing over YarnInMobi Technology
 
MongoDB in FS
MongoDB in FSMongoDB in FS
MongoDB in FSMongoDB
 
VoltDB and Erlang - Tech planet 2012
VoltDB and Erlang - Tech planet 2012VoltDB and Erlang - Tech planet 2012
VoltDB and Erlang - Tech planet 2012Eonblast
 
Dynamo Systems - QCon SF 2012 Presentation
Dynamo Systems - QCon SF 2012 PresentationDynamo Systems - QCon SF 2012 Presentation
Dynamo Systems - QCon SF 2012 PresentationShanley Kane
 
NoSQL Data Stores: Introduzione alle Basi di Dati Non Relazionali
NoSQL Data Stores: Introduzione alle Basi di Dati Non RelazionaliNoSQL Data Stores: Introduzione alle Basi di Dati Non Relazionali
NoSQL Data Stores: Introduzione alle Basi di Dati Non RelazionaliSteve Maraspin
 
JavaScript as Data Processing Language & HTML5 Integration
JavaScript as Data Processing Language & HTML5 IntegrationJavaScript as Data Processing Language & HTML5 Integration
JavaScript as Data Processing Language & HTML5 IntegrationQuentin Adam
 
Common MongoDB Use Cases
Common MongoDB Use CasesCommon MongoDB Use Cases
Common MongoDB Use CasesDATAVERSITY
 
DDD&Scalaで作られたプロダクトはその後どうなったか?(Current state of products made with DDD & Scala)
DDD&Scalaで作られたプロダクトはその後どうなったか?(Current state of products made with DDD & Scala)DDD&Scalaで作られたプロダクトはその後どうなったか?(Current state of products made with DDD & Scala)
DDD&Scalaで作られたプロダクトはその後どうなったか?(Current state of products made with DDD & Scala)MicroAd, Inc.(Engineer)
 
Tez: Accelerating Data Pipelines - fifthel
Tez: Accelerating Data Pipelines - fifthelTez: Accelerating Data Pipelines - fifthel
Tez: Accelerating Data Pipelines - fifthelt3rmin4t0r
 
NoSQL overview #phptostart turin 11.07.2011
NoSQL overview #phptostart turin 11.07.2011NoSQL overview #phptostart turin 11.07.2011
NoSQL overview #phptostart turin 11.07.2011David Funaro
 
Dancing about architecture
Dancing about architectureDancing about architecture
Dancing about architectureCoraline Ehmke
 
Data Quality in the Data Hub with RedPointGlobal
Data Quality in the Data Hub with RedPointGlobalData Quality in the Data Hub with RedPointGlobal
Data Quality in the Data Hub with RedPointGlobalCaserta
 

Similar to Up2012 scaling my sql in the cloud by moshe shadmon, founder, cto scaledb (20)

Biug 20112026 dimensional modeling and mdx best practices
Biug 20112026   dimensional modeling and mdx best practicesBiug 20112026   dimensional modeling and mdx best practices
Biug 20112026 dimensional modeling and mdx best practices
 
Large Scale Data Analysis Tools
Large Scale Data Analysis ToolsLarge Scale Data Analysis Tools
Large Scale Data Analysis Tools
 
Introduction to Hadoop
Introduction to HadoopIntroduction to Hadoop
Introduction to Hadoop
 
DAT102 Introduction to Amazon DynamoDB - AWS re: Invent 2012
DAT102 Introduction to Amazon DynamoDB - AWS re: Invent 2012DAT102 Introduction to Amazon DynamoDB - AWS re: Invent 2012
DAT102 Introduction to Amazon DynamoDB - AWS re: Invent 2012
 
HA Hadoop -ApacheCon talk
HA Hadoop -ApacheCon talkHA Hadoop -ApacheCon talk
HA Hadoop -ApacheCon talk
 
Neecom 2010 (Inovis-Dell case study)
Neecom 2010 (Inovis-Dell case study)Neecom 2010 (Inovis-Dell case study)
Neecom 2010 (Inovis-Dell case study)
 
Tez Data Processing over Yarn
Tez Data Processing over YarnTez Data Processing over Yarn
Tez Data Processing over Yarn
 
MongoDB in FS
MongoDB in FSMongoDB in FS
MongoDB in FS
 
VoltDB and Erlang - Tech planet 2012
VoltDB and Erlang - Tech planet 2012VoltDB and Erlang - Tech planet 2012
VoltDB and Erlang - Tech planet 2012
 
Dynamo Systems - QCon SF 2012 Presentation
Dynamo Systems - QCon SF 2012 PresentationDynamo Systems - QCon SF 2012 Presentation
Dynamo Systems - QCon SF 2012 Presentation
 
NoSQL Data Stores: Introduzione alle Basi di Dati Non Relazionali
NoSQL Data Stores: Introduzione alle Basi di Dati Non RelazionaliNoSQL Data Stores: Introduzione alle Basi di Dati Non Relazionali
NoSQL Data Stores: Introduzione alle Basi di Dati Non Relazionali
 
JavaScript as Data Processing Language & HTML5 Integration
JavaScript as Data Processing Language & HTML5 IntegrationJavaScript as Data Processing Language & HTML5 Integration
JavaScript as Data Processing Language & HTML5 Integration
 
Common MongoDB Use Cases
Common MongoDB Use CasesCommon MongoDB Use Cases
Common MongoDB Use Cases
 
DDD&Scalaで作られたプロダクトはその後どうなったか?(Current state of products made with DDD & Scala)
DDD&Scalaで作られたプロダクトはその後どうなったか?(Current state of products made with DDD & Scala)DDD&Scalaで作られたプロダクトはその後どうなったか?(Current state of products made with DDD & Scala)
DDD&Scalaで作られたプロダクトはその後どうなったか?(Current state of products made with DDD & Scala)
 
Tez: Accelerating Data Pipelines - fifthel
Tez: Accelerating Data Pipelines - fifthelTez: Accelerating Data Pipelines - fifthel
Tez: Accelerating Data Pipelines - fifthel
 
Nov 2011 HUG: HParser
Nov 2011 HUG: HParserNov 2011 HUG: HParser
Nov 2011 HUG: HParser
 
NoSQL overview #phptostart turin 11.07.2011
NoSQL overview #phptostart turin 11.07.2011NoSQL overview #phptostart turin 11.07.2011
NoSQL overview #phptostart turin 11.07.2011
 
Dancing about architecture
Dancing about architectureDancing about architecture
Dancing about architecture
 
Data Quality in the Data Hub with RedPointGlobal
Data Quality in the Data Hub with RedPointGlobalData Quality in the Data Hub with RedPointGlobal
Data Quality in the Data Hub with RedPointGlobal
 
Secure Big Data Analytics - Hadoop & Intel
Secure Big Data Analytics - Hadoop & IntelSecure Big Data Analytics - Hadoop & Intel
Secure Big Data Analytics - Hadoop & Intel
 

More from Khazret Sapenov

V mware evolutionary cloud 12 2012
V mware evolutionary cloud 12 2012V mware evolutionary cloud 12 2012
V mware evolutionary cloud 12 2012Khazret Sapenov
 
Virtual sharp cloud aware bc dr up 2012 cloud
Virtual sharp cloud aware bc dr up 2012 cloudVirtual sharp cloud aware bc dr up 2012 cloud
Virtual sharp cloud aware bc dr up 2012 cloudKhazret Sapenov
 
Up2012edit daniel chalef
Up2012edit daniel chalefUp2012edit daniel chalef
Up2012edit daniel chalefKhazret Sapenov
 
Up 2012 smart cloud presentation_final
Up 2012   smart cloud presentation_finalUp 2012   smart cloud presentation_final
Up 2012 smart cloud presentation_finalKhazret Sapenov
 
Up 2012 dave jilk - multi-tenancy in paa s (distribution version)
Up 2012   dave jilk - multi-tenancy in paa s (distribution version)Up 2012   dave jilk - multi-tenancy in paa s (distribution version)
Up 2012 dave jilk - multi-tenancy in paa s (distribution version)Khazret Sapenov
 
Transverse up cloud 2012 - final
Transverse   up cloud 2012 - finalTransverse   up cloud 2012 - final
Transverse up cloud 2012 - finalKhazret Sapenov
 
Transforming cloud infrastructure to support big data storage and workflows b...
Transforming cloud infrastructure to support big data storage and workflows b...Transforming cloud infrastructure to support big data storage and workflows b...
Transforming cloud infrastructure to support big data storage and workflows b...Khazret Sapenov
 
The elephantintheroom bigdataanalyticsinthecloud
The elephantintheroom bigdataanalyticsinthecloudThe elephantintheroom bigdataanalyticsinthecloud
The elephantintheroom bigdataanalyticsinthecloudKhazret Sapenov
 
Taking control of bring your own device byod with desktops as a service (daa ...
Taking control of bring your own device byod with desktops as a service (daa ...Taking control of bring your own device byod with desktops as a service (daa ...
Taking control of bring your own device byod with desktops as a service (daa ...Khazret Sapenov
 
Rethink cloud security to get ahead of the risk curve by kurt johnson, vice p...
Rethink cloud security to get ahead of the risk curve by kurt johnson, vice p...Rethink cloud security to get ahead of the risk curve by kurt johnson, vice p...
Rethink cloud security to get ahead of the risk curve by kurt johnson, vice p...Khazret Sapenov
 
Regulatory compliant cloud computing rethinking web application architectures...
Regulatory compliant cloud computing rethinking web application architectures...Regulatory compliant cloud computing rethinking web application architectures...
Regulatory compliant cloud computing rethinking web application architectures...Khazret Sapenov
 
Memsql product overview_2013
Memsql product overview_2013Memsql product overview_2013
Memsql product overview_2013Khazret Sapenov
 
Managing application performance for cloud apps bmc
Managing application performance for cloud apps bmcManaging application performance for cloud apps bmc
Managing application performance for cloud apps bmcKhazret Sapenov
 
Glenn solomon up presso d 3.pptx
Glenn solomon up presso d 3.pptxGlenn solomon up presso d 3.pptx
Glenn solomon up presso d 3.pptxKhazret Sapenov
 
Future of cloud up presentation m_dawson
Future of cloud up presentation m_dawsonFuture of cloud up presentation m_dawson
Future of cloud up presentation m_dawsonKhazret Sapenov
 
Efrat ip up con 2012 presentation
Efrat ip up con 2012 presentationEfrat ip up con 2012 presentation
Efrat ip up con 2012 presentationKhazret Sapenov
 
Decentralized cloud an industrial reality with higher resilience by jean-pa...
Decentralized cloud   an industrial reality with higher resilience by jean-pa...Decentralized cloud   an industrial reality with higher resilience by jean-pa...
Decentralized cloud an industrial reality with higher resilience by jean-pa...Khazret Sapenov
 
David lucas big data presentation
David lucas big data presentationDavid lucas big data presentation
David lucas big data presentationKhazret Sapenov
 

More from Khazret Sapenov (20)

V mware evolutionary cloud 12 2012
V mware evolutionary cloud 12 2012V mware evolutionary cloud 12 2012
V mware evolutionary cloud 12 2012
 
Virtual sharp cloud aware bc dr up 2012 cloud
Virtual sharp cloud aware bc dr up 2012 cloudVirtual sharp cloud aware bc dr up 2012 cloud
Virtual sharp cloud aware bc dr up 2012 cloud
 
Up2012edit daniel chalef
Up2012edit daniel chalefUp2012edit daniel chalef
Up2012edit daniel chalef
 
Up 2012 smart cloud presentation_final
Up 2012   smart cloud presentation_finalUp 2012   smart cloud presentation_final
Up 2012 smart cloud presentation_final
 
Up 2012 dave jilk - multi-tenancy in paa s (distribution version)
Up 2012   dave jilk - multi-tenancy in paa s (distribution version)Up 2012   dave jilk - multi-tenancy in paa s (distribution version)
Up 2012 dave jilk - multi-tenancy in paa s (distribution version)
 
Transverse up cloud 2012 - final
Transverse   up cloud 2012 - finalTransverse   up cloud 2012 - final
Transverse up cloud 2012 - final
 
Transforming cloud infrastructure to support big data storage and workflows b...
Transforming cloud infrastructure to support big data storage and workflows b...Transforming cloud infrastructure to support big data storage and workflows b...
Transforming cloud infrastructure to support big data storage and workflows b...
 
The elephantintheroom bigdataanalyticsinthecloud
The elephantintheroom bigdataanalyticsinthecloudThe elephantintheroom bigdataanalyticsinthecloud
The elephantintheroom bigdataanalyticsinthecloud
 
Taking control of bring your own device byod with desktops as a service (daa ...
Taking control of bring your own device byod with desktops as a service (daa ...Taking control of bring your own device byod with desktops as a service (daa ...
Taking control of bring your own device byod with desktops as a service (daa ...
 
Rethink cloud security to get ahead of the risk curve by kurt johnson, vice p...
Rethink cloud security to get ahead of the risk curve by kurt johnson, vice p...Rethink cloud security to get ahead of the risk curve by kurt johnson, vice p...
Rethink cloud security to get ahead of the risk curve by kurt johnson, vice p...
 
Regulatory compliant cloud computing rethinking web application architectures...
Regulatory compliant cloud computing rethinking web application architectures...Regulatory compliant cloud computing rethinking web application architectures...
Regulatory compliant cloud computing rethinking web application architectures...
 
Memsql product overview_2013
Memsql product overview_2013Memsql product overview_2013
Memsql product overview_2013
 
Managing application performance for cloud apps bmc
Managing application performance for cloud apps bmcManaging application performance for cloud apps bmc
Managing application performance for cloud apps bmc
 
Making case up
Making case upMaking case up
Making case up
 
Green qloud up-con
Green qloud up-conGreen qloud up-con
Green qloud up-con
 
Glenn solomon up presso d 3.pptx
Glenn solomon up presso d 3.pptxGlenn solomon up presso d 3.pptx
Glenn solomon up presso d 3.pptx
 
Future of cloud up presentation m_dawson
Future of cloud up presentation m_dawsonFuture of cloud up presentation m_dawson
Future of cloud up presentation m_dawson
 
Efrat ip up con 2012 presentation
Efrat ip up con 2012 presentationEfrat ip up con 2012 presentation
Efrat ip up con 2012 presentation
 
Decentralized cloud an industrial reality with higher resilience by jean-pa...
Decentralized cloud   an industrial reality with higher resilience by jean-pa...Decentralized cloud   an industrial reality with higher resilience by jean-pa...
Decentralized cloud an industrial reality with higher resilience by jean-pa...
 
David lucas big data presentation
David lucas big data presentationDavid lucas big data presentation
David lucas big data presentation
 

Up2012 scaling my sql in the cloud by moshe shadmon, founder, cto scaledb

  • 1. Scaling MySQL in the cloud Moshe Shadmon Founder, CTO ScaleDB Inc.
  • 2. Scaling the Database Tier in the Cloud • Shared Nothing • Shared Disk • Shared Data
  • 3. Shared Nothing MySQL - Shared Nothing • Scaling by Partitioning Data • Multi-months project • Manual – not a “cloud ready” approach • Not doable with many applications • High Availability Masters • Manual – not a “cloud ready” approach • Very hard to automate • Bad usage of cloud resources Slaves
  • 4. MySQL Shared Nothing Functionality Customers 1-10K 10,001-20K 20,001-30K 30,0001-40K cust_num All relations f_name Customers Customers Customers Customers Orders must be cust_num cust_num l_name cust_num cust_num cust_num redefined and f_name f_name add1 f_name f_name Prod_Ord po_num add2 l_name l_name l_name city l_name date p_num handled in the add1 add1 add1 add1 p_num amount add2 add2 state add2 add2Products application tier city city zip city cityp_name state state phone1 state state phone2 p_des zip zip zip zipp_num phone1 phone1 phone1 phone1 inv_count phone2 phone2 phone2 phone2 Masters Slaves
  • 5. Shared Disk Oracle RAC /Exadata - Shared Disk RAC Databases Exadata Storage Cells Oracle Oracle’s Exadata Database Instance • Dynamic scaling • No need to partition the data • Automated HA • Very expensive (in the millions) • Needs dedicated hardware •  Not a cloud solution
  • 6. Shared Data MySQL + ScaleDB ScaleDB Storage Database Nodes Nodes MySQL MySQL + ScaleDB Database Instance • Dynamic scaling • No need to partition the data • Automated HA • Leverage cloud infrastructure • Supports all types of applications • Builds into MySQL ecosystem • Provides Exadata functionality on the cloud and with a much lower TCO
  • 7. Shared Data Maintains the Schema Customers cust_num f_name Orders l_name cust_num add1 Prod_Ord po_num add2 date p_num All relations city amount state p_num remain intact. Products zip No partitioning phone1 p_name phone2 p_des or repartitioning p_num inv_count ScaleDB ScaleDB ScaleDB Compute Compute Compute ScaleDB ScaleDB ScaleDB ScaleDB Storage Storage Storage Storage
  • 8. ScaleDB DBMS Cluster Infrastructure Database Layer - Physical or VM nodes MySQL tier Node 1 Node 2 Node N DBMS DBMS DBMS … ScaleDB Database tier ScaleDB ScaleDB ScaleDB Storage Engine ScaleDB Cluster Local Cache Local Cache Local Cache Local Cache Manager ScaleDB Storage tier Connectors TCP/UDP TCP/UDP TCP/UDP TCP/UDP Global Cache Cache Cache Cache Cache Global Storage Striped Storage Striped Storage Striped Storage Striped Storage Storage Layer - Physical or VM nodes
  • 9. Scaling the Storage Tier ScaleDB Database Layer Node 1 Node 2 Node N Based on “shared disk” approach DBMS DBMS DBMS … ScaleDB Cluster ScaleDB ScaleDB ScaleDB Manager ScaleDB Storage Layer Striped Striped Striped Storage Storage Storage Striped Striped Striped Mirror Mirror Mirror Striped Striped Striped Stripe 1 Hot Backup Stripe 2 Hot Backup Stripe N Hot Backup
  • 10. Traditional Query Processing What Were Yesterday Sales ? DBMS Server Storage Array Get The Sales Table Process Retrieve Table Data Entire Sales Table 10
  • 11. ScaleDB Query Processing DBMS Server What Were Yesterday Sales ? Storage Nodes Get Get Get October 15 October 15 October 15 Sales Sales Sales
  • 12. Performance: Shared Data Performance tests running on DL380 servers, large data set 2236 2500 1884 Operations per Second 2000 1238 1500 1000 550 500 0 MySQL ScaleDB ScaleDB ScaleDB Benchmark Details: YCSB Workload A, 1-Node 2-Nodes 3-Nodes 1:1 Read/Write Ratio, Database Size: 200M Rows, MariaDB V5.3.5
  • 13. Performance: Shared Data Performance tests running on public cloud (Read:Write Ratio = 1:1) 4668 5000 Operations per Second 4500 3542 4000 3500 3000 2500 2000 1500 544 1000 500 0 MySQL ScaleDB ScaleDB 1-Node 2-Nodes Benchmark Details: YCSB Workload A, 1:1 Read/Write Ratio, Database Size: 40M Rows, MySQL V5.1.42
  • 14. Performance: Shared Data Performance tests running on public cloud (Read-Only) 11920 12000 Operations per Second 10000 8000 6117 6000 4000 930 2000 0 MySQL ScaleDB ScaleDB 1-Node 2-Nodes Benchmark Details: YCSB Workload A, 1:0 Read/Write Ratio, Database Size: 40M Rows, MySQL V5.1.42
  • 15. Value Proposition – Shared Data • Scaling the Database Tier – Scales by adding database nodes to the cluster – No need to partition the data – No need to change the application • Scaling the Storage Tier – Transparent to the application – Provides parallel processing at the storage layer – Leverages the cache of the storage nodes • “Built-In” HA • Leverages cloud infrastructure • Lower TCO
  • 16. From a single MySQL instance to a cluster of integrated databases and storage nodes in the Cloud Scaling MySQL in the Cloud