SlideShare a Scribd company logo
The MySQL Availability Company
INTRODUCTION TO DATABASE PROXIES
Why do we need Proxy in the First Place? Smarter Proxies are Better!
Gilles Rayrat
About the Presenter
Gilles Rayrat
VP of Engineering
Co-author and main developer of the Tungsten Connector
ACCESSING A DATABASE
A Simple Scenario
Applications that need a database server will
access it directly
Application / database stack
Application
Database
A Simple Scenario
Applications that need a database server will
access it directly
• Read and Writes are going to the same
node
Application
A Simple Scenario
Applications that need a database server will
access it directly
• Read and Writes are going to the same
node
• No need for intermediate layers
Application
A Simple Scenario
Applications that need a database server will
access it directly
• Read and Writes are going to the same
node
• No need for intermediate layers
• If the database fails…
Application
Failure in a Simple Scenario
Applications that need a database server will
access it directly
• Read and Writes are going to the same
node
• No need for intermediate layers
• If the database fails… the application breaks
Application
A CLUSTERED DATABASE
A Clustered Database
With a cluster of databases, there is at least
one master and some slaves
Application
A Clustered Database
With a cluster of databases, there is at least
one master and some slaves
• Simple applications will access a unique
database instance: the master
Application
A Clustered Database
With a cluster of databases, there is at least
one master and some slaves
• Simple applications will access a unique
database instance: the master
• Smarter applications can read from slaves
Smart Application
Failure in a Clustered Database
Clusters are designed to survive failuresApplication
Failure in a Clustered Database
Clusters are designed to survive failures
Applications not!
Application
Failure in a Clustered Database
Clusters are designed to survive failures
Applications not! They need to be
reconfigured
Application
Failure in a Clustered Database
Clusters are designed to survive failures
• Applications not! They need to be
reconfigured
• The more intelligence…
Smart Application
Failure in a Clustered Database
Clusters are designed to survive failures
• Applications not! They need to be
reconfigured
• The more intelligence… the more difficulties
Smart Application
Failure in a Clustered Database
Clusters are designed to survive failures
• Applications not! They need to be
reconfigured
• The more intelligence… the more difficulties
• The more applications… the more
headaches!
Smart Application
Smart Application
Smart Application
Nightmare Scenario
Replication working OK
quote #123, amount $12,000 quote #123, amount $12,000
Application
Nightmare Scenario
Replication working OK
… but applications wrongly configured!
Application Application
quote #123, amount $12,000 quote #123, amount $25,000
Nightmare Scenario
Replication working OK
… but applications wrongly configured!
Imagine millions of records like this!!!
Application Application
quote #123, amount $12,000 quote #123, amount $25,000
SOLUTION: USE A PROXY.
PREFERABLY SMART PROXY!
A Clustered Database
Cluster of databases, one master and 2 slaves
Application / database stack
Application
A Clustered Database
Cluster of databases, one master and 2 slaves
• A proxy is a middle layer sitting between
the database and the application
Application
Proxy
Proxy
A Clustered Database
Cluster of databases, one master and 2 slaves
• A proxy is a middle layer sitting between
the database and the application
• Good proxies make clusters appear like a
single database
Application
A Clustered Database
Cluster of databases, one master and 2 slaves
• A proxy is a middle layer sitting between
the database and the application
• Good proxies make clusters appear like a
single database
• The plumbing behind is hidden to the
application
Application
Proxy
A Clustered Database
Cluster of databases, one master and 2 slaves
• A proxy is a middle layer sitting between
the database and the application
• Good proxies make clusters appear like a
single database
• The plumbing behind is hidden to the
application
• Including after failover
Application
Proxy
A Clustered Database
Cluster of databases, one master and 2 slaves
• A proxy is a middle layer sitting between
the database and the application
• Good proxies make clusters appear like a
single database
• The plumbing behind is hidden to the
application
• Including after failover => the app<>proxy
connection is not broken!
Application
Proxy
A Clustered Database
Cluster of databases, one master and 2 slaves
• A proxy is a middle layer sitting between
the database and the application
• Good proxies make clusters appear like a
single database
• The plumbing behind is hidden to the
application
• Including after failover => the app<>proxy
connection is not broken!
Tungsten Proxy will re-route database
requests to the new master… with no
downtime!
Application
Proxy
A Clustered Database
Smart proxies…
• … can serve smart applications
Smart Application
Smart Proxy
A Clustered Database
Smart proxies…
• … can serve smart applications
Smarter proxies…
Application
Smart Proxy
A Clustered Database
Smart proxies…
• … can serve smart applications
Smarter proxies…
• … can serve simple applications
Application
Smart Proxy
A Clustered Database
Smart proxies…
• … can serve smart applications
Smarter proxies…
• … can serve simple applications
• By identifying the read operations and
sending read traffic to slaves
Application
Smart Proxy
ADVANCED DATABASE CONNECTIVITY SETUPS
DR setup
Composite Master/Slave setup
Application
Proxy
DR setup
Composite Master/Slave setup
Application
Proxy
Application
Proxy
Zone 1 Zone 2
DR setup
Composite Master/Slave setup
Applications sitting on each site
Application
Proxy
Application
Proxy
Zone 1 Zone 2
DR setup
Composite Master/Slave setup
Applications sitting on each site
• All writes must go to the (unique) master
Application
Proxy
Application
Proxy
Zone 1 Zone 2
DR setup
Composite Master/Slave setup
Applications sitting on each site
• All writes must go to the (unique) master
• Reads can remain local!
Btw: Only Tungsten can do that…
Application
Proxy
Application
Proxy
Zone 1 Zone 2
Multi-Master
Composite Multi-Master setup
Application
Proxy
Multi-Master
Composite Multi-Master setup
• Writes go to the local master
Application
Proxy
Application
Proxy
Zone 1 Zone 2
Multi-Master
Composite Multi-Master setup
• Writes go to the local master
• Reads stay local as well
Again, a Continuent exclusive feature!
Application
Proxy
Application
Proxy
Zone 1 Zone 2
ADVANCED PROXY FUNCTIONALITIES
Team Work
Tungsten is a clustering suite
Application
Proxy
Application
Proxy
Team Work
Tungsten is a clustering suite
Application
Proxy
Application
Proxy
Manager
Replicator
Manager
Replicator
Manager
Replicator
Team Work
Tungsten is a clustering suite
• Managers know about the cluster
• Connectors get cluster information from
Managers
Application
Proxy
Application
Proxy
Manager
Replicator
Manager
Replicator
Manager
Replicator
Advanced functionalities
Bridge mode
Application
Tungsten Proxy
Advanced functionalities
Bridge mode
• Provides access to “the master” or “a slave”
Application
Tungsten Proxy
Tungsten Proxy
Advanced functionalities
Bridge mode
• Provides access to “the master” or “a slave”
• Totally transparent
Application
Tungsten Proxy
Advanced functionalities
Bridge mode
• Provides access to “the master” or “a slave”
• Totally transparent
• No automated read/write splitting
Application
Tungsten Proxy
Advanced functionalities
Bridge mode
• Provides access to “the master” or “a slave”
• Totally transparent
• No automated read/write splitting
• Error appear to the application upon failure
Application
Tungsten Proxy
Advanced functionalities
Bridge mode
• Provides access to “the master” or “a slave”
• Totally transparent
• No automated read/write splitting
• Error appear to the application upon failure
• Super Fast
Application
Advanced functionalities
SmartScale
Application
Tungsten Proxy
Advanced functionalities
SmartScale
• The problem with reading from slaves:
• After a write occurs:
Application
record R
Tungsten Proxy
Advanced functionalities
SmartScale
• The problem with reading from slaves:
• After a write occurs: Replication lag
Application
R
R R
Tungsten Proxy
Advanced functionalities
SmartScale
• The problem with reading from slaves:
• After a write occurs: Replication lag
• Smart scale makes sure the data written by
the application is available on the slave
Application
R
Tungsten Proxy
Advanced functionalities
SmartScale
• The problem with reading from slaves:
• After a write occurs: Replication lag
• Smart scale makes sure the data written by
the application is available on the slave
Application
R
R?
Tungsten Proxy
Advanced functionalities
SmartScale
• The problem with reading from slaves:
• After a write occurs: Replication lag
• Smart scale makes sure the data written by
the application is available on the slave
• If not reads from master
Application
R
R
Tungsten Proxy
RECAP
Recap
Proxies make clusters appear as simple
Databases to applications
Application
Proxy
Recap
Proxies make clusters appear as simple
Databases to applications
Even in complex topologies
Application
Proxy
Recap
Proxies make clusters appear as simple
Databases to applications
Even in complex topologies
With read scaling optimizations
Application
Proxy
For More Info…
Product and General Information:
info@continuent.com
Sales Requests:
sales@continuent.com
THANK YOU FOR LISTENING
continuent.com
The MySQL Availability Company
Gilles Rayrat

