High Availability Using MySQL in the Cloud:

Similar documents
High Availability Solutions for the MariaDB and MySQL Database


Appendix A Core Concepts in SQL Server High Availability and Replication

Architectures Haute-Dispo Joffrey MICHAÏE Consultant MySQL

Enabling Database-as-a-Service (DBaaS) within Enterprises or Cloud Offerings

ScaleArc for SQL Server

MySQL High-Availability and Scale-Out architectures

Load balancing MySQL with HaProxy. Peter Boros Percona 4/23/13 Santa Clara, CA

Software Performance, Scalability, and Availability Specifications V 3.0

Cloud Based Application Architectures using Smart Computing

Affordable, Scalable, Reliable OLTP in a Cloud and Big Data World: IBM DB2 purescale

Database Scalability {Patterns} / Robert Treat

High Availability Solutions for MySQL. Lenz Grimmer DrupalCon 2008, Szeged, Hungary

Scalable Architecture on Amazon AWS Cloud

MySQL High Availability Solutions. Lenz Grimmer OpenSQL Camp St. Augustin Germany

High Availability with Postgres Plus Advanced Server. An EnterpriseDB White Paper

How To Scale Myroster With Flash Memory From Hgst On A Flash Flash Flash Memory On A Slave Server

SkySQL Data Suite. A New Open Source Approach to MySQL Distributed Systems. Serge Frezefond V

How to choose High Availability solutions for MySQL MySQL UC 2010 Yves Trudeau Read by Peter Zaitsev. Percona Inc MySQLPerformanceBlog.

Alfresco Enterprise on AWS: Reference Architecture

Top 10 Reasons why MySQL Experts Switch to SchoonerSQL - Solving the common problems users face with MySQL

Tushar Joshi Turtle Networks Ltd

On- Prem MongoDB- as- a- Service Powered by the CumuLogic DBaaS Platform

So What s the Big Deal?

Non-Stop for Apache HBase: Active-active region server clusters TECHNICAL BRIEF

Future-Proofing MySQL for the Worldwide Data Revolution

NoSQL in der Cloud Why? Andreas Hartmann

How to evaluate which MySQL High Availability solution best suits you

Cloud DBMS: An Overview. Shan-Hung Wu, NetDB CS, NTHU Spring, 2015

ScaleArc idb Solution for SQL Server Deployments

Introduction to Hadoop. New York Oracle User Group Vikas Sawhney

High-availability with Galera Cluster for MySQL

MySQL. Leveraging. Features for Availability & Scalability ABSTRACT: By Srinivasa Krishna Mamillapalli

Adding Indirection Enhances Functionality

Web Application Hosting in the AWS Cloud Best Practices

Implementing and Managing Windows Server 2008 Clustering

MySQL synchronous replication in practice with Galera

High Availability Storage

MySQL és Hadoop mint Big Data platform (SQL + NoSQL = MySQL Cluster?!)

Search Big Data with MySQL and Sphinx. Mindaugas Žukas

VMware Continuent. Benefits and Configurations TECHNICAL WHITE PAPER

Achieving Zero Downtime and Accelerating Performance for WordPress

Overview of Databases On MacOS. Karl Kuehn Automation Engineer RethinkDB

Implement Hadoop jobs to extract business value from large and varied data sets

The Future of PostgreSQL High Availability Robert Hodges - Continuent, Inc. Simon Riggs - 2ndQuadrant

MySQL CLUSTER. Scaling write operations, as well as reads, across commodity hardware. Low latency for a real-time user experience

Big Data Storage Architecture Design in Cloud Computing

Understanding Neo4j Scalability

Tips and Tricks for Using Oracle TimesTen In-Memory Database in the Application Tier

Benchmarking Couchbase Server for Interactive Applications. By Alexey Diomin and Kirill Grigorchuk

Solving Large-Scale Database Administration with Tungsten

In Memory Accelerator for MongoDB

Module 14: Scalability and High Availability

Welcome to Virtual Developer Day MySQL!

HIGH AVAILABILITY LINUX ARCHITECTURE FOR MISSION CRITICAL WORKLOADS

Cluster Computing. ! Fault tolerance. ! Stateless. ! Throughput. ! Stateful. ! Response time. Architectures. Stateless vs. Stateful.

Why DBMSs Matter More than Ever in the Big Data Era

High-Availability in the Cloud Architectural Best Practices

Scaling Database Performance in Azure

Not Relational Models For The Management of Large Amount of Astronomical Data. Bruno Martino (IASI/CNR), Memmo Federici (IAPS/INAF)

Synchronous multi-master clusters with MySQL: an introduction to Galera

Non-Stop Hadoop Paul Scott-Murphy VP Field Techincal Service, APJ. Cloudera World Japan November 2014

Evaluator s Guide. McKnight. Consulting Group. McKnight Consulting Group

INDIA September 2011 virtual techdays

WINDOWS AZURE DATA MANAGEMENT

GoGrid Implement.com Configuring a SQL Server 2012 AlwaysOn Cluster

