Tushar Joshi Turtle Networks Ltd

Similar documents
High Availability Solutions for the MariaDB and MySQL Database

MySQL Enterprise Backup

Scalability of web applications. CSCI 470: Web Science Keith Vertanen

Architectures Haute-Dispo Joffrey MICHAÏE Consultant MySQL

A SURVEY OF POPULAR CLUSTERING TECHNOLOGIES

MySQL High-Availability and Scale-Out architectures

Tier Architectures. Kathleen Durant CS 3200

Database Administration with MySQL


High Availability and Scalability for Online Applications with MySQL

MySQL Cluster Deployment Best Practices

Availability Digest. MySQL Clusters Go Active/Active. December 2006

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

MySQL Storage Engines

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

SCALABILITY AND AVAILABILITY

Monitoreo de Bases de Datos

Direct NFS - Design considerations for next-gen NAS appliances optimized for database workloads Akshay Shah Gurmeet Goindi Oracle

Best Practices for Using MySQL in the Cloud

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

An overview of Drupal infrastructure and plans for future growth. prepared by Kieran Lal and Gerhard Killesreiter for the Drupal Association

MySQL backups: strategy, tools, recovery scenarios. Akshay Suryawanshi Roman Vynar

Agenda. Enterprise Application Performance Factors. Current form of Enterprise Applications. Factors to Application Performance.

DBA Tutorial Kai Voigt Senior MySQL Instructor Sun Microsystems Santa Clara, April 12, 2010

Inge Os Sales Consulting Manager Oracle Norway

Cloud Based Application Architectures using Smart Computing

SCALABLE DATA SERVICES

<Insert Picture Here> Managing Storage in Private Clouds with Oracle Cloud File System OOW 2011 presentation

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

Eloquence Training What s new in Eloquence B.08.00

Using MySQL for Big Data Advantage Integrate for Insight Sastry Vedantam

Solving Large-Scale Database Administration with Tungsten

Upgrade to Webtrends Analytics 8.7: Best Practices

Why Not Oracle Standard Edition? A Dbvisit White Paper By Anton Els

How To Build A Fault Tolerant Mythrodmausic Installation

Online Transaction Processing in SQL Server 2008

MySQL performance in a cloud. Mark Callaghan

XtraBackup: Hot Backups and More

MySQL Technical Overview

<Insert Picture Here> Oracle Cloud Storage. Morana Kobal Butković Principal Sales Consultant Oracle Hrvatska

Contents. SnapComms Data Protection Recommendations

Module 14: Scalability and High Availability

Overview of I/O Performance and RAID in an RDBMS Environment. By: Edward Whalen Performance Tuning Corporation

Ultimate Guide to Oracle Storage

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

Key Benefits. R1Soft CDP Server Software. R1Soft Continuous Data Protection for Linux and Windows Systems. Bare-Metal Disaster Recovery

CERN local High Availability solutions and experiences. Thorsten Kleinwort CERN IT/FIO WLCG Tier 2 workshop CERN

TOP FIVE REASONS WHY CUSTOMERS USE EMC AND VMWARE TO VIRTUALIZE ORACLE ENVIRONMENTS

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

Architecting ColdFusion For Scalability And High Availability. Ryan Stewart Platform Evangelist

MySQL Reference Architectures for Massively Scalable Web Infrastructure

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

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

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

MySQL: Cloud vs Bare Metal, Performance and Reliability

Choosing Storage Systems

DeltaV Virtualization High Availability and Disaster Recovery

Network Attached Storage. Jinfeng Yang Oct/19/2015

An overview of the Drupal infrastructure and plans for future growth

High Availability Databases based on Oracle 10g RAC on Linux

Designing, Scoping, and Configuring Scalable Drupal Infrastructure. Presented by David Strauss

OLTP Meets Bigdata, Challenges, Options, and Future Saibabu Devabhaktuni

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

HDMQ :Towards In-Order and Exactly-Once Delivery using Hierarchical Distributed Message Queues. Dharmit Patel Faraj Khasib Shiva Srivastava

Unitt Zero Data Loss Service (ZDLS) The ultimate weapon against data loss

High Availability Solutions with MySQL

Deployment Topologies

Techniques for implementing & running robust and reliable DB-centric Grid Applications

SQL Databases Course. by Applied Technology Research Center. This course provides training for MySQL, Oracle, SQL Server and PostgreSQL databases.

Active/Active DB2 Clusters for HA and Scalability

High Availability and Backup Strategies for the Lustre MDS Server

Database Scalability and Oracle 12c

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

Configure AlwaysOn Failover Cluster Instances (SQL Server) using InfoSphere Data Replication Change Data Capture (CDC) on Windows Server 2012

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

MySQL Backup and Recovery: Tools and Techniques. Presented by: René Senior Operational DBA

<Insert Picture Here> WebLogic High Availability Infrastructure WebLogic Server 11gR1 Labs

Intellicus Enterprise Reporting and BI Platform

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

XtraBackup. Vadim Tkachenko CTO, Co-Founder, Percona Inc Percona Live SF Feb 2011

MySQL Cluster New Features. Johan Andersson MySQL Cluster Consulting johan.andersson@sun.com

short introduction to linux high availability description of problem and solution possibilities linux tools