More Related Content

What's hot

Methods of Sharding MySQL
Methods of Sharding MySQLMethods of Sharding MySQL
Methods of Sharding MySQLLaine Campbell
 
What's new in MySQL Cluster 7.4 webinar charts
What's new in MySQL Cluster 7.4 webinar chartsWhat's new in MySQL Cluster 7.4 webinar charts
What's new in MySQL Cluster 7.4 webinar charts
Andrew Morgan
 
MariaDB Galera Cluster
MariaDB Galera ClusterMariaDB Galera Cluster
MariaDB Galera ClusterAbdul Manaf
 
Choosing between Codership's MySQL Galera, MariaDB Galera Cluster and Percona...
Choosing between Codership's MySQL Galera, MariaDB Galera Cluster and Percona...Choosing between Codership's MySQL Galera, MariaDB Galera Cluster and Percona...
Choosing between Codership's MySQL Galera, MariaDB Galera Cluster and Percona...
Codership Oy - Creators of Galera Cluster
 
MySQL High Availability Solutions
MySQL High Availability SolutionsMySQL High Availability Solutions
MySQL High Availability Solutions
Mydbops
 
Choosing a MySQL High Availability solution - Percona Live UK 2011
Choosing a MySQL High Availability solution - Percona Live UK 2011Choosing a MySQL High Availability solution - Percona Live UK 2011
Choosing a MySQL High Availability solution - Percona Live UK 2011
Henrik Ingo
 
Galera Cluster DDL and Schema Upgrades 220217
Galera Cluster DDL and Schema Upgrades 220217Galera Cluster DDL and Schema Upgrades 220217
Galera Cluster DDL and Schema Upgrades 220217
Codership Oy - Creators of Galera Cluster
 
Maria DB Galera Cluster for High Availability
Maria DB Galera Cluster for High AvailabilityMaria DB Galera Cluster for High Availability
Maria DB Galera Cluster for High Availability
OSSCube
 
Galera 3.0 Webinar Slides: Galera Monitoring & Management
Galera 3.0 Webinar Slides: Galera Monitoring & ManagementGalera 3.0 Webinar Slides: Galera Monitoring & Management
Galera 3.0 Webinar Slides: Galera Monitoring & Management
Severalnines
 
MySQL highav Availability
MySQL highav AvailabilityMySQL highav Availability
MySQL highav Availability
Baruch Osoveskiy
 
High Availability Using MySQL Group Replication
High Availability Using MySQL Group ReplicationHigh Availability Using MySQL Group Replication
High Availability Using MySQL Group Replication
OSSCube
 
MySQL High Availability Solutions
MySQL High Availability SolutionsMySQL High Availability Solutions
MySQL High Availability Solutions
Lenz Grimmer
 
MariaDB Galera Cluster - Simple, Transparent, Highly Available
MariaDB Galera Cluster - Simple, Transparent, Highly AvailableMariaDB Galera Cluster - Simple, Transparent, Highly Available
MariaDB Galera Cluster - Simple, Transparent, Highly Available
MariaDB Corporation
 
Webseminar: MariaDB Enterprise und MariaDB Enterprise Cluster
Webseminar: MariaDB Enterprise und MariaDB Enterprise ClusterWebseminar: MariaDB Enterprise und MariaDB Enterprise Cluster
Webseminar: MariaDB Enterprise und MariaDB Enterprise ClusterMariaDB Corporation
 
MySQL Manchester TT - 5.7 Whats new
MySQL Manchester TT - 5.7 Whats newMySQL Manchester TT - 5.7 Whats new
MySQL Manchester TT - 5.7 Whats new
Mark Swarbrick
 
The Proxy Wars - MySQL Router, ProxySQL, MariaDB MaxScale
The Proxy Wars - MySQL Router, ProxySQL, MariaDB MaxScaleThe Proxy Wars - MySQL Router, ProxySQL, MariaDB MaxScale
The Proxy Wars - MySQL Router, ProxySQL, MariaDB MaxScale
Colin Charles
 
Real time Messages at Scale with Apache Kafka and Couchbase
Real time Messages at Scale with Apache Kafka and CouchbaseReal time Messages at Scale with Apache Kafka and Couchbase
Real time Messages at Scale with Apache Kafka and Couchbase
Will Gardella
 
Master master vs master-slave database
Master master vs master-slave databaseMaster master vs master-slave database
Master master vs master-slave database
Wipro
 
Tips to drive maria db cluster performance for nextcloud
Tips to drive maria db cluster performance for nextcloudTips to drive maria db cluster performance for nextcloud
Tips to drive maria db cluster performance for nextcloud
Severalnines
 
MySQL features missing in MariaDB Server
MySQL features missing in MariaDB ServerMySQL features missing in MariaDB Server
MySQL features missing in MariaDB Server
Colin Charles
 

What's hot (20)

Methods of Sharding MySQL
Methods of Sharding MySQLMethods of Sharding MySQL
Methods of Sharding MySQL
 
What's new in MySQL Cluster 7.4 webinar charts
What's new in MySQL Cluster 7.4 webinar chartsWhat's new in MySQL Cluster 7.4 webinar charts
What's new in MySQL Cluster 7.4 webinar charts
 
MariaDB Galera Cluster
MariaDB Galera ClusterMariaDB Galera Cluster
MariaDB Galera Cluster
 
Choosing between Codership's MySQL Galera, MariaDB Galera Cluster and Percona...
Choosing between Codership's MySQL Galera, MariaDB Galera Cluster and Percona...Choosing between Codership's MySQL Galera, MariaDB Galera Cluster and Percona...
Choosing between Codership's MySQL Galera, MariaDB Galera Cluster and Percona...
 
