Solving Large-Scale Database Administration with Tungsten



Similar documents
How, What, and Where of Data Warehouses for MySQL

Future-Proofing MySQL for the Worldwide Data Revolution

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

Replicating to everything

Preventing con!icts in Multi-master replication with Tungsten

From Dolphins to Elephants: Real-Time MySQL to Hadoop Replication with Tungsten

Implementing the Future of PostgreSQL Clustering with Tungsten

Parallel Replication for MySQL in 5 Minutes or Less

Portable Scale-Out Benchmarks for MySQL. MySQL User Conference 2008 Robert Hodges CTO Continuent, Inc.

VMware Continuent. Benefits and Configurations TECHNICAL WHITE PAPER

Tushar Joshi Turtle Networks Ltd

High Availability Solutions for the MariaDB and MySQL Database

Tungsten Replicator, more open than ever!

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

Linas Virbalas Continuent, Inc.

Comparing MySQL and Postgres 9.0 Replication

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

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

Architectures Haute-Dispo Joffrey MICHAÏE Consultant MySQL

Zero Downtime Deployments with Database Migrations. Bob Feldbauer

Deploying Database clusters in the Cloud

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

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

Cloud Based Application Architectures using Smart Computing

ScaleArc for SQL Server

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

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

MySQL Administration and Management Essentials

Active/Active DB2 Clusters for HA and Scalability

Module 14: Scalability and High Availability

Scalable Architecture on Amazon AWS Cloud

SQL Server Training Course Content

Contents. SnapComms Data Protection Recommendations

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

YouTube Vitess. Cloud-Native MySQL. Oracle OpenWorld Conference October 26, Anthony Yeh, Software Engineer, YouTube.

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

Designing Database Solutions for Microsoft SQL Server 2012 MOC 20465

Protecting Microsoft SQL Server

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

High Availability And Disaster Recovery

MySQL Enterprise Monitor

IP Storage On-The-Road Seminar Series

High Availability and Disaster Recovery for Exchange Servers Through a Mailbox Replication Approach

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

SQL Server 2012/2014 AlwaysOn Availability Group

Using MySQL for Big Data Advantage Integrate for Insight Sastry Vedantam

High Availability Using MySQL in the Cloud:

Ingres Replicated High Availability Cluster

Amazon Redshift & Amazon DynamoDB Michael Hanisch, Amazon Web Services Erez Hadas-Sonnenschein, clipkit GmbH Witali Stohler, clipkit GmbH

MySQL synchronous replication in practice with Galera


From Spark to Ignition:

Overview of Databases On MacOS. Karl Kuehn Automation Engineer RethinkDB

be architected pool of servers reliability and

Integrating Netezza into your existing IT landscape

Real-time Data Replication

Database Scalability {Patterns} / Robert Treat

MySQL High-Availability and Scale-Out architectures

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

Migrating Your Databases to Amazon Aurora. June 2016

RPO represents the data differential between the source cluster and the replicas.

Microsoft SQL Server Installation Guide

Appendix A Core Concepts in SQL Server High Availability and Replication

MarkLogic Server. Database Replication Guide. MarkLogic 8 February, Copyright 2015 MarkLogic Corporation. All rights reserved.

StorageX 7.5 Case Study

Setting Up B2B Data Exchange for High Availability in an Active/Active Configuration

Disaster Recovery for Oracle Database

Data Replication in Privileged Credential Vaults

SQL Server for Database Administrators Course Syllabus

Oracle Data Integrator for Big Data. Alex Kotopoulis Senior Principal Product Manager

So What s the Big Deal?

IBM i25 Trends & Directions

Computer Visions Course Outline

TIBCO StreamBase High Availability Deploy Mission-Critical TIBCO StreamBase Applications in a Fault Tolerant Configuration

XpoLog Competitive Comparison Sheet

Using Tungsten Replicator to solve replication problems

MySQL and Hadoop Big Data Integration

SQL Server AlwaysOn. Michal Tinthofer 11. Praha What to avoid and how to optimize, deploy and operate.

WSO2 Business Process Server Clustering Guide for 3.2.0

