MariaDB Europe Roadshow 2015 - MariaDB MaxScale

of 23 /23
© 2015, MariaDB Corp. MariaDB Roadshow 2015 MariaDB MaxScale

Embed Size (px)

Transcript of MariaDB Europe Roadshow 2015 - MariaDB MaxScale

  • 2015, MariaDB Corp. 2015, MariaDB Corp.

    MariaDB Roadshow 2015

    MariaDB MaxScale

  • 2015, MariaDB Corp.

    Content

    Why and What of MaxScale ? MariaDB MaxScale Benefits MariaDB MaxScale Packaging

  • 2015, MariaDB Corp.

    Needs of Web Scale organization Ability to support growing user base

    Scalability Deliver quality customer experience

    High Availability Continuity Performance Data Security

    Control cost Development Friendliness Improve DBA Productivity

    Competitive Advantage Innovation Rollout New Service Creation

  • 2015, MariaDB Corp.

    Challenges of Scalability with MariaDB & MySQL

    Application Business Logic

    Application Database Connection Management

    MySQL/MariaDB connector

    Complex application Reduced Development Agility

    and DBA Productivity Longer time to market

    For security requirements additional database firewall needed

    Database Firewall Database Firewall

    1:100 101:200 201:300 301:...

    Database Firewall

    Load Balance queries Send queries to node per load balancing Detect node failure and failover Detect node addition or removal

    Determine which shard to send the query If sharding schema changes, or a new shard

    added, update the application code

    MariaDB/MySQL Replication

    MariaDB Galera Cluster

    Data Sharding

  • 2015, MariaDB Corp.

    MariaDB MaxScale

    A flexible open source platform that sits between applications and databases for MariaDB and MySQL Databases scale without any impact on applications Developer and DBA friendly solution for scalability, high

    availability, continuity and database security Flexible architecture allows creation of new services not

    possible just with database platforms

    Mon

    itorFilter &

    Logging Routing

    MaxScaleCore

    Routing

  • 2015, MariaDB Corp.

    MariaDB MaxScale:Web Scale Database Proxy

    Client SimpleRequests

    MaxScale

  • 2015, MariaDB Corp.

    MariaDB MaxScale 1.0 Feature List

    MySQL and MariaDB client and server protocols MariaDB Galera and MySQL replication cluster monitoring Connection based load balancing Statement based load balancing Query performance logging Top N Query logging Query transformation based on regular expressions and time Query duplication to another database, storage engine or application Extensible plugin architecture Extension possibilities

    Optimized routing to Galera multi-master nodes to avoid deadlock Replication across geographically distributed HA clusters New client protocols such as PL-SQL, T-SQL, PostgresSQL, JSON, HTTP New server protocols such as Hadoop, MongoDB, Cassandra, CouchBase New clustering technologies such as MySQL NDB Cluster, Hadoop Cluster, MongoDB

    Cluster Transform, block or log client requests and results conditionally

  • 2015, MariaDB Corp.

    Scalability with MaxScale for MariaDB/MySQL replication

    Application Business Logic

    Application Database Connection Management

    MySQL/MariaDB connector

    MaxScale

    Connection and Statement based load balancing

    Simplifies applications Improved Developer productivity

    Cluster configuration transparent to applications Improved DBA productivity

    Monitors backend database high availability Improved Business Continuity

    Load Balance queries Route queries to node per load balancing algorithm Detect node failure and failover Detect node addition or removal

    Send queries over a single server connection to MaxScale

    MariaDB Galera Cluster MariaDB/MySQL Replication

  • 2015, MariaDB Corp.

    Query Transformation with MaxScale for Legacy Application Compatibility

    Modify queries from legacy applications on the fly - for example a MySQL 5.1 app:

    1. MaxScale accepts a query from a MySQL 5.1 compatible client,

    2. If the query matches the regular expression /CREATE TABLE/ then MaxScale substitutes ENGINE for TYPE in that statement, else it passes the statement through the filter unchanged.

    3. Forwards the transformed statement to MariaDB or MySQL 5.6.

    4. Receives the result from the back-end.5. Forwards the result to the client.

    MaxScale

    1 5

    3 4

    /CREATE TABLE/

    s/TYPE/ENGINE/2

    Application and Database can be upgraded asynchronously Improves business continuity Improve organizational productivity

    Faster rollout of new database versions

    MySQL 5.1

    MySQL 5.6 or MariaDB 10

  • 2015, MariaDB Corp.

    Query Logging with MaxScale For Performance Diagnostics

    1. MaxScale accepts a query from a client application

    2. Forwards the query to the back-end Logs it into the All Queries Logs it into the Long Running Queries

    log files3. Receives the result from the back-end,4. Forwards the result to the client

    Logs the result into the All Queries log If it is one of the N longest-running

    queries, logs the result into the Long Running Queries log fileMaxScale

    .log

    Long Queries(Top N queries)

    .log

    All Queries

    1 4

    2

    4

    2

    42 3

    Centralized cluster wide query performance log at MaxScale No need to manually correlate query

    logs across cluster nodes Simplified performance tuning Improved DBA productivity

    Filtering can be also used to prevent SQL injection attacks or unauthorized queries Improved Security

  • 2015, MariaDB Corp.

    Query Duplication with MaxScale1. MaxScale accepts a query from a client

    application2. Forwards the query to the back-end

    Sends query to Database A Send query to Database B via Tee-filter

    3. Receives the result from Database A4. Receives the result from Database B5. Forwards the result to the client

    MaxScale

    1 5

    4

    22 3

    Cross-DB solutions: Duplicate queries to MariaDB Replication Cluster and Galera Cluster

    ETL: Use Tee-filter to insert into transactional database and insert into analytic database via queuing to ETL process

    Faster and smooth rollout of new services Using different DB technology and

    different workloads

    Database A: MariaDB InnoDB Replication Cluster

    Database B: MariaDB Galera Cluster or MariaDB MyISAM or CONNECT Engine for Cassandra or Spider Engine or InfiniDB Engine or RabbitMQ for another application to process

  • 2015, MariaDB Corp.

    MaxScale Flexible Plugin Architecture

    Replicate Binlog from the master to slave through MaxScale Simplified relay server Reduced network load and

    disaster recoveryIn production at Booking.comBinlog server Booking.com blog

    Shard Cluster 1

    Shard Cluster 2

    Shard Cluster 3

    Shard Cluster 4

    Shard Cluster 5

    Route to sharded database without application level knowledge of sharding method Sharding Router based on database

    schema In development for Lead Desk

    Another future Plugin for Sharding Router based on table key In early analysis for a prospect

    MaxScale

    Sharding Router

  • 2015, MariaDB Corp.

    MariaDB MaxScale Advantages

    Developer and DBA friendly solution for Scalability High availability Cluster wide performance tuning

    Continuity during database upgrades Data and SQL security New Services with extendable plugins

  • 2015, MariaDB Corp.

    MariaDB MaxScale Customer Benefits

    DBA Handle large amount of data with scalable and highly available MariaDB clusters Tune database performance with query logging Continuous availability to applications during cluster administration and database

    upgrades Developer

    Simplified development as cluster complexity hidden from applications Focus on business logic instead of cluster monitoring and tracking

    Data Architect Tee-filter and Flexible Plugin architecture opens up cross-workload and cross-DB

    solutions Simplified and faster rollout of database versions for new services

    Applications continue to work during database upgrades CIO

    Scale the infrastructure with growth of business Scale without sacrificing developer and DBA productivity Improved customer satisfaction with application continuity and performance Expand business horizon with newer solutions

  • 2015, MariaDB Corp.

    MariaDB MaxScale Packaging

    MariaDB Enterprise: Enterprise Software Patch and Notification Services 24X7 support for Enterprise Software Customer Portal, Exclusive Content

    MariaDB Enterprise Add-on: MariaDB MaxScale Base MaxScale 1.0 GA Future patch and enhancement to MaxScale Base 24X7 support for MaxScale Base

  • 2015, MariaDB Corp.* *

    MariaDB MaxScale RoadmapQ1 2015: MariaDB MaxScale 1.1 Beyond Q2 2015

    Performance Caching layer for connectors

    Scalability Binlog relay: improved HA for master/slave replication

    Table-Key based simple sharding

    Schema based sharding Optimized Galera routing for deadlock avoidance

    MySQL Cluster (NDB) connection load balancing

    Advanced Sharding support

    Geographic replication for disaster resilience

  • 2015, MariaDB Corp.* *

    MariaDB MaxScale RoadmapQ1 2015: MariaDB MaxScale 1.1 Beyond Q2 2015

    Ease of Use Integration with MDBE notification service

    Configuration Playbooks

    Nagios Plugin for monitoring

    Hint based statement load balancing

    Logging integrated with RabbitMQ

    Security Firewall filter: Block SQL injection Client Side SSL

    LDAP, Kerberos authentication

    Firewalls designed for HIPPA, PCI use cases

    Interoperability JSON/BSON Protocol support

  • 2015, MariaDB Corp.

    MariaDB MaxScale

    A flexible platform that sits between applications and databases for MariaDB and MySQL Databases scale without any impact on applications Developer and DBA friendly solution for scalability, high

    availability, continuity and database security Flexible architecture allows creation of new services not

    possible just with database platforms

  • 2015, MariaDB Corp.

    Resources

    Product Page: https://mariadb.com/products/mariadb-maxscale Product FAQ: https://mariadb.com/products/product-faqs Data Sheet: MariaDB MaxScale Datasheet Blogs: https://mariadb.com/blog-tags/MaxScale Discussion via the Google Group: [email protected] MariaDB MaxScale Webinar - Scalability at its best

  • 2015, MariaDB Corp.

    Appendix

  • 2015, MariaDB Corp.

    MariaDB MaxScale 1.0 Supported OS and Databases

    Supported OS RHEL 6 RHEL 5 RHEL 7 CentOS 6 CentOS 5 CentOS 7 Ubuntu 12.04 LTS Ubuntu 13.10 Ubuntu 14.04 Debian 6 Debian 7 OpenSUSE 13.1 Fedora 19 64 bits Fedora 20 64 bits SLES 11 SELS 12

    Supported backend database MariaDB Server and Enterprise all versions MariaDB Enterprise Cluster all versions MySQL 5.1 and higher

  • 2015, MariaDB Corp.

    Feature Benefits: MaxScale BaseDBA Developer Architect Organization CIO

    Overall Benefits

    Database Scalability, HA Simplicity Flexibility Organizational Scalability, Productivity, Customer Satisfaction, New revenue stream opportunities

    Feature Component Feature Benefits

    MySQL and MariaDB Client and Server Protocol

    Core Simplified Application Development that can focus on business logic

    Increased developer productivity

    MariaDB Galera and MySQL replication cluster monitoring

    Monitor Plugin Scalability and Reliability to handle large amount of data

    Free from cluster configuration complexity

    Ability to support growth of business Increased developer productivity

    Monitor Plugin Administer Clusters(node addition, removal, replication setup) without impacting application

    Continuous availability. Zero-downtime and hidden failover at application level,

    Increase DBA productivity End user satisfaction with always available web applications

    Connection and Statement based load balancing

    Router Plugin Optimal and homogeneous cluster nodes utilization giving high performance and high throughput.

    Improved application performance with high performance database queries

    End user satisfaction with high performance web applications Optimized Capex resources

    Query Performance Logging Top N Query Logging

    Filter Plugin Database performance tuning

    End user satisfaction

    Query Statement Modification based on regular expressions

    Filter Plugin Client Applications do not have to upgrade at the same time of database

    Applications continue to work when upgrading from older DB version to newer version

    End user satisfaction with continuous availability Improved Developer productivity

    Query Duplication to another storage engine or application

    Tee-Filter Plugin Cross Workload and Cross Technology Applications

    New customer offerings with cross workload solutions

    Flexible Plugin Architecture Core Architect New Applications not possible before

    New Revenue Stream

  • 2015, MariaDB Corp.

    Feature Benefits: Add-on Plugins (Future)DBA Developer Architect Organization CIO

    Feature Component Feature Benefits

    Query Duplication to another database

    Monitoring Plugin for another database type

    Database migration from another db to MariaDB

    Continuous availability during database migration

    Replication Relay Big Log Router Horizontally scale slaves without master overload

    High Performance read scalability

    Scalability and Performance to meet the end user expectation

    Routing Hints Hint Filter Performance tuning via hints dynamically control statement-based routers

    Improved Application performance and stability

    Canonical Query logging Canonical Query Filter Application Validation Improved Developer productivity and application quality

    Database Firewall Firewall Filter Prevent SQL Injection attacks

    Data access security without application awareness

    Prevent sensitive data from leaking to the wrong parties

    Data access security

    Schema based sharding Table Key based sharding

    Sharding Router Scalability and Performance with Sharding

    Application do not need to be aware of sharding

    Scalability and Performance