MySQL High Availability Solutions
MySQL High Availability SolutionsMySQL High Availability Solutions
MySQL High Availability Solutions
 
Choosing a MySQL High Availability solution - Percona Live UK 2011
Choosing a MySQL High Availability solution - Percona Live UK 2011Choosing a MySQL High Availability solution - Percona Live UK 2011
Choosing a MySQL High Availability solution - Percona Live UK 2011
 
Galera Cluster DDL and Schema Upgrades 220217
Galera Cluster DDL and Schema Upgrades 220217Galera Cluster DDL and Schema Upgrades 220217
Galera Cluster DDL and Schema Upgrades 220217
 
Maria DB Galera Cluster for High Availability
Maria DB Galera Cluster for High AvailabilityMaria DB Galera Cluster for High Availability
Maria DB Galera Cluster for High Availability
 
Galera 3.0 Webinar Slides: Galera Monitoring & Management
Galera 3.0 Webinar Slides: Galera Monitoring & ManagementGalera 3.0 Webinar Slides: Galera Monitoring & Management
Galera 3.0 Webinar Slides: Galera Monitoring & Management
 
MySQL highav Availability
MySQL highav AvailabilityMySQL highav Availability
MySQL highav Availability
 
High Availability Using MySQL Group Replication
High Availability Using MySQL Group ReplicationHigh Availability Using MySQL Group Replication
High Availability Using MySQL Group Replication
 
MySQL High Availability Solutions
MySQL High Availability SolutionsMySQL High Availability Solutions
MySQL High Availability Solutions
 
MariaDB Galera Cluster - Simple, Transparent, Highly Available
MariaDB Galera Cluster - Simple, Transparent, Highly AvailableMariaDB Galera Cluster - Simple, Transparent, Highly Available
MariaDB Galera Cluster - Simple, Transparent, Highly Available
 
Webseminar: MariaDB Enterprise und MariaDB Enterprise Cluster
Webseminar: MariaDB Enterprise und MariaDB Enterprise ClusterWebseminar: MariaDB Enterprise und MariaDB Enterprise Cluster
Webseminar: MariaDB Enterprise und MariaDB Enterprise Cluster
 
MySQL Manchester TT - 5.7 Whats new
MySQL Manchester TT - 5.7 Whats newMySQL Manchester TT - 5.7 Whats new
MySQL Manchester TT - 5.7 Whats new
 
The Proxy Wars - MySQL Router, ProxySQL, MariaDB MaxScale
The Proxy Wars - MySQL Router, ProxySQL, MariaDB MaxScaleThe Proxy Wars - MySQL Router, ProxySQL, MariaDB MaxScale
The Proxy Wars - MySQL Router, ProxySQL, MariaDB MaxScale
 
Real time Messages at Scale with Apache Kafka and Couchbase
Real time Messages at Scale with Apache Kafka and CouchbaseReal time Messages at Scale with Apache Kafka and Couchbase
Real time Messages at Scale with Apache Kafka and Couchbase
 
Master master vs master-slave database
Master master vs master-slave databaseMaster master vs master-slave database
Master master vs master-slave database
 
Tips to drive maria db cluster performance for nextcloud
Tips to drive maria db cluster performance for nextcloudTips to drive maria db cluster performance for nextcloud
Tips to drive maria db cluster performance for nextcloud
 
MySQL features missing in MariaDB Server
MySQL features missing in MariaDB ServerMySQL features missing in MariaDB Server
MySQL features missing in MariaDB Server
 

Similar to Webinar slides: Introduction to Database Proxies (for MySQL)

Using Kubernetes to deliver a “serverless” service
Using Kubernetes to deliver a “serverless” serviceUsing Kubernetes to deliver a “serverless” service
Using Kubernetes to deliver a “serverless” service
DoKC
 
Webinar Slides: Intelligent Database Proxies: Routing & Transparent Failover
Webinar Slides: Intelligent Database Proxies: Routing & Transparent FailoverWebinar Slides: Intelligent Database Proxies: Routing & Transparent Failover
Webinar Slides: Intelligent Database Proxies: Routing & Transparent Failover
Continuent
 
Using Kubernetes to deliver a “serverless” service
Using Kubernetes to deliver a “serverless” serviceUsing Kubernetes to deliver a “serverless” service
Using Kubernetes to deliver a “serverless” service
DoKC
 
ApacheCon BigData - What it takes to process a trillion events a day?
ApacheCon BigData - What it takes to process a trillion events a day?ApacheCon BigData - What it takes to process a trillion events a day?
ApacheCon BigData - What it takes to process a trillion events a day?
Jagadish Venkatraman
 
Immutable Infrastructure: the new App Deployment
Immutable Infrastructure: the new App DeploymentImmutable Infrastructure: the new App Deployment
Immutable Infrastructure: the new App Deployment
Axel Fontaine
 
Erlang as a cloud citizen, a fractal approach to throughput
Erlang as a cloud citizen, a fractal approach to throughputErlang as a cloud citizen, a fractal approach to throughput
Erlang as a cloud citizen, a fractal approach to throughput
Paolo Negri
 
Erlang as a Cloud Citizen
Erlang as a Cloud CitizenErlang as a Cloud Citizen
Erlang as a Cloud Citizen
Wooga
 
Erlang and the Cloud: A Fractal Approach to Throughput
Erlang and the Cloud: A Fractal Approach to ThroughputErlang and the Cloud: A Fractal Approach to Throughput
Erlang and the Cloud: A Fractal Approach to ThroughputWooga
 
DEF CON 27 - CHRISTOPHER ROBERTS - firmware slap
DEF CON 27 - CHRISTOPHER ROBERTS - firmware slapDEF CON 27 - CHRISTOPHER ROBERTS - firmware slap
DEF CON 27 - CHRISTOPHER ROBERTS - firmware slap
Felipe Prado
 
Bug hunting through_reverse_engineering
Bug hunting through_reverse_engineeringBug hunting through_reverse_engineering
Bug hunting through_reverse_engineering
arif
 
Test driven infrastructure development (2 - puppetconf 2013 edition)
Test driven infrastructure development (2 - puppetconf 2013 edition)Test driven infrastructure development (2 - puppetconf 2013 edition)
Test driven infrastructure development (2 - puppetconf 2013 edition)Tomas Doran
 
From 100s to 100s of Millions
From 100s to 100s of MillionsFrom 100s to 100s of Millions
From 100s to 100s of Millions
Erik Onnen
 
Dissolving the Problem (Making an ACID-Compliant Database Out of Apache Kafka®)
Dissolving the Problem (Making an ACID-Compliant Database Out of Apache Kafka®)Dissolving the Problem (Making an ACID-Compliant Database Out of Apache Kafka®)
Dissolving the Problem (Making an ACID-Compliant Database Out of Apache Kafka®)
confluent
 
The Ember.js Framework - Everything You Need To Know
The Ember.js Framework - Everything You Need To KnowThe Ember.js Framework - Everything You Need To Know
The Ember.js Framework - Everything You Need To Know
All Things Open
 
Delivering Mobile Apps That Perform
Delivering Mobile Apps That PerformDelivering Mobile Apps That Perform
Delivering Mobile Apps That Perform
Ruben Goncalves
 