Scalable Web Application

Web Application Hosting in the AWS Cloud Best Practices

Oracle Database 12c Plug In. Switch On. Get SMART.

Microsoft Private Cloud Fast Track

SanDisk ION Accelerator High Availability

Migration Scenario: Migrating Backend Processing Pipeline to the AWS Cloud

Realizing the Benefits of Hybrid Cloud. Anand MS Cloud Solutions Architect Microsoft Asia Pacific

DISTRIBUTED SYSTEMS [COMP9243] Lecture 9a: Cloud Computing WHAT IS CLOUD COMPUTING? 2

Oracle s Big Data solutions. Roger Wullschleger. <Insert Picture Here>

MySQL Replication. openark.org

Preparing for the Big Oops! Disaster Recovery Sites for MySQL. Robert Hodges, CEO, Continuent MySQL Conference 2011

Comparison of the Frontier Distributed Database Caching System with NoSQL Databases

Active/Active DB2 Clusters for HA and Scalability

Windows Geo-Clustering: SQL Server

The last 18 months. AutoScale. IaaS. BizTalk Services Hyper-V Disaster Recovery Support. Multi-Factor Auth. Hyper-V Recovery.

How To Use Hp Vertica Ondemand

SCALABILITY. Hodicska Gergely. Web Engineering Manager as Ustream. May 7, 2012

High Availability for Database Systems in Cloud Computing Environments. Ashraf Aboulnaga University of Waterloo

Using RDBMS, NoSQL or Hadoop?

Using MySQL for Big Data Advantage Integrate for Insight Sastry Vedantam

Design for Failure High Availability Architectures using AWS

NoSQL for SQL Professionals William McKnight

Scale and Availability Considerations for Cluster File Systems. David Noy, Symantec Corporation

F1: A Distributed SQL Database That Scales. Presentation by: Alex Degtiar (adegtiar@cmu.edu) /21/2013

NetScaler SQL Intelligent Load Balancing. Scaling the Data Tier with.

WINDOWS AZURE DATA MANAGEMENT AND BUSINESS ANALYTICS

Contents. SnapComms Data Protection Recommendations

HRG Assessment: Stratus everrun Enterprise

Transcription:

High Availability Using MySQL in the Cloud: Today, Tomorrow and Keys to Success Jason Stamper, Analyst, 451 Research Michael Coburn, Senior Architect, Percona June 10, 2015

Scaling MySQL: no longer a nice- to- have? Jason Stamper, 451 Research

About 451 Research Research & Data Advisory Services Events Founded in 2000 210+ employees, including over 100 analysts 1,000+ clients: Technology & Service providers, corporate advisory, finance, professional services, and IT decision makers 10,000+ senior IT professionals in our research community Over 52 million data points each quarter Headquartered in New York with offices in Boston, San Francisco, Washington, London

The Challenge Businesses and their users are facing what one might call a perfect storm decision- makers need insight faster than ever, and yet IT is struggling to avoid becoming a bofleneck.

The Facts Speak for Themselves Recent survey by trade magazine Computer Business Review: 98% (of 200 UK CIOs) admit significant gap between what business expects and what IT can deliver.