Katta & Hadoop. Katta - Distributed Lucene Index in Production. Stefan Groschupf Scale Unlimited, 101tec. sg{at}101tec.com

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

<Insert Picture Here> Big Data

PROTECTING MICROSOFT SQL SERVER TM

Comparing Microsoft SQL Server 2005 Replication and DataXtend Remote Edition for Mobile and Distributed Applications

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

How graph databases started the multi-model revolution

Microsoft SQL Server Installation Guide

GigaSpaces Real-Time Analytics for Big Data

Microsoft SQL Database Administrator Certification

MySQL Backup IEDR

ScaleArc idb Solution for SQL Server Deployments

<Insert Picture Here> Oracle In-Memory Database Cache Overview

Data Protection with IBM TotalStorage NAS and NSI Double- Take Data Replication Software

Transcription:

Solving Large-Scale Database Administration with Tungsten Neil Armitage, Sr. Software Engineer Robert Hodges, CEO.

Introducing Continuent The leading provider of clustering and replication for open source DBMS Our Product: Continuent Tungsten Clustering - Commercial-grade HA, performance scaling and data management for MySQL Replication - Flexible, high-performance data movement 2

Quick Continuent Facts Largest Tungsten clustering installation processes about 500M transactions each day Tungsten Replicator was application of the year at the 2011 MySQL User Conference Continuent is well known in the MySQL community for its clustering and replication Over 90 customers currently deployed 3

Select Continuent Customers 4

Why Tungsten? 5

MySQL is a Great OLTP Database But how do I... Handle DBMS failures? Perform maintenance and upgrades without taking applications o!ine? Load balance SQL across replicas? Create a disaster recovery site? Set up multi-master replication? Integrate with another DBMS? 6

Tungsten Master/Slave Clustering 7

Introducing Tungsten Clustering Tungsten clusters combine o"- the-shelf open source DBMS servers into data services with: 24x7 data access Scaling of load on replicas Simple management commands Connector GonzoPortal.com apache /php Connector...without app changes or data migration Amazon US West 8

Doesn t Replication Do This Already? Application Libmysqlclient.a Application Libmysqlclient.a Db2 Db1 Db3 Replicator Slave Replicator Master Replicator Slave 9

Replication Limitations Replication alone cannot enable constant access to data... What happens if the master fails? What happens if a slave is lagging too far behind to be usable? How do I maintain the DBMS without stopping apps? 10

From Replicating to Clustering Application Application Tungsten Connector Tungsten Connector Monitoring and Control Db2 Db1 Db3 Monitoring and Control Manager Manager Manager Replicator Slave Replicator Master Data Service: sjc Replicator Slave 11

Basic Cluster Operations Switch -- Promote a slave node to master Shun -- Kick node out of cluster Welcome -- Return node to cluster Backup -- Run a backup Restore -- [Re-]provision a node Recover -- Return a broken node to slave Heartbeat -- Check cluster liveness 12

Automatic Failover Application Tungsten Connector 13

Automatic Failover Application Tungsten Connector 2. Halt master connections 1. Detect nonresponsive master 14

Automatic Failover Application Tungsten Connector 3. Select most advanced slave and wait for pending transactions to apply 15

Automatic Failover Application Tungsten Connector 4. Promote to master, reconfigure slave(s), and re-enable connections 16

Automatic Failover Application Tungsten Connector 5. Recover failed master 17

Rolling SQL Schema Upgrade Slave Upgrade Slave Upgrade Switch Final Upgrade Shun slave 1, run upgrade, and return to cluster. Discard and recover on failure Repeat for additional slave(s) Switch master to promote an upgraded slave Upgrade old master. Cluster schema is now fully upgraded 18

Backup, Recovery, and Restore Backups /cluster > datasource DB1 backup Recover /cluster > datasource DB2 recover Restore /cluster > datasource DB2 restore Out-of-box support for mysqldump/ XtraBackup; simple integration for others 19

Understanding Tungsten Connectivity 20

Tungsten Connector Basics Any MySQL/PostgreSQL client can connect Initiates connections using JDBC App Native protocol COM_QUERY COM_INIT_DB COM_DROP_DB Connector 21