Web servicesoverview
Web servicesoverviewWeb servicesoverview
Web servicesoverview
Prabhat gangwar
 
Web servicesoverview
Web servicesoverviewWeb servicesoverview
Web servicesoverview
thisismusthafa
 
JUC Europe 2015: Continuous Integration and Distribution in the Cloud with DE...
JUC Europe 2015: Continuous Integration and Distribution in the Cloud with DE...JUC Europe 2015: Continuous Integration and Distribution in the Cloud with DE...
JUC Europe 2015: Continuous Integration and Distribution in the Cloud with DE...
CloudBees
 
Higher. Faster. Stronger. Your Applications with Habitat
Higher. Faster. Stronger. Your Applications with HabitatHigher. Faster. Stronger. Your Applications with Habitat
Higher. Faster. Stronger. Your Applications with Habitat
Nell Shamrell-Harrington
 
Phoenix for Rubyists
Phoenix for RubyistsPhoenix for Rubyists
Phoenix for Rubyists
Doug Goldie
 

Similar to Webinar slides: Introduction to Database Proxies (for MySQL) (20)

Using Kubernetes to deliver a “serverless” service
Using Kubernetes to deliver a “serverless” serviceUsing Kubernetes to deliver a “serverless” service
Using Kubernetes to deliver a “serverless” service
 
Webinar Slides: Intelligent Database Proxies: Routing & Transparent Failover
Webinar Slides: Intelligent Database Proxies: Routing & Transparent FailoverWebinar Slides: Intelligent Database Proxies: Routing & Transparent Failover
Webinar Slides: Intelligent Database Proxies: Routing & Transparent Failover
 
Using Kubernetes to deliver a “serverless” service
Using Kubernetes to deliver a “serverless” serviceUsing Kubernetes to deliver a “serverless” service
Using Kubernetes to deliver a “serverless” service
 
ApacheCon BigData - What it takes to process a trillion events a day?
ApacheCon BigData - What it takes to process a trillion events a day?ApacheCon BigData - What it takes to process a trillion events a day?
ApacheCon BigData - What it takes to process a trillion events a day?
 
Immutable Infrastructure: the new App Deployment
Immutable Infrastructure: the new App DeploymentImmutable Infrastructure: the new App Deployment
Immutable Infrastructure: the new App Deployment
 
Erlang as a cloud citizen, a fractal approach to throughput
Erlang as a cloud citizen, a fractal approach to throughputErlang as a cloud citizen, a fractal approach to throughput
Erlang as a cloud citizen, a fractal approach to throughput
 
Erlang as a Cloud Citizen
Erlang as a Cloud CitizenErlang as a Cloud Citizen
Erlang as a Cloud Citizen
 
Erlang and the Cloud: A Fractal Approach to Throughput
Erlang and the Cloud: A Fractal Approach to ThroughputErlang and the Cloud: A Fractal Approach to Throughput
Erlang and the Cloud: A Fractal Approach to Throughput
 
DEF CON 27 - CHRISTOPHER ROBERTS - firmware slap
DEF CON 27 - CHRISTOPHER ROBERTS - firmware slapDEF CON 27 - CHRISTOPHER ROBERTS - firmware slap
DEF CON 27 - CHRISTOPHER ROBERTS - firmware slap
 
Bug hunting through_reverse_engineering
Bug hunting through_reverse_engineeringBug hunting through_reverse_engineering
Bug hunting through_reverse_engineering
 
Test driven infrastructure development (2 - puppetconf 2013 edition)
Test driven infrastructure development (2 - puppetconf 2013 edition)Test driven infrastructure development (2 - puppetconf 2013 edition)
Test driven infrastructure development (2 - puppetconf 2013 edition)
 
From 100s to 100s of Millions
From 100s to 100s of MillionsFrom 100s to 100s of Millions
From 100s to 100s of Millions
 
Dissolving the Problem (Making an ACID-Compliant Database Out of Apache Kafka®)
Dissolving the Problem (Making an ACID-Compliant Database Out of Apache Kafka®)Dissolving the Problem (Making an ACID-Compliant Database Out of Apache Kafka®)
Dissolving the Problem (Making an ACID-Compliant Database Out of Apache Kafka®)
 
The Ember.js Framework - Everything You Need To Know
The Ember.js Framework - Everything You Need To KnowThe Ember.js Framework - Everything You Need To Know
The Ember.js Framework - Everything You Need To Know
 
Delivering Mobile Apps That Perform
Delivering Mobile Apps That PerformDelivering Mobile Apps That Perform
Delivering Mobile Apps That Perform
 
Web servicesoverview
Web servicesoverviewWeb servicesoverview
Web servicesoverview
 
Web servicesoverview
Web servicesoverviewWeb servicesoverview
Web servicesoverview
 
JUC Europe 2015: Continuous Integration and Distribution in the Cloud with DE...
JUC Europe 2015: Continuous Integration and Distribution in the Cloud with DE...JUC Europe 2015: Continuous Integration and Distribution in the Cloud with DE...
JUC Europe 2015: Continuous Integration and Distribution in the Cloud with DE...
 
Higher. Faster. Stronger. Your Applications with Habitat
Higher. Faster. Stronger. Your Applications with HabitatHigher. Faster. Stronger. Your Applications with Habitat
Higher. Faster. Stronger. Your Applications with Habitat
 
Phoenix for Rubyists
Phoenix for RubyistsPhoenix for Rubyists
Phoenix for Rubyists
 

More from Continuent

Tungsten Webinar: v6 & v7 Release Recap, and Beyond
Tungsten Webinar: v6 & v7 Release Recap, and BeyondTungsten Webinar: v6 & v7 Release Recap, and Beyond
Tungsten Webinar: v6 & v7 Release Recap, and Beyond
Continuent
 
Continuent Tungsten Value Proposition Webinar
Continuent Tungsten Value Proposition WebinarContinuent Tungsten Value Proposition Webinar
Continuent Tungsten Value Proposition Webinar
Continuent
 
Webinar Slides: MySQL HA/DR/Geo-Scale - High Noon #5: Oracle’s InnoDB Cluster
Webinar Slides: MySQL HA/DR/Geo-Scale - High Noon #5: Oracle’s InnoDB ClusterWebinar Slides: MySQL HA/DR/Geo-Scale - High Noon #5: Oracle’s InnoDB Cluster
Webinar Slides: MySQL HA/DR/Geo-Scale - High Noon #5: Oracle’s InnoDB Cluster
Continuent
 
Webinar Slides: MySQL HA/DR/Geo-Scale - High Noon #4: MS Azure Database MySQL
Webinar Slides: MySQL HA/DR/Geo-Scale - High Noon #4: MS Azure Database MySQLWebinar Slides: MySQL HA/DR/Geo-Scale - High Noon #4: MS Azure Database MySQL
Webinar Slides: MySQL HA/DR/Geo-Scale - High Noon #4: MS Azure Database MySQL
Continuent
 
Webinar Slides: MySQL HA/DR/Geo-Scale - High Noon #2: Galera Cluster
Webinar Slides: MySQL HA/DR/Geo-Scale - High Noon #2: Galera ClusterWebinar Slides: MySQL HA/DR/Geo-Scale - High Noon #2: Galera Cluster
Webinar Slides: MySQL HA/DR/Geo-Scale - High Noon #2: Galera Cluster
Continuent
 