So What Does the Business Want? Speed Flexibility New ways of working Mobility Informa(on, not data Ease- of- use Scale Self- service Collabora(on

What Causes IT to Become a BoFleneck? Security Governance Budget Control Legacy Staff

What Have We Learned So Far? So far, the emergence of so- called hot data plaaorm and analybcs technologies have not solved the IT informabon bofleneck. Hadoop isn t going to save the world (and neither is NoSQL). The ability to analyze large data sets, in real- or near real- bme, is only set to grow in the era of the Internet of Things. IT is sbll cribcal, but it needs to enable the business to help itself. The quesbon is how to achieve the right blend of usability, value- for- money and scalability.

A Word or Two on Hadoop Adopbon Average total storage capacity (TBs), and total storage footprint by workload illustrate the low level of adoption today DW and DBMS Unstructured file 2012 Virtualized server/os Backup Archive Other 2013 Big data/hadoop 0 2000 4000 6000 8000

451 Research s View of the Total Data Approach

What is Driving the Change? Distributed architecture Agile JSON encourages new Schema- on- read development approaches New dev Schemaless REST approaches Flexible enable new lightweight apps Cloud Distributed Elasbc Architecture Virtual Flexible Scalable Developers New development approaches demand new architecture Web Interacbve Mobile Applica:ons Always- on Local Social New app requirements demand new development approaches Distributed architecture enables new applicabons New applicabons require distributed architecture

The Database Challenge The tradibonal relabonal database has been stretched beyond its normal capacity limits by the needs of high- volume, highly distributed or highly complex applicabons. There are workarounds such as DIY sharding but manual, homegrown efforts can result in database administrators being stretched beyond their available capacity in terms of managing complexity. Scalability Performance Relaxed consistency Increased willingness to look Agility for emerging alterna:ves Intricacy Necessity

Scalability, and Other Challenges As usage of MySQL and MariaDB has grown, so has the usage of applications that depend on them: Games; Social; Customer Facing; Web; Business apps like Ad Networks; This has highlighted a number of challenges Scalability of master-slave architecture Performance and predictability at scale Lower latency; greater throughput; richer apps User expectations rising Manageability of increasing database/app sprawl External factors driving greater complexity: Distributed computing architectures Proliferation of cloud and elasticity requirements Geo-distributed application requirements Viral success means growth can come very quickly

Conclusions The success of MySQL and MariaDB has led to complicabons in terms of scalability concerns Distributed compubng, proliferabon of cloud, and geo- distributed applicabons are adding to the complexity Manual sharding techniques transfer the strain from the database to the database administrator MySQL and MySQL administrators has/have never been under so much strain Database scalability sonware enables users to move beyond the limitabons and complexity of DIY sharding; precisely how data is managed with a distributed database in the cloud or on premise is key.

HA Using MySQL in the Cloud Michael Coburn, Senior Architect Michael.Coburn@percona.com June 10 th, 2015

Agenda 1. What is High Availability 2. MySQL and Asychronous Replication (Master/Slave) Stage 1: All in One Instance Stage 2: Separation and Redundancy + Distribution of Work Stage 3: Multiple Geographic Zones 3. MySQL with Galera Replication - Percona XtraDB Cluster (PXC) 4. High Availability Failover Technologies Load Balancers VIP Failover MySQL High Availability (MHA) Percona Replication Manager (PRM) MySQL Fabric 5. Keys to Success 1 www.percona.com 6

High Availability Is the Application available to my end users? What does "available" mean to me? to the business? to my end users? CAP Theorem C - Consistency Your data is consistent across all nodes A - Availability Your system is available to handle requests in case of failure of one or several nodes P - Partitioning tolerance Given inter-node connection failure, each node is still available to handle requests Distributed systems requires you to pick two 1 www.percona.com 7

Stage 1: All in One Instance Most applications start out with little budget and little traffic Most cost effective model is to source a single instance Application and database run on same instance Drawbacks: single point of failure (classic case) 1 www.percona.com 8

Stage 2: Separation and Redundancy + Distribution of Work Application and database are competing with each other for limited resources CPU, Disk, RAM Additional database instance provides redundancy Implementation of Read- Write splitting in the Application 1 www.percona.com 9

Stage 3: Multiple Geographic Zones Single active zone which receives all traffic Second zone is passive Typically used for disaster recovery, or is in read-only state 2 www.percona.com 0

MySQL with Galera Replication - Percona XtraDB Cluster (PXC) Synchronous replication Multi-master replication support Parallel replication Automatic node provisioning Data consistency 2 www.percona.com 1

MySQL Virtually Synchronous Replication 2 www.percona.com 2

Load Balancers Designed to evaluate health of Database instances and distribute queries Publish small number of IP addresses to Application Can scale workload without changing Application by adding more nodes behind Load Balancer Popular Options: HAProxy F5 BigIP 2 www.percona.com 3

VIP Failover Concept of moving a Virtual IP (VIP) across servers Generally a single Writer VIP, and multiple Reader VIPs Normally implies you don't have a Load Balancer Application connects directly to Database instances As a Database instance switches roles (Master or Slave), the proper VIP is attached accordingly Depends on Network switch updating ARP caches in a timely manner Popular Options: MHA Percona Replication Manager Corosync + Pacemaker with IPAddr module MMM (now deprecated) 2 www.percona.com 4

MySQL Master HA (MHA) Designed to automate promotion of slave to Active Master minimises the complexity of re-pointing many Slaves to new Active Master MHA provides facility for scheduled online master switch Can be run in Monitoring (Automatic) or Manual modes Supports GTID-based replication 2 www.percona.com 5

Percona Replication Manager (PRM) Based on the Corosync and Pacemaker projects with a MySQL module PRM behaves as a cluster and nodes vote for role distribution and elect members Agent makes changes to local MySQL instance only Can synchronise slave binary log positions then provide for new Master promotion and slave re-pointing Supports GTID-based replication 2 www.percona.com 6

MySQL Fabric Works with asynchronous replication (Master Slave) Servers are organised into highavailability groups Fabric can monitor status of all servers in a group If current master fails, a new master is elected and promoted Requires a Fabric-aware connector, such as Connector/J or Connector/ Python Other languages are under development and thus varying levels of support for Fabric Latest GA release: MySQL Utilities 1.5.4 (2015-03-04) 2 www.percona.com 7

Keys to Successful Deployment 1. Awareness of CAP Theorem and how it applies to your Application availability 2. Application awareness of Read-Write Splitting 3. Load Balancers and your Application 4. Usage of Multiple Geographic Zones 5. Automated vs Manual operations: a. Addition and removal of Database nodes from Application b. Promotion of slave to role of new master + re-pointing of remaining slaves to new master c. Failover across multiple geographic zones 2 www.percona.com 8