mysql cluster scaling web databases webinar aug 26

Upload: fernando-martin

Post on 05-Apr-2018

228 views

Category:

Documents


0 download

TRANSCRIPT

  • 7/31/2019 Mysql Cluster Scaling Web Databases Webinar Aug 26

    1/57

    Scaling Web Databases: MySQL ClusterAuto-Partitioning, SQL & NoSQL Interfaces, Schema Flexibility

    Ronen BaramMySQL Senior Sales Consultant

  • 7/31/2019 Mysql Cluster Scaling Web Databases Webinar Aug 26

    2/57

    The Reality of Being Successful on the Web

    Scale fast

    .writes as well as reads, linearly

    .on commodity hardware

    .without downtime

    Choose the right tool for the job

    .integrating multiple lightweight services.multiple data access & data integrity requirements

    .SQL & NoSQL, when and where

    Rapidly iterate

    .evolve the app and the database Stay upstay available

  • 7/31/2019 Mysql Cluster Scaling Web Databases Webinar Aug 26

    3/57

    Session Agenda

    Best Practices in Scaling Web Services withMySQL Cluster

    Scaling Reads & Writes with Auto-Sharding

    On-Line Scaling with Commodity Hardware

    Choosing the Right Interface(s): NoSQL and SQL

    Rapidly Evolving Web Services

    On-Line Scale-Out & Schema Updates

    Staying Up, Staying On-Line Case Studies

    Resources to Get Started

  • 7/31/2019 Mysql Cluster Scaling Web Databases Webinar Aug 26

    4/57

    The presentation is intended to outline our general

    product direction. It is intended for information

    purposes only, and may not be incorporated into any

    contract. It is not a commitment to deliver any

    material, code, or functionality, and should not berelied upon in making purchasing decisions.

    The development, release, and timing of any

    features or functionality described for Oracles

    products remains at the sole discretion of Oracle.

  • 7/31/2019 Mysql Cluster Scaling Web Databases Webinar Aug 26

    5/57

    MySQL Cluster Overview

    ACID Compliant Relational DatabaseSQL & NoSQL interfaces

    Write-Scalable & Real-TimeDistributed, auto-partitioning (sharding), multi-master

    99.999% AvailabilityShared-nothing, integrated clustering & sub-second recovery, local & geographicreplication, on-line operations

    Low TCOOpen-source, management & monitoring tools, scale-out on commodity hardware

  • 7/31/2019 Mysql Cluster Scaling Web Databases Webinar Aug 26

    6/57

    MySQL Cluster Architecture

    Data Nodes

    Node Group 1

    F1

    F3

    F3

    F1

    Node

    1

    Node2

    Node Group 2

    F2

    F4

    F4

    F2

    Node3

    Node4

    Application Nodes

    ClusterMgmt

    ClusterMgmt

    LDAPREST

  • 7/31/2019 Mysql Cluster Scaling Web Databases Webinar Aug 26

    7/57

    MySQL Cluster - Extreme Resilience

    Data Nodes

    Node Group 1

    F1

    F3

    F3

    F1

    Node

    1

    Node2

    Node Group 2

    F2

    F4

    F4

    F2

    Node3

    Node4

    Application Nodes

    ClusterMgmt

    ClusterMgmt

    LDAPREST

  • 7/31/2019 Mysql Cluster Scaling Web Databases Webinar Aug 26

    8/57

    MySQL Cluster Users & ApplicationsHA, Transactional Services: Web & Telecoms

    http://www.mysql.com/customers/cluster/

    Web

    User profile management Session stores

    eCommerce

    On-Line Gaming

    Application Servers

    Telecoms

    Subscriber Databases (HLR/HSS)

    Service Delivery Platforms

    VoIP, IPTV & VoD

    Mobile Content Delivery

    On-Line app stores and portals

    IP Management

    Payment Gateways

  • 7/31/2019 Mysql Cluster Scaling Web Databases Webinar Aug 26

    9/57

    Auto-Sharding

  • 7/31/2019 Mysql Cluster Scaling Web Databases Webinar Aug 26

    10/57

    Scale-Out Reads & Writes onCommodity Hardware

    NDB API Performance 4.33 MQueries per second!

    8 Intel servers, dual-6-core [email protected] GHz, 24GB RAM

    2 Data Nodes per server flexAsync benchmark

    16 parallel threads, each issuing 256simultaneous transactions

    Read / Write 100 byte attribute

    Interim results from 2 days testing

    watch this space:mikaelronstrom.blogspot.com

  • 7/31/2019 Mysql Cluster Scaling Web Databases Webinar Aug 26

    11/57

    Out of the Box Scalability: Auto-Sharding

    Partitioning happens automatically & transparent to the application A little knowledge of how it works though can massively increase application performance

    Transparency maintained during failover, upgrades and scale-out

    No need for application-layer sharding logic

    No need to limit application to single-shard transactions (though can helpefficiency)

    http://www.mysql.com/why-mysql/white-papers/mysql_wp_cluster_perfomance.php

  • 7/31/2019 Mysql Cluster Scaling Web Databases Webinar Aug 26

    12/57

    Data Node 1

    Data Node 2

    Data Node 3

    Data Node 4A fragment is a copy of a partition (aka fragment replica)

    Number of fragments = # of partitions * # of replicas

    Table T1

    P2

    P3

    P4

    Px Partition

    4 Partitions * 2 Replicas = 8 Fragments

    P1

    Automatic Data Partitioning

  • 7/31/2019 Mysql Cluster Scaling Web Databases Webinar Aug 26

    13/57

    Data Node 1

    Data Node 2

    F1

    Primary Fragment

    Secondary Fragment (fragment replica)

    Data Node 3

    Data Node 4Fx

    Fx

    Table T1

    P2

    P3

    P4

    Px Partition

    4 Partitions * 2 Replicas = 8 Fragments

    P1

    Automatic Data Partitioning

  • 7/31/2019 Mysql Cluster Scaling Web Databases Webinar Aug 26

    14/57

    Data Node 1

    Data Node 2

    F1

    Primary Fragment

    F1

    Data Node 3

    Data Node 4Fx

    Fx

    Table T1

    P2

    P3

    P4

    Px Partition

    4 Partitions * 2 Replicas = 8 Fragments

    P1

    Automatic Data Partitioning

    Secondary Fragment (fragment replica)

  • 7/31/2019 Mysql Cluster Scaling Web Databases Webinar Aug 26

    15/57

    Data Node 1

    Data Node 2

    F1

    Primary Fragment

    F3 F1

    Data Node 3

    Data Node 4Fx

    Fx

    Table T1

    P2

    P3

    P4

    Px Partition

    4 Partitions * 2 Replicas = 8 Fragments

    P1

    Automatic Data Partitioning

    Secondary Fragment (fragment replica)

  • 7/31/2019 Mysql Cluster Scaling Web Databases Webinar Aug 26

    16/57

    Data Node 1

    Data Node 2

    F1 F3

    Primary Fragment

    F3 F1

    Data Node 3

    Data Node 4Fx

    Fx

    Table T1

    P2

    P3

    P4

    Px Partition

    4 Partitions * 2 Replicas = 8 Fragments

    P1

    Automatic Data Partitioning

    Secondary Fragment (fragment replica)

  • 7/31/2019 Mysql Cluster Scaling Web Databases Webinar Aug 26

    17/57

    Data Node 1

    Data Node 2

    F1 F3

    Primary Fragment

    F3 F1

    Data Node 3

    Data Node 4

    F2

    Fx

    Fx

    Table T1

    P2

    P3

    P4

    Px Partition

    4 Partitions * 2 Replicas = 8 Fragments

    P1

    Automatic Data Partitioning

    Secondary Fragment (fragment replica)

  • 7/31/2019 Mysql Cluster Scaling Web Databases Webinar Aug 26

    18/57

    Data Node 1

    Data Node 2

    F1 F3

    Primary Fragment

    F3 F1

    Data Node 3

    Data Node 4

    F2

    F2

    Fx

    Fx

    Table T1

    P2

    P3

    P4

    Px Partition

    4 Partitions * 2 Replicas = 8 Fragments

    P1

    Automatic Data Partitioning

    Secondary Fragment (fragment replica)

  • 7/31/2019 Mysql Cluster Scaling Web Databases Webinar Aug 26

    19/57

    Data Node 1

    Data Node 2

    F1 F3

    Primary Fragment

    F3 F1

    Data Node 3

    Data Node 4

    F2

    F4 F2

    4 Partitions * 2 Replicas = 8 Fragments

    Fx

    Fx

    Table T1

    P2

    P3

    P4

    Px Partition

    P1

    Automatic Data Partitioning

    Secondary Fragment (fragment replica)

  • 7/31/2019 Mysql Cluster Scaling Web Databases Webinar Aug 26

    20/57

    Data Node 1

    Data Node 2

    F1 F3

    Primary Fragment

    F3 F1

    Data Node 3

    Data Node 4

    F2 F4

    F4 F2

    Fx

    Fx

    Table T1

    P2

    P3

    P4

    Px Partition

    4 Partitions * 2 Replicas = 8 Fragments

    P1

    Automatic Data Partitioning

    Secondary Fragment (fragment replica)

  • 7/31/2019 Mysql Cluster Scaling Web Databases Webinar Aug 26

    21/57

    Data Node 1

    Data Node 2

    F3

    Primary Fragment

    F1

    Data Node 3

    Data Node 4

    F2 F4

    F4 F2

    Node Group 1

    Fx

    Fx

    Table T1

    P2

    P3

    P4

    Px Partition

    4 Partitions * 2 Replicas = 8 Fragments

    P1

    F1

    F3

    Automatic Data Partitioning

    Secondary Fragment (fragment replica)

  • 7/31/2019 Mysql Cluster Scaling Web Databases Webinar Aug 26

    22/57

    Data Node 1

    Data Node 2

    F1 F3

    Primary Fragment

    F3 F1

    Data Node 3

    Data Node 4

    F2 F4

    F4 F2

    Node Group 1

    Node Group 2Fx

    Fx

    - Node groups are created automatically

    - # of groups = # of data nodes / # ofreplicas

    Table T1

    P2

    P3

    P4

    Px Partition

    4 Partitions * 2 Replicas = 8 Fragments

    P1

    Automatic Data Partitioning

    Secondary Fragment (fragment replica)

  • 7/31/2019 Mysql Cluster Scaling Web Databases Webinar Aug 26

    23/57

    Data Node 1

    Data Node 2

    F1 F3

    Primary Fragment

    F3 F1

    Data Node 3

    Data Node 4

    F2 F4

    F4 F2

    Node Group 1

    Node Group 2Fx

    Fx

    As long as one data node in eachnode group is running we have a

    complete copy of the data

    Table T1

    P2

    P3

    P4

    Px Partition

    4 Partitions * 2 Replicas = 8 Fragments

    P1

    Automatic Data Partitioning

    Secondary Fragment (fragment replica)

  • 7/31/2019 Mysql Cluster Scaling Web Databases Webinar Aug 26

    24/57

    Data Node 1

    Data Node 2

    F1 F3

    Primary Fragment

    F3 F1

    Data Node 3

    Data Node 4

    F2 F4

    F4 F2

    Node Group 1

    Node Group 2Fx

    Fx

    As long as one data node in eachnode group is running we have a

    complete copy of the data

    Table T1

    P2

    P3

    P4

    Px Partition

    4 Partitions * 2 Replicas = 8 Fragments

    P1

    Automatic Data Partitioning

    Secondary Fragment (fragment replica)

  • 7/31/2019 Mysql Cluster Scaling Web Databases Webinar Aug 26

    25/57

    Data Node 1

    Data Node 2

    F1 F3

    Primary Fragment

    F3 F1

    Data Node 3

    Data Node 4

    F2 F4

    F4 F2

    Node Group 1

    Node Group 2Fx

    Fx

    As long as one data node in eachnode group

    is running we have a complete copy ofthe data

    Table T1

    P2

    P3

    P4

    Px Partition

    4 Partitions * 2 Replicas = 8 Fragments

    P1

    Automatic Data Partitioning

    Secondary Fragment (fragment replica)

  • 7/31/2019 Mysql Cluster Scaling Web Databases Webinar Aug 26

    26/57

    Table T1 Data Node 1

    Data Node 2

    F1 F3

    Primary Fragment

    P2

    P3

    P4

    Px Partition

    F3 F1

    Data Node 3

    Data Node 4

    F2 F4

    F4 F2

    Node Group 1

    Node Group 2

    4 Partitions * 2 Replicas = 8 Fragments

    Fx

    Fx

    - No complete copy of thedata

    - Cluster shutdownsautomatically

    P1

    Automatic Data Partitioning

    Secondary Fragment (fragment replica)

  • 7/31/2019 Mysql Cluster Scaling Web Databases Webinar Aug 26

    27/57

    General Design Considerations

    Overall design goalMinimize network roundtrips for your

    most important requests!

    MySQL Cluster is designed for Short transactions

    Many parallel transactions

    Utilize Simple access patterns to fetch data

    Use efficient scans and batching interfaces Analyze what your most typical use cases are

    optimize for those

  • 7/31/2019 Mysql Cluster Scaling Web Databases Webinar Aug 26

    28/57

    Best Practice : Primary Keys

    To avoid problems with Cluster 2 Cluster replication

    Recovery

    Application behavior (KEY NOT FOUND.. etc)

    ALWAYS DEFINE A PRIMARY KEY ON THE TABLE!

    A hidden PRIMARY KEY is added if no PK is specified. BUT.. .. NOT recommended

    The hidden primary key is for example not replicated(between Clusters)!!

    There are problems in this area, so avoid the problems!

    So always, at least haveid BIGINT AUTO_INCREMENT PRIMARY KEY

    Even if you don't need it for you applications

  • 7/31/2019 Mysql Cluster Scaling Web Databases Webinar Aug 26

    29/57

    Best Practice: Distribution Aware Apps

    Partition selected using hash onPartition Key

    Primary Key by default

    User can override in table definition

    MySQL Server (or NDB API) willattempt to send transaction to thecorrect data node

    If all data for the transaction are inthe same partition, less messaging -> faster

    Aim to have all rows for high-running queries in same partition

    Partition Key

    Primary Key

    town country population

    Maidenhead UK 78000

    Paris France 2193031

    Boston UK 58124

    Boston USA 617594

    SELECT SUM(population) FROM towns

    WHERE country=UK;

    Partition Key

    Primary Key

    town country population

    Maidenhead UK 78000

    Paris France 2193031

    Boston UK 58124

    Boston USA 617594

    SELECT SUM(population) FROM towns

    WHERE town=Boston;

  • 7/31/2019 Mysql Cluster Scaling Web Databases Webinar Aug 26

    30/57

    Best Practice: Distribution Aware Multiple Tables

    Extend partition awareness overmultiple tables

    Same rule aim to have all data for

    instance of high runningtransactions in the same partition

    ALTER TABLE service_ids

    PARTITION BY KEY(sub_id);

    Partition Key

    Primary Key

    service sub_id svc_id

    twitter 19724 76325732

    twitter 84539 67324782

    facebook 19724 83753984

    facebook 73642 87324793

    Partition Key

    Primary Key

    sub_id age gender

    19724 25 male

    84539 43 female

    19724 16 female

    74574 21 female

  • 7/31/2019 Mysql Cluster Scaling Web Databases Webinar Aug 26

    31/57

    Scaling Distributed JoinsAdaptive Query Localization

    Complex joins traditionally slower in

    MySQL Cluster

    Complex = lots of levels and interimresults in JOIN

    JOIN was implemented in the MySQLServer:

    Nested Loop join

    When data is needed, it must be fetched

    over the network from the Data Nodes;row by row

    This causes latency and consumesresources

    Can now push the execution down intothe data nodes, greatly reducing the

    network trips 25x-40x performance gain in

    customer PoC!

    mysqld

    Data Nodes

    mysqld

    Data Nodes

    AQL

    http://www.mysql.com/news-and-events/on-demand-webinars/display-od-583.html

    The existence, content and timing of future releases described here is includedfor information only and may be changed at Oracles discretion. May 26, 2011

    7.2DM

  • 7/31/2019 Mysql Cluster Scaling Web Databases Webinar Aug 26

    32/57

    Testing ofAdaptive Query Localization has yielded over 20xhigher performanceon complex queries within our application,

    enabling Docudesk to expand our use of MySQL Cluster into abroader range of highly dynamic web services.

    Casey BrownManager, Development & DBA Services, Docudesk

    Early Adopter Speaks!

  • 7/31/2019 Mysql Cluster Scaling Web Databases Webinar Aug 26

    33/57

    Data Node 1 Data Node 2

    Need more throughput?

    Scale Out

  • 7/31/2019 Mysql Cluster Scaling Web Databases Webinar Aug 26

    34/57

    Data Node 1 Data Node 2

    Need more throughput?

    Scale Out

  • 7/31/2019 Mysql Cluster Scaling Web Databases Webinar Aug 26

    35/57

    Data Node 1 Data Node 2

    Need more throughput?

    Scale Out

    Oops, need to increase capacity as well!

  • 7/31/2019 Mysql Cluster Scaling Web Databases Webinar Aug 26

    36/57

    Data Node 1 Data Node 2

    Scale Out

    Data Node 3 Data Node 4

  • 7/31/2019 Mysql Cluster Scaling Web Databases Webinar Aug 26

    37/57

    Scaling Across Data CentersGeographic Replication with Multi-Master Replication

    Cluster 1

    Synchronousreplication

    Cluster 2

    InnoDB

    Asynchronousreplication

    Synchronous replication withina Cluster node group for HA

    Bi-Direction asynchronousreplication to remote Cluster forgeographic redundancy

    Master-slave or multi-master Automated conflict detection

    and resolution

    Asynchronous replication tonon-Cluster databases for

    specialised activities such asreport generation

    Mix and match replication types

    InnoDBInnoDB

  • 7/31/2019 Mysql Cluster Scaling Web Databases Webinar Aug 26

    38/57

    SQL & NoSQL Interfaces

  • 7/31/2019 Mysql Cluster Scaling Web Databases Webinar Aug 26

    39/57

    PerformanceI FlexibilityI Simplification SQL and NoSQL Access Methods to tables

    SQL: complex queries, rich ecosystem of apps & expertise Simple Key/Value interfaces bypassing SQL layer for blazing fast reads &

    writes Real-time interfaces for micro-second latency Developers free to work in their preferred environment

  • 7/31/2019 Mysql Cluster Scaling Web Databases Webinar Aug 26

    40/57

    MySQL Cluster: SQL & NoSQL Combined

    NoSQL Multiple ways to bypass SQL, and maximize performance: NDB API. C++ for highest performance, lowest latency Cluster/J for optimized access in Java NEW! Memcached. Use all your existing clients/applications

    Mix & Match!

    Same data accessedsimultaneously throughSQL & NoSQL interfaces

  • 7/31/2019 Mysql Cluster Scaling Web Databases Webinar Aug 26

    41/57

    Which to Choose ?

  • 7/31/2019 Mysql Cluster Scaling Web Databases Webinar Aug 26

    42/57

    NoSQL With NDB APIBest possible performance

    MySQL Cluster Data Nodes

    Applications with embedded NDB APILibrary

    Clients Application embeds the NDB API C++

    interface library

    NDB API make intelligent decision (wherepossible) about which data node to sendqueries to With a little planning in the schema design,

    achieve linear scalability

    Used by all of the other application nodes(MySQL, LDAP, ClusterJ,)

    Best possible performance but requires >development skill

    Favourite API for real-time networkapplications

    Foundation for all interfaces

    7 2DM

  • 7/31/2019 Mysql Cluster Scaling Web Databases Webinar Aug 26

    43/57

    NoSQL with memcached

    Memcached is a distributed memory

    based hash-key/value store with nopersistence to disk

    NoSQL, simple API, popular withdevelopers

    MySQL Cluster already provides scalable,in-memory performance with NoSQL(hashed) access as well as persistence

    Provide the Memcached API but map to NDBAPI calls

    Writes-in-place, so no need to invalidate

    cache Simplifies architecture as caching &

    database integrated into 1 tier

    Access data from existing relational tables

    7.2DM

    Memcached protocol

    NoSQL with Memcached 7 2DM

  • 7/31/2019 Mysql Cluster Scaling Web Databases Webinar Aug 26

    44/57

    NoSQL with MemcachedPre-GA version available from labs.mysql.com

    Flexible: Deployment options

    Multiple Clusters

    Simultaneous SQL Access

    Can still cache in Memcached server Flat key-value store or map to multiple

    tables/columns

    Simple:set maidenhead 0 0 3

    SL6

    STORED

    get maidenhead

    VALUE maidenhead 0 3

    SL6

    END

    7.2DM

  • 7/31/2019 Mysql Cluster Scaling Web Databases Webinar Aug 26

    45/57

    Supporting Rapidly Evolving Services

  • 7/31/2019 Mysql Cluster Scaling Web Databases Webinar Aug 26

    46/57

    On-Line Operations

    Scale the cluster (add data nodes)

    Repartition tables

    Recover failed nodes

    Upgrade / patch servers & OS

    Upgrade / patch MySQL Cluster

    Back-Up

    Evolve the schema on-line

  • 7/31/2019 Mysql Cluster Scaling Web Databases Webinar Aug 26

    47/57

    Online Add Node (1) add node group

    Node Group New Node Group

    JapanTanizakiJunichiro4

    GermanyGoetheJohann3

    USAHemingwayErnest2

    FranceCamusAlbert1

    countrylnamefnameauthid (PK)

    JapanTanizakiJunichiro4

    GermanyGoetheJohann3

    USAHemingwayErnest2

    FranceCamusAlbert1

    countrylnamefnameauthid (PK)

    Application

    http://www.mysql.com/why-mysql/white-papers/mysql_wp_cluster7_architecture.php

    Copyright 2011 Oracle Corporation 47

  • 7/31/2019 Mysql Cluster Scaling Web Databases Webinar Aug 26

    48/57

    No extra space needed on existing nodes!JapanTanizakiJunichiro4

    GermanyGoetheJohan3

    USAHemingwayErnest2

    FranceCamusAlbert1

    countrylnamefnameauthid (PK)

    JapanTanizakiJunichiro4

    GermanyGoetheJohann3

    USAHemingwayErnest2

    FranceCamusAlbert1

    countrylnamefnameauthid (PK)

    JapanTanizakiJunichiro4

    USAHemingwayErnest2

    countrylnamefnameauthid (PK)

    http://www.mysql.com/why-mysql/white-papers/mysql_wp_cluster7_architecture.php

    Node Group New Node Group

    Online Add Node (2) copy data

    JapanTanizakiJunichiro4

    GermanyGoetheJohann3

    USAHemingwayErnest2

    FranceCamusAlbert1

    countrylnamefnameauthid (PK)

    Copyright 2011 Oracle Corporation 48

    Application

    O

  • 7/31/2019 Mysql Cluster Scaling Web Databases Webinar Aug 26

    49/57

    JapanTanizakiJunichiro4

    GermanyGoetheJohan3

    USAHemingwayErnest2

    FranceCamusAlbert1

    countrylnamefnameauthid (PK)

    JapanTanizakiJunichiro4

    USAHemingwayErnest2

    countrylnamefnameauthid (PK)

    JapanTanizakiJunichiro4

    GermanyGoetheJohann3

    USAHemingwayErnest2

    FranceCamusAlbert1

    countrylnamefnameauthid (PK)

    http://www.mysql.com/why-mysql/white-papers/mysql_wp_cluster7_architecture.php

    Online Add Node (3) switch distribution

    Node Group New Node Group

    Application

    Copyright 2011 Oracle Corporation 49

    O li Add N d ( ) d l

  • 7/31/2019 Mysql Cluster Scaling Web Databases Webinar Aug 26

    50/57

    Node Group 1 Node Group 2

    JapanTanizakiJunichiro4

    USAHemingwayErnest2

    countrylnamefnameauthid (PK)

    GermanyGoetheJohann3

    FranceCamusAlbert1

    countrylnamefnameauthid (PK)

    Node Group 2

    JapanTanizakiJunichiro4

    GermanyGoetheJohan3

    USAHemingwayErnest2

    FranceCamusAlbert1

    countrylnamefnameauthid (PK)

    Dynamic scaling of arunning Cluster no

    interruption to service

    http://www.mysql.com/why-mysql/white-papers/mysql_wp_cluster7_architecture.php

    Online Add Node (4) - delete rows

    Application

    Copyright 2011 Oracle Corporation 50

    O Li S h Ch

  • 7/31/2019 Mysql Cluster Scaling Web Databases Webinar Aug 26

    51/57

    On-Line Schema Changes

    Fully online transactionresponse times unchanged

    Add and remove indexes,add new columns and tables

    No temporary table creation

    No recreation of data ordeletion required

    Faster and better performingtable maintenanceoperations

    Less memory and diskrequirements

    CREATE OFFLINE INDEX b ON t1(b);

    Query OK, 1356 rows affected (2.20 sec)

    DROP OFFLINE INDEX b ON t1;

    Query OK, 1356 rows affected (2.03 sec)

    CREATE ONLINE INDEX b ON t1(b);

    Query OK, 0 rows affected (0.58 sec)

    DROP ONLINE INDEX b ON t1;

    Query OK, 0 rows affected (0.46 sec)

    ALTER ONLINE TABLE t1 ADD COLUMN d INT;

    Query OK, 0 rows affected (0.36 sec)

  • 7/31/2019 Mysql Cluster Scaling Web Databases Webinar Aug 26

    52/57

    Case Studies

    Sh t C Pl tf

  • 7/31/2019 Mysql Cluster Scaling Web Databases Webinar Aug 26

    53/57

    53

    Since deploying MySQL Cluster as our eCommerce database, we have had

    continuous uptime with linear scalability enabling us to exceed our most stringent SLAs

    Sean Collier, CIO & COO, Shopatron Inc

    Shopatron: eCommerce Platform

    Applications Ecommerce back-end, user authentication,

    order data & fulfilment, payment data &inventory tracking. Supports severalthousand queries per second

    Key business benefits Scale quickly and at low cost to meet

    demand

    Self-healing architecture, reducing TCO

    Why MySQL? Low cost scalability

    High read and write throughput

    Extreme availability

    http://www.mysql.com/why-mysql/case-studies/mysql_cs_shopatron.php

  • 7/31/2019 Mysql Cluster Scaling Web Databases Webinar Aug 26

    54/57

    COMPANY OVERVIEW

    UK-based retail and wholesale ISP &Hosting Services

    2010 awards for best home broadbandand customer service

    Acquired by BT in 2007

    CHALLENGES / OPPORTUNITIES

    Enter market for wholesale services,demanding more stringent SLAs

    Re-architect AAA systems for dataintegrity & continuous availability tosupport billing sytems

    Consolidate data to for ease of reportingand operating efficiency

    Fast time to market

    SOLUTIONS

    MySQL Cluster

    MySQL Server with InnoDB

    CUSTOMER PERSPECTIVESince deploying our latest AAA platform, the MySQL

    environment has delivered continuous uptime,enabling us to exceed our most stringent SLAs

    -- Geoff Mitchell Network Engineer

    RESULTS

    Continuous system availability, exceedingwholesale SLAs

    2x faster time to market for new services

    Agility and scale by separating database

    from applications Improved management & infrastructure

    efficiency through database consolidation

    S

  • 7/31/2019 Mysql Cluster Scaling Web Databases Webinar Aug 26

    55/57

    Summary

    MySQL Cluster

    Web-Scale Performance with Carrier-Grade Availability SQL & NoSQL Access Methods

    No Compromise Scale-Out, Real Time Performance, 99.999% Uptime

    Proven Deployed across telecoms networks

    Powering mission-critical web and internet services

    G tti St t d

  • 7/31/2019 Mysql Cluster Scaling Web Databases Webinar Aug 26

    56/57

    Getting Started

    Learn More GA Release

    Evaluate MySQL Cluster 7.2 Quick Start Guides

    Architecture &New FeaturesGuidewww.mysql.com/cluster/

    Download Todayhttp://dev.mysql.com/do

    wnloads/cluster/

    http://labs.mysql.com(memcached)

    Linux, Solaris,

    Windowshttp://tinyurl.com/5wkl4dy

    http://dev.mysql.com/downloads/cluster/http://dev.mysql.com/downloads/cluster/http://labs.mysql.com/http://labs.mysql.com/http://dev.mysql.com/downloads/cluster/http://dev.mysql.com/downloads/cluster/
  • 7/31/2019 Mysql Cluster Scaling Web Databases Webinar Aug 26

    57/57