Webinar Slides: MySQL HA/DR/Geo-Scale - High Noon #1: AWS Aurora
Webinar Slides: MySQL HA/DR/Geo-Scale - High Noon #1: AWS AuroraWebinar Slides: MySQL HA/DR/Geo-Scale - High Noon #1: AWS Aurora
Webinar Slides: MySQL HA/DR/Geo-Scale - High Noon #1: AWS Aurora
Continuent
 
Webinar Slides: AWS Aurora MySQL Replacement: Break Away From Geo-Limitations...
Webinar Slides: AWS Aurora MySQL Replacement: Break Away From Geo-Limitations...Webinar Slides: AWS Aurora MySQL Replacement: Break Away From Geo-Limitations...
Webinar Slides: AWS Aurora MySQL Replacement: Break Away From Geo-Limitations...
Continuent
 
Webinar Slides: No Data Loss MySQL: Guaranteed Credit Card Transaction Availa...
Webinar Slides: No Data Loss MySQL: Guaranteed Credit Card Transaction Availa...Webinar Slides: No Data Loss MySQL: Guaranteed Credit Card Transaction Availa...
Webinar Slides: No Data Loss MySQL: Guaranteed Credit Card Transaction Availa...
Continuent
 
Webinar Slides: High Volume MySQL HA: SaaS Continuous Operations with Terabyt...
Webinar Slides: High Volume MySQL HA: SaaS Continuous Operations with Terabyt...Webinar Slides: High Volume MySQL HA: SaaS Continuous Operations with Terabyt...
Webinar Slides: High Volume MySQL HA: SaaS Continuous Operations with Terabyt...
Continuent
 
Training Slides: 205 - Installing and Configuring Tungsten Dashboard
Training Slides: 205 - Installing and Configuring Tungsten DashboardTraining Slides: 205 - Installing and Configuring Tungsten Dashboard
Training Slides: 205 - Installing and Configuring Tungsten Dashboard
Continuent
 
Training Slides: 352 - Tungsten Replicator for MongoDB & Kafka
Training Slides: 352 - Tungsten Replicator for MongoDB & KafkaTraining Slides: 352 - Tungsten Replicator for MongoDB & Kafka
Training Slides: 352 - Tungsten Replicator for MongoDB & Kafka
Continuent
 
Training Slides: 351 - Tungsten Replicator for Data Warehouses
Training Slides: 351 - Tungsten Replicator for Data WarehousesTraining Slides: 351 - Tungsten Replicator for Data Warehouses
Training Slides: 351 - Tungsten Replicator for Data Warehouses
Continuent
 
Training Slides: 303 - Replicating out of a Cluster
Training Slides: 303 - Replicating out of a ClusterTraining Slides: 303 - Replicating out of a Cluster
Training Slides: 303 - Replicating out of a Cluster
Continuent
 
Training Slides: 206 - Using the Tungsten Cluster AMI
Training Slides: 206 - Using the Tungsten Cluster AMITraining Slides: 206 - Using the Tungsten Cluster AMI
Training Slides: 206 - Using the Tungsten Cluster AMI
Continuent
 
Training Slides: 254 - Using the Tungsten Replicator AMI
Training Slides: 254 - Using the Tungsten Replicator AMITraining Slides: 254 - Using the Tungsten Replicator AMI
Training Slides: 254 - Using the Tungsten Replicator AMI
Continuent
 
Training Slides: 253 - Filter like a Pro
Training Slides: 253 - Filter like a ProTraining Slides: 253 - Filter like a Pro
Training Slides: 253 - Filter like a Pro
Continuent
 
Training Slides: 252 - Monitoring & Troubleshooting
Training Slides: 252 - Monitoring & TroubleshootingTraining Slides: 252 - Monitoring & Troubleshooting
Training Slides: 252 - Monitoring & Troubleshooting
Continuent
 
Training Slides: 302 - Securing Your Cluster With SSL
Training Slides: 302 - Securing Your Cluster With SSLTraining Slides: 302 - Securing Your Cluster With SSL
Training Slides: 302 - Securing Your Cluster With SSL
Continuent
 
Webinar Slides: Global MySQL Availability: SaaS Cloud Contact Center Secures ...
Webinar Slides: Global MySQL Availability: SaaS Cloud Contact Center Secures ...Webinar Slides: Global MySQL Availability: SaaS Cloud Contact Center Secures ...
Webinar Slides: Global MySQL Availability: SaaS Cloud Contact Center Secures ...
Continuent
 
Training Slides: 204 - Tungsten Proxy Deep Dive
Training Slides: 204 - Tungsten Proxy Deep DiveTraining Slides: 204 - Tungsten Proxy Deep Dive
Training Slides: 204 - Tungsten Proxy Deep Dive
Continuent
 

More from Continuent (20)

Tungsten Webinar: v6 & v7 Release Recap, and Beyond
Tungsten Webinar: v6 & v7 Release Recap, and BeyondTungsten Webinar: v6 & v7 Release Recap, and Beyond
Tungsten Webinar: v6 & v7 Release Recap, and Beyond
 
Continuent Tungsten Value Proposition Webinar
Continuent Tungsten Value Proposition WebinarContinuent Tungsten Value Proposition Webinar
Continuent Tungsten Value Proposition Webinar
 
Webinar Slides: MySQL HA/DR/Geo-Scale - High Noon #5: Oracle’s InnoDB Cluster
Webinar Slides: MySQL HA/DR/Geo-Scale - High Noon #5: Oracle’s InnoDB ClusterWebinar Slides: MySQL HA/DR/Geo-Scale - High Noon #5: Oracle’s InnoDB Cluster
Webinar Slides: MySQL HA/DR/Geo-Scale - High Noon #5: Oracle’s InnoDB Cluster
 
Webinar Slides: MySQL HA/DR/Geo-Scale - High Noon #4: MS Azure Database MySQL
Webinar Slides: MySQL HA/DR/Geo-Scale - High Noon #4: MS Azure Database MySQLWebinar Slides: MySQL HA/DR/Geo-Scale - High Noon #4: MS Azure Database MySQL
Webinar Slides: MySQL HA/DR/Geo-Scale - High Noon #4: MS Azure Database MySQL
 
Webinar Slides: MySQL HA/DR/Geo-Scale - High Noon #2: Galera Cluster
Webinar Slides: MySQL HA/DR/Geo-Scale - High Noon #2: Galera ClusterWebinar Slides: MySQL HA/DR/Geo-Scale - High Noon #2: Galera Cluster
Webinar Slides: MySQL HA/DR/Geo-Scale - High Noon #2: Galera Cluster
 
Webinar Slides: MySQL HA/DR/Geo-Scale - High Noon #1: AWS Aurora
Webinar Slides: MySQL HA/DR/Geo-Scale - High Noon #1: AWS AuroraWebinar Slides: MySQL HA/DR/Geo-Scale - High Noon #1: AWS Aurora
Webinar Slides: MySQL HA/DR/Geo-Scale - High Noon #1: AWS Aurora
 
Webinar Slides: AWS Aurora MySQL Replacement: Break Away From Geo-Limitations...
Webinar Slides: AWS Aurora MySQL Replacement: Break Away From Geo-Limitations...Webinar Slides: AWS Aurora MySQL Replacement: Break Away From Geo-Limitations...
Webinar Slides: AWS Aurora MySQL Replacement: Break Away From Geo-Limitations...
 