Tungsten Connector Basics Pass-through operation after connection Full transparency & low overhead for clients Protocol packet COM_QUERY select * from t App Connector Protocol packet OK ResultSet Rows:1 22

Simple Read/Write Splitting Very fast, easy-to-understand scaling model Transactions go to master Auto-commit SELECTs go to slaves, if available, but... Reads potentially outdated data Ephemeral SQL objects won t be available May miss: select update_function() 23

SmartScale Session Load Balancing Master DBMS Transaction History Log App Connect/Write Connector Session x Session y Slave replay position Slave DBMS 24

SmartScale Session Load Balancing Master DBMS Transaction History Log App Read Connector Session x Session y Slave replay position Slave DBMS 25

SmartScale Session Load Balancing Master DBMS Transaction History Log App Read Connector Session x Slave replay position Slave DBMS 26

Tungsten DBMS Array Connectivity cluster1 login App Read/Write Connector cluster2 login cluster3 login 27

Deployment on App Server Hosts App Server + Connector App Server + Connector App Server + Connector App Server + Connector App Server + Connector 28

Deployment on Dedicated Hosts App Server App Server App Server App Server App Server Hardware Load Balancer 29

Deployment on Dedicated Hosts App Server App Server App Server App Server App Server Software Load Balancer 30

Managing Data Across Multiple Sites 31

Disaster Recovery Sites Updates go to primary site master Simple command promotion DR site receives updates in real time Tungsten connectors can route to primary and DR sites No application changes required Simplest way to protect against region/site failures 32

Tungsten Composite Data Services App Server + Connector App Server + Connector San Jose New York Master sj_nyc Slave 33

Switching and failover Planned switch /sj_nyc > switch to nyc Failover /cluster > failover Failover between sites is not automated! 34

Multi-Master Replication Updates on 2+ sites (active-active mode) Enables geographic distribution of data No failover necessary if network fails or site becomes unavailable Not all applications can handle multi-master Applications must avoid con#icts Careful testing required Restoration of broken systems may not be easy 35

Simple Multi-Master Con$guration NYC Replicator Replicator Frankfurt fra (slave) fra (master) nyc (master) nyc (slave) 36

Complex Multi-Master Topologies All Masters Star Replication 37

Fan-In Replication Multiple masters feed into a single slave Use case: Aggregate data for reporting Consolidate data from multiple servers into one server Moving shards Applications must avoid con#icts 38

Fan-In Topology 39

Heterogeneous Replication 40

Problem: Real-Time Order Ful$llment Web-Facing Sales Purchase Ordering PHP/ Perl Java/ JBoss MySQL 1-2M transactions daily Real-Time Replication Oracle 3M Order Items 41

How Does Tungsten Do That? MySQL Tungsten Master Replicator Tungsten Slave Replicator Oracle Service oracle Service oracle MySQL Binlog MySQLExtractor Special Filters * Transform enum to string Special Filters * Ignore extra tables * Map names to upper case * Optimize updates to remove unchanged columns binlog_format=row 42

Batch Loading to Data Warehouses MySQL Master Replicator Service batch Vertica Data Warehouse London Transaction History Log THL Csv File Csv File... Csv File 43

Possibilities for Analytics... MySQL Master Complex, near real-time reporting OLTP Data Light-weight, real-time operational status Web-facing minidata marts for SaaS users 44

Getting Started 45

How Do I Obtain Tungsten? Register at Continuent to get downloads for Oracle replication: http://www.continuent.com/downloads/software Documentation is available on Continuent website MySQL replication is available from Tungsten Replicator project on code.google.com http://code.google.com/p/tungsten-replicator/ 46

560 S. Winchester Blvd., Suite 500 San Jose, CA 95128 Tel +1 (866) 998-3642 Fax +1 (408) 668-1009 e-mail: sales@continuent.com Our Blogs: http://scale-out-blog.blogspot.com http://datacharmer.org/blog http://www.continuent.com/news/blogs Continuent Web Page: http://www.continuent.com Tungsten Replicator 2.0: http://code.google.com/p/tungsten-replicator.