OPTIMIZING EXCHANGE SERVER IN A TIERED STORAGE ENVIRONMENT WHITE PAPER NOVEMBER 2006

Common Server Setups For Your Web Application - Part II

Linux Server Support by Applied Technology Research Center. Proxy Server Configuration

ScaleArc idb Solution for SQL Server Deployments

ORACLE INSTANCE ARCHITECTURE

Preview of Oracle Database 12c In-Memory Option. Copyright 2013, Oracle and/or its affiliates. All rights reserved.

Oracle Cluster File System on Linux Version 2. Kurt Hackel Señor Software Developer Oracle Corporation

Open-Xchange Server High availability Daniel Halbe, Holger Achtziger

Exploring Amazon EC2 for Scale-out Applications

Wikimedia architecture. Mark Bergsma Wikimedia Foundation Inc.

VERITAS Storage Foundation 4.3 for Windows

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

Transcription:

MySQL Database for High Availability Web Applications Tushar Joshi Turtle Networks Ltd www.turtle.net

Overview What is High Availability? Web/Network Architecture Applications MySQL Replication MySQL Clustering

What is High Availability? High availability is a system including physical implementation that ensures an absolute degree of operational continuity during a given measurement period.

High Availability Decide your availability (99.9 or 99.999) No single point of failure Uptime and availability are different Network and software work hand in hand BGP, Bonding, Load Balancing Fast changeover

Load Balancing DNS Round Robin Simple Failover when main server dies. Multiple live real servers, using scheduling. Round robin, weighted least connection Failover for load balancers! (heartbeat) Persistence and Session IDs with cookies or source IP Local Director on Linux (HA Suite)

Apache / Tomcat Serves dynamic and static content. Static files on disk needs to be replicated. Session needs to be distributed or stored in database. (Broadcasted?) HTTP Status fed back to local director Application data cache is useful for certain data. Evaluate work load split for AS and DB

Database Single point of failure is single database NFS or distributed FS (SAN). Oracle RAC Multiple databases but with load balancing in application. Transaction support? Inconsistencies. Application needs to deal with failure. Recovery difficult.

MySQL Identify easiest route to faster access Index data to speed up transactions. Socket file or TCP/IP connection. Multiple MySQL DB with different data Data partitioning, either tables, groups Problems with reporting functions. Joins. Use both, partition and replicate. Tablespaces (Oracle term only in InnoDB)

MySQL : Storage Engines Flexible ways to store data on disk Transparent to application MyISAM (very fast) InnoDB (transaction safe) Memory CSV Archive (fastest) Federated (more load balancing than HA)

MySQL : Master / Slave Multiple databases with 'same' data. Application data cache invalidated. Replication time can change. Similar hardware is best Enable binary logging (BinLog) Slave connects as a client with replication privilege.

MySQL : Master / Slave Asynchronous replication Read only from slave Read/Write for master Reporting functions on slave. Slave connects and retrieves new data from log file on master. Slave stays connected and master sends updates. Row based and Statement based in 5.1

MySQL : Master / Slave On failure slave switches to master. (SW) Master on recovery doesn't get updates from slave. Data inconsistency Manual intervention required, downtime, not HA. Useful as live backup, and can shutdown slave to make a backup. Slave automatically recovers on startup.

MySQL : Master / Master Failure of master causes problems in M/S setup Need to swap the master automatically. Updates of 'slave' to be seen on master Changes on either propagated to other Enable BinLog on slave. Setup master in original setup to update from slave as well. Each DB must have a different ID.

Continued... Easy to setup and maintain. No manual intervention for failover and recovery. Does work with all table types. Multiple slaves allowed (MMSSSSS). Used in combination with a control node. Updates done to active master (which can change). Works remotely over a slow connection

Limitations Updates are still asyncronous Delay in update being viewable on other server. Writes to only one database, however on failure this can swap over. Only two masters (MM), (MMM) not possible. Chance of data loss.

Tools Replication Manager (Enterprise) mysql mysqldump (single transaction) (Level 0) InnoDB Hot backup (E390) SET MASTER / START STOP SLAVE

MySQL Clustering MySQL 5.1 Master/ Master Syncronous updates 5 nines reliability Fast automatic failover (sub second) No single point of failure Read and Write from any node. Main memory only (no IO bottle necks). Share nothing Row level locking

Cluster Overview

Node Diagram

Cluster Setup Storage Nodes Management Node (LDIR) SQL Nodes (LDIR) Use a load balanced IP on SQL Nodes. Node!= Server (SizeofDatabase NumberOfReplicas 1.1 ) / NumberOfDataNodes Circular replication is possible

Cluster Limitations No disk storage engine, memory required to size of database. As of latest version only indexed data in memory. Must use 100MB or more network. (SCI) Reducing latency speeds up transactions considerably. Overhead of query cache slows things down.

Limitations No indexes on text or blob fields Max 48 data nodes (Max 63 nodes) Dynamic adding/removing data nodes not possible Commits are replicated but not guaranteed to be flushed to disk. Does not handle large transactions well.

Summary Choose the strategy best for yourself Databases need to be tuned Can use a mix between clustered, partitioned and MS replicated Benchmarks available, whose lies do you believe? MySQL Cluster and replication improving all the time. Next version is 5.2