Webinar Slides: No Data Loss MySQL: Guaranteed Credit Card Transaction Availa...
Webinar Slides: No Data Loss MySQL: Guaranteed Credit Card Transaction Availa...Webinar Slides: No Data Loss MySQL: Guaranteed Credit Card Transaction Availa...
Webinar Slides: No Data Loss MySQL: Guaranteed Credit Card Transaction Availa...
 
Webinar Slides: High Volume MySQL HA: SaaS Continuous Operations with Terabyt...
Webinar Slides: High Volume MySQL HA: SaaS Continuous Operations with Terabyt...Webinar Slides: High Volume MySQL HA: SaaS Continuous Operations with Terabyt...
Webinar Slides: High Volume MySQL HA: SaaS Continuous Operations with Terabyt...
 
Training Slides: 205 - Installing and Configuring Tungsten Dashboard
Training Slides: 205 - Installing and Configuring Tungsten DashboardTraining Slides: 205 - Installing and Configuring Tungsten Dashboard
Training Slides: 205 - Installing and Configuring Tungsten Dashboard
 
Training Slides: 352 - Tungsten Replicator for MongoDB & Kafka
Training Slides: 352 - Tungsten Replicator for MongoDB & KafkaTraining Slides: 352 - Tungsten Replicator for MongoDB & Kafka
Training Slides: 352 - Tungsten Replicator for MongoDB & Kafka
 
Training Slides: 351 - Tungsten Replicator for Data Warehouses
Training Slides: 351 - Tungsten Replicator for Data WarehousesTraining Slides: 351 - Tungsten Replicator for Data Warehouses
Training Slides: 351 - Tungsten Replicator for Data Warehouses
 
Training Slides: 303 - Replicating out of a Cluster
Training Slides: 303 - Replicating out of a ClusterTraining Slides: 303 - Replicating out of a Cluster
Training Slides: 303 - Replicating out of a Cluster
 
Training Slides: 206 - Using the Tungsten Cluster AMI
Training Slides: 206 - Using the Tungsten Cluster AMITraining Slides: 206 - Using the Tungsten Cluster AMI
Training Slides: 206 - Using the Tungsten Cluster AMI
 
Training Slides: 254 - Using the Tungsten Replicator AMI
Training Slides: 254 - Using the Tungsten Replicator AMITraining Slides: 254 - Using the Tungsten Replicator AMI
Training Slides: 254 - Using the Tungsten Replicator AMI
 
Training Slides: 253 - Filter like a Pro
Training Slides: 253 - Filter like a ProTraining Slides: 253 - Filter like a Pro
Training Slides: 253 - Filter like a Pro
 
Training Slides: 252 - Monitoring & Troubleshooting
Training Slides: 252 - Monitoring & TroubleshootingTraining Slides: 252 - Monitoring & Troubleshooting
Training Slides: 252 - Monitoring & Troubleshooting
 
Training Slides: 302 - Securing Your Cluster With SSL
Training Slides: 302 - Securing Your Cluster With SSLTraining Slides: 302 - Securing Your Cluster With SSL
Training Slides: 302 - Securing Your Cluster With SSL
 
Webinar Slides: Global MySQL Availability: SaaS Cloud Contact Center Secures ...
Webinar Slides: Global MySQL Availability: SaaS Cloud Contact Center Secures ...Webinar Slides: Global MySQL Availability: SaaS Cloud Contact Center Secures ...
Webinar Slides: Global MySQL Availability: SaaS Cloud Contact Center Secures ...
 
Training Slides: 204 - Tungsten Proxy Deep Dive
Training Slides: 204 - Tungsten Proxy Deep DiveTraining Slides: 204 - Tungsten Proxy Deep Dive
Training Slides: 204 - Tungsten Proxy Deep Dive
 

Recently uploaded

guildmasters guide to ravnica Dungeons & Dragons 5...
guildmasters guide to ravnica Dungeons & Dragons 5...guildmasters guide to ravnica Dungeons & Dragons 5...
guildmasters guide to ravnica Dungeons & Dragons 5...
Rogerio Filho
 
How to Use Contact Form 7 Like a Pro.pptx
How to Use Contact Form 7 Like a Pro.pptxHow to Use Contact Form 7 Like a Pro.pptx
How to Use Contact Form 7 Like a Pro.pptx
Gal Baras
 
The+Prospects+of+E-Commerce+in+China.pptx
The+Prospects+of+E-Commerce+in+China.pptxThe+Prospects+of+E-Commerce+in+China.pptx
The+Prospects+of+E-Commerce+in+China.pptx
laozhuseo02
 
History+of+E-commerce+Development+in+China-www.cfye-commerce.shop
History+of+E-commerce+Development+in+China-www.cfye-commerce.shopHistory+of+E-commerce+Development+in+China-www.cfye-commerce.shop
History+of+E-commerce+Development+in+China-www.cfye-commerce.shop
laozhuseo02
 
BASIC C++ lecture NOTE C++ lecture 3.pptx
BASIC C++ lecture NOTE C++ lecture 3.pptxBASIC C++ lecture NOTE C++ lecture 3.pptx
BASIC C++ lecture NOTE C++ lecture 3.pptx
natyesu
 
Multi-cluster Kubernetes Networking- Patterns, Projects and Guidelines
Multi-cluster Kubernetes Networking- Patterns, Projects and GuidelinesMulti-cluster Kubernetes Networking- Patterns, Projects and Guidelines
Multi-cluster Kubernetes Networking- Patterns, Projects and Guidelines
Sanjeev Rampal
 
This 7-second Brain Wave Ritual Attracts Money To You.!
This 7-second Brain Wave Ritual Attracts Money To You.!This 7-second Brain Wave Ritual Attracts Money To You.!
This 7-second Brain Wave Ritual Attracts Money To You.!
nirahealhty
 
ER(Entity Relationship) Diagram for online shopping - TAE
ER(Entity Relationship) Diagram for online shopping - TAEER(Entity Relationship) Diagram for online shopping - TAE
ER(Entity Relationship) Diagram for online shopping - TAE
Himani415946
 
原版仿制(uob毕业证书)英国伯明翰大学毕业证本科学历证书原版一模一样
原版仿制(uob毕业证书)英国伯明翰大学毕业证本科学历证书原版一模一样原版仿制(uob毕业证书)英国伯明翰大学毕业证本科学历证书原版一模一样
原版仿制(uob毕业证书)英国伯明翰大学毕业证本科学历证书原版一模一样
3ipehhoa
 
Latest trends in computer networking.pptx
Latest trends in computer networking.pptxLatest trends in computer networking.pptx
Latest trends in computer networking.pptx
JungkooksNonexistent
 
Living-in-IT-era-Module-7-Imaging-and-Design-for-Social-Impact.pptx
Living-in-IT-era-Module-7-Imaging-and-Design-for-Social-Impact.pptxLiving-in-IT-era-Module-7-Imaging-and-Design-for-Social-Impact.pptx
Living-in-IT-era-Module-7-Imaging-and-Design-for-Social-Impact.pptx
TristanJasperRamos
 
test test test test testtest test testtest test testtest test testtest test ...
test test  test test testtest test testtest test testtest test testtest test ...test test  test test testtest test testtest test testtest test testtest test ...
test test test test testtest test testtest test testtest test testtest test ...
Arif0071
 
1.Wireless Communication System_Wireless communication is a broad term that i...
1.Wireless Communication System_Wireless communication is a broad term that i...1.Wireless Communication System_Wireless communication is a broad term that i...
1.Wireless Communication System_Wireless communication is a broad term that i...
JeyaPerumal1
 
急速办(bedfordhire毕业证书)英国贝德福特大学毕业证成绩单原版一模一样
急速办(bedfordhire毕业证书)英国贝德福特大学毕业证成绩单原版一模一样急速办(bedfordhire毕业证书)英国贝德福特大学毕业证成绩单原版一模一样
急速办(bedfordhire毕业证书)英国贝德福特大学毕业证成绩单原版一模一样
3ipehhoa
 
Output determination SAP S4 HANA SAP SD CC
Output determination SAP S4 HANA SAP SD CCOutput determination SAP S4 HANA SAP SD CC
Output determination SAP S4 HANA SAP SD CC
ShahulHameed54211
 
1比1复刻(bath毕业证书)英国巴斯大学毕业证学位证原版一模一样
1比1复刻(bath毕业证书)英国巴斯大学毕业证学位证原版一模一样1比1复刻(bath毕业证书)英国巴斯大学毕业证学位证原版一模一样
1比1复刻(bath毕业证书)英国巴斯大学毕业证学位证原版一模一样
3ipehhoa
 

Recently uploaded (16)

guildmasters guide to ravnica Dungeons & Dragons 5...
guildmasters guide to ravnica Dungeons & Dragons 5...guildmasters guide to ravnica Dungeons & Dragons 5...
guildmasters guide to ravnica Dungeons & Dragons 5...
 
How to Use Contact Form 7 Like a Pro.pptx
How to Use Contact Form 7 Like a Pro.pptxHow to Use Contact Form 7 Like a Pro.pptx
How to Use Contact Form 7 Like a Pro.pptx
 
The+Prospects+of+E-Commerce+in+China.pptx
The+Prospects+of+E-Commerce+in+China.pptxThe+Prospects+of+E-Commerce+in+China.pptx
The+Prospects+of+E-Commerce+in+China.pptx
 
History+of+E-commerce+Development+in+China-www.cfye-commerce.shop
History+of+E-commerce+Development+in+China-www.cfye-commerce.shopHistory+of+E-commerce+Development+in+China-www.cfye-commerce.shop
History+of+E-commerce+Development+in+China-www.cfye-commerce.shop
 
BASIC C++ lecture NOTE C++ lecture 3.pptx
BASIC C++ lecture NOTE C++ lecture 3.pptxBASIC C++ lecture NOTE C++ lecture 3.pptx
BASIC C++ lecture NOTE C++ lecture 3.pptx
 
Multi-cluster Kubernetes Networking- Patterns, Projects and Guidelines
Multi-cluster Kubernetes Networking- Patterns, Projects and GuidelinesMulti-cluster Kubernetes Networking- Patterns, Projects and Guidelines
Multi-cluster Kubernetes Networking- Patterns, Projects and Guidelines
 
This 7-second Brain Wave Ritual Attracts Money To You.!
This 7-second Brain Wave Ritual Attracts Money To You.!This 7-second Brain Wave Ritual Attracts Money To You.!
This 7-second Brain Wave Ritual Attracts Money To You.!
 
ER(Entity Relationship) Diagram for online shopping - TAE
ER(Entity Relationship) Diagram for online shopping - TAEER(Entity Relationship) Diagram for online shopping - TAE
ER(Entity Relationship) Diagram for online shopping - TAE
 
原版仿制(uob毕业证书)英国伯明翰大学毕业证本科学历证书原版一模一样
原版仿制(uob毕业证书)英国伯明翰大学毕业证本科学历证书原版一模一样原版仿制(uob毕业证书)英国伯明翰大学毕业证本科学历证书原版一模一样
原版仿制(uob毕业证书)英国伯明翰大学毕业证本科学历证书原版一模一样
 
Latest trends in computer networking.pptx
Latest trends in computer networking.pptxLatest trends in computer networking.pptx
Latest trends in computer networking.pptx
 
Living-in-IT-era-Module-7-Imaging-and-Design-for-Social-Impact.pptx
Living-in-IT-era-Module-7-Imaging-and-Design-for-Social-Impact.pptxLiving-in-IT-era-Module-7-Imaging-and-Design-for-Social-Impact.pptx
Living-in-IT-era-Module-7-Imaging-and-Design-for-Social-Impact.pptx
 
test test test test testtest test testtest test testtest test testtest test ...
test test  test test testtest test testtest test testtest test testtest test ...test test  test test testtest test testtest test testtest test testtest test ...
test test test test testtest test testtest test testtest test testtest test ...
 
1.Wireless Communication System_Wireless communication is a broad term that i...
1.Wireless Communication System_Wireless communication is a broad term that i...1.Wireless Communication System_Wireless communication is a broad term that i...
1.Wireless Communication System_Wireless communication is a broad term that i...
 
急速办(bedfordhire毕业证书)英国贝德福特大学毕业证成绩单原版一模一样
急速办(bedfordhire毕业证书)英国贝德福特大学毕业证成绩单原版一模一样急速办(bedfordhire毕业证书)英国贝德福特大学毕业证成绩单原版一模一样
急速办(bedfordhire毕业证书)英国贝德福特大学毕业证成绩单原版一模一样
 
Output determination SAP S4 HANA SAP SD CC
Output determination SAP S4 HANA SAP SD CCOutput determination SAP S4 HANA SAP SD CC
Output determination SAP S4 HANA SAP SD CC
 
1比1复刻(bath毕业证书)英国巴斯大学毕业证学位证原版一模一样
1比1复刻(bath毕业证书)英国巴斯大学毕业证学位证原版一模一样1比1复刻(bath毕业证书)英国巴斯大学毕业证学位证原版一模一样
1比1复刻(bath毕业证书)英国巴斯大学毕业证学位证原版一模一样
 

Webinar slides: Introduction to Database Proxies (for MySQL)

  • 1. The MySQL Availability Company INTRODUCTION TO DATABASE PROXIES Why do we need Proxy in the First Place? Smarter Proxies are Better! Gilles Rayrat
  • 2. About the Presenter Gilles Rayrat VP of Engineering Co-author and main developer of the Tungsten Connector
  • 4. A Simple Scenario Applications that need a database server will access it directly Application / database stack Application Database
  • 5. A Simple Scenario Applications that need a database server will access it directly • Read and Writes are going to the same node Application
  • 6. A Simple Scenario Applications that need a database server will access it directly • Read and Writes are going to the same node • No need for intermediate layers Application
  • 7. A Simple Scenario Applications that need a database server will access it directly • Read and Writes are going to the same node • No need for intermediate layers • If the database fails… Application
  • 8. Failure in a Simple Scenario Applications that need a database server will access it directly • Read and Writes are going to the same node • No need for intermediate layers • If the database fails… the application breaks Application
  • 10. A Clustered Database With a cluster of databases, there is at least one master and some slaves Application
  • 11. A Clustered Database With a cluster of databases, there is at least one master and some slaves • Simple applications will access a unique database instance: the master Application
  • 12. A Clustered Database With a cluster of databases, there is at least one master and some slaves • Simple applications will access a unique database instance: the master • Smarter applications can read from slaves Smart Application
  • 13. Failure in a Clustered Database Clusters are designed to survive failuresApplication
  • 14. Failure in a Clustered Database Clusters are designed to survive failures Applications not! Application
  • 15. Failure in a Clustered Database Clusters are designed to survive failures Applications not! They need to be reconfigured Application
  • 16. Failure in a Clustered Database Clusters are designed to survive failures • Applications not! They need to be reconfigured • The more intelligence… Smart Application
  • 17. Failure in a Clustered Database Clusters are designed to survive failures • Applications not! They need to be reconfigured • The more intelligence… the more difficulties Smart Application
  • 18. Failure in a Clustered Database Clusters are designed to survive failures • Applications not! They need to be reconfigured • The more intelligence… the more difficulties • The more applications… the more headaches! Smart Application Smart Application Smart Application
  • 19. Nightmare Scenario Replication working OK quote #123, amount $12,000 quote #123, amount $12,000 Application
  • 20. Nightmare Scenario Replication working OK … but applications wrongly configured! Application Application quote #123, amount $12,000 quote #123, amount $25,000
  • 21. Nightmare Scenario Replication working OK … but applications wrongly configured! Imagine millions of records like this!!! Application Application quote #123, amount $12,000 quote #123, amount $25,000
  • 22. SOLUTION: USE A PROXY. PREFERABLY SMART PROXY!
  • 23. A Clustered Database Cluster of databases, one master and 2 slaves Application / database stack Application
  • 24. A Clustered Database Cluster of databases, one master and 2 slaves • A proxy is a middle layer sitting between the database and the application Application Proxy
  • 25. Proxy A Clustered Database Cluster of databases, one master and 2 slaves • A proxy is a middle layer sitting between the database and the application • Good proxies make clusters appear like a single database Application
  • 26. A Clustered Database Cluster of databases, one master and 2 slaves • A proxy is a middle layer sitting between the database and the application • Good proxies make clusters appear like a single database • The plumbing behind is hidden to the application Application Proxy
  • 27. A Clustered Database Cluster of databases, one master and 2 slaves • A proxy is a middle layer sitting between the database and the application • Good proxies make clusters appear like a single database • The plumbing behind is hidden to the application • Including after failover Application Proxy
  • 28. A Clustered Database Cluster of databases, one master and 2 slaves • A proxy is a middle layer sitting between the database and the application • Good proxies make clusters appear like a single database • The plumbing behind is hidden to the application • Including after failover => the app<>proxy connection is not broken! Application Proxy
  • 29. A Clustered Database Cluster of databases, one master and 2 slaves • A proxy is a middle layer sitting between the database and the application • Good proxies make clusters appear like a single database • The plumbing behind is hidden to the application • Including after failover => the app<>proxy connection is not broken! Tungsten Proxy will re-route database requests to the new master… with no downtime! Application Proxy
  • 30. A Clustered Database Smart proxies… • … can serve smart applications Smart Application Smart Proxy
  • 31. A Clustered Database Smart proxies… • … can serve smart applications Smarter proxies… Application Smart Proxy
  • 32. A Clustered Database Smart proxies… • … can serve smart applications Smarter proxies… • … can serve simple applications Application Smart Proxy
  • 33. A Clustered Database Smart proxies… • … can serve smart applications Smarter proxies… • … can serve simple applications • By identifying the read operations and sending read traffic to slaves Application Smart Proxy
  • 35. DR setup Composite Master/Slave setup Application Proxy
  • 36. DR setup Composite Master/Slave setup Application Proxy Application Proxy Zone 1 Zone 2
  • 37. DR setup Composite Master/Slave setup Applications sitting on each site Application Proxy Application Proxy Zone 1 Zone 2
  • 38. DR setup Composite Master/Slave setup Applications sitting on each site • All writes must go to the (unique) master Application Proxy Application Proxy Zone 1 Zone 2
  • 39. DR setup Composite Master/Slave setup Applications sitting on each site • All writes must go to the (unique) master • Reads can remain local! Btw: Only Tungsten can do that… Application Proxy Application Proxy Zone 1 Zone 2
  • 41. Multi-Master Composite Multi-Master setup • Writes go to the local master Application Proxy Application Proxy Zone 1 Zone 2
  • 42. Multi-Master Composite Multi-Master setup • Writes go to the local master • Reads stay local as well Again, a Continuent exclusive feature! Application Proxy Application Proxy Zone 1 Zone 2
  • 44. Team Work Tungsten is a clustering suite Application Proxy Application Proxy
  • 45. Team Work Tungsten is a clustering suite Application Proxy Application Proxy Manager Replicator Manager Replicator Manager Replicator
  • 46. Team Work Tungsten is a clustering suite • Managers know about the cluster • Connectors get cluster information from Managers Application Proxy Application Proxy Manager Replicator Manager Replicator Manager Replicator
  • 48. Advanced functionalities Bridge mode • Provides access to “the master” or “a slave” Application Tungsten Proxy
  • 49. Tungsten Proxy Advanced functionalities Bridge mode • Provides access to “the master” or “a slave” • Totally transparent Application
  • 50. Tungsten Proxy Advanced functionalities Bridge mode • Provides access to “the master” or “a slave” • Totally transparent • No automated read/write splitting Application
  • 51. Tungsten Proxy Advanced functionalities Bridge mode • Provides access to “the master” or “a slave” • Totally transparent • No automated read/write splitting • Error appear to the application upon failure Application
  • 52. Tungsten Proxy Advanced functionalities Bridge mode • Provides access to “the master” or “a slave” • Totally transparent • No automated read/write splitting • Error appear to the application upon failure • Super Fast Application
  • 54. Advanced functionalities SmartScale • The problem with reading from slaves: • After a write occurs: Application record R Tungsten Proxy
  • 55. Advanced functionalities SmartScale • The problem with reading from slaves: • After a write occurs: Replication lag Application R R R Tungsten Proxy
  • 56. Advanced functionalities SmartScale • The problem with reading from slaves: • After a write occurs: Replication lag • Smart scale makes sure the data written by the application is available on the slave Application R Tungsten Proxy
  • 57. Advanced functionalities SmartScale • The problem with reading from slaves: • After a write occurs: Replication lag • Smart scale makes sure the data written by the application is available on the slave Application R R? Tungsten Proxy
  • 58. Advanced functionalities SmartScale • The problem with reading from slaves: • After a write occurs: Replication lag • Smart scale makes sure the data written by the application is available on the slave • If not reads from master Application R R Tungsten Proxy
  • 59. RECAP
  • 60. Recap Proxies make clusters appear as simple Databases to applications Application Proxy
  • 61. Recap Proxies make clusters appear as simple Databases to applications Even in complex topologies Application Proxy
  • 62. Recap Proxies make clusters appear as simple Databases to applications Even in complex topologies With read scaling optimizations Application Proxy
  • 63. For More Info… Product and General Information: info@continuent.com Sales Requests: sales@continuent.com
  • 64. THANK YOU FOR LISTENING continuent.com The MySQL Availability Company Gilles Rayrat