SlideShare a Scribd company logo
@proxysql
http://proxysql.com
https://github.com/sysown/proxysql/sysown.com
ProxySQL
High Performance & High Availability
Proxy for MySQL
René Cannaò
rene@sysown.com
@proxysql
http://proxysql.com
https://github.com/sysown/proxysql/sysown.com
GA
Stable and production ready
version 0.2
@proxysql
http://proxysql.com
https://github.com/sysown/proxysql/sysown.com
Genesis: main motivations
rewrite queries
cache frequent reads
solving/finding the answer for
DEVs vs DBAs
@proxysql
http://proxysql.com
https://github.com/sysown/proxysql/sysown.com
Open Source proxies for MySQL
MySQL Proxy
HAProxy
http://tinyurl.com/ptjmzde
Now also MaxScale
@proxysql
http://proxysql.com
https://github.com/sysown/proxysql/sysown.com
MySQL Proxy
Pros:
customizable
expandable
acceptable performance
Cons:
CPU intensive
Not really reliable
Not maintained
@proxysql
http://proxysql.com
https://github.com/sysown/proxysql/sysown.com
HAProxy
Pros:
very stable
high performance
mature software
Cons:
Layer 7 proxy only for HTTP
Doesn’t understand the MySQL Protocol
Layer 4 for other services
@proxysql
http://proxysql.com
https://github.com/sysown/proxysql/sysown.com
Proxy for rewrite and caching?
MySQL Proxy with:
Lua script
External caching
@proxysql
http://proxysql.com
https://github.com/sysown/proxysql/sysown.com
ProxySQL
Network database proxy that sits transparently
between the application and the database to:
empower the DBAs
improve operation
understand and improve performance
@proxysql
http://proxysql.com
https://github.com/sysown/proxysql/sysown.com
The right way!
Designed by a DBA for DBAs
Experience in a variety of setups
Experience in very large production environments
@proxysql
http://proxysql.com
https://github.com/sysown/proxysql/sysown.com
Features
Some of the most interesting features:
on-the-fly rewrite of queries
caching reads outside the database server
connection pooling and multiplexing
complex query routing and read/write split
load balancing
real time statistics
Monitoring
High Availability and Scalability
Seamless failover
Firewall
Query throttling
query timeout
runtime reconfiguration
@proxysql
http://proxysql.com
https://github.com/sysown/proxysql/sysown.com
Hostgroups and Query Routing
All backends are grouped into hostgroups
Hostgroups have logical functionalities
@proxysql
http://proxysql.com
https://github.com/sysown/proxysql/sysown.com
Hostgroups example #1
HostGroup0 (HG0): Write masters
HostGroup1( HG1): Read slaves
Read/Write split
@proxysql
http://proxysql.com
https://github.com/sysown/proxysql/sysown.com
Hostgroups example #2
HG0: main write masters
HG1: main read slaves
HG2: reporting slaves
HG3: ad-hoc queries slaves
HG4: data warehouse write masters
HG5: data warehouse read slaves
HG6: remote site servers
HG7: test servers
@proxysql
http://proxysql.com
https://github.com/sysown/proxysql/sysown.com
Support for heterogeneous setups
Hostgroups have logical functionalities
No replication relationship between hostgroups
ProxySQL is not replication aware by design,
yet it monitors replication
A query is routed to a single hostgroup
@proxysql
http://proxysql.com
https://github.com/sysown/proxysql/sysown.com
Basic design
HG0
HG2
HG1
ProxySQLAPP
@proxysql
http://proxysql.com
https://github.com/sysown/proxysql/sysown.com
Basic design , example #2
HG0
HG2
HG1
ProxySQL
APP1
APP2
APP3
@proxysql
http://proxysql.com
https://github.com/sysown/proxysql/sysown.com
Internals diagram
HG0
HG1
APP1 ProxySQL
Queries
cache
Queries
Processor
APP2
APP3
Thread#1
Thread#2
Thread#3
@proxysql
http://proxysql.com
https://github.com/sysown/proxysql/sysown.com
Queries Processor
Rewrite queries
Defines what to cache
Defines the hostgroup target
@proxysql
http://proxysql.com
https://github.com/sysown/proxysql/sysown.com
Queries rules
Complex rules to match incoming traffic.
Regex on query
username
schemaname
(a lot more in the roadmap)
Rules can be chained
@proxysql
http://proxysql.com
https://github.com/sysown/proxysql/sysown.com
Queries cache
Caching on the wire
Internal key/value storage
In memory only
Pattern based
Expired by timeout
@proxysql
http://proxysql.com
https://github.com/sysown/proxysql/sysown.com
Queries Cache Benchmark
Benchmark on a 4 cores server
@proxysql
http://proxysql.com
https://github.com/sysown/proxysql/sysown.com
Queries Rewrite
Rewrite on the wire
Regex match/replace
Optionally cached
@proxysql
http://proxysql.com
https://github.com/sysown/proxysql/sysown.com
Queries Rewrite Benchmark
Ref: http://tinyurl.com/oan4528
@proxysql
http://proxysql.com
https://github.com/sysown/proxysql/sysown.com
Users Authentication
HG0
HG1
APP1 ProxySQL
Queries
cache
Query
Processor
APP2
APP3
Thread#1
Thread#2
Thread#3
Users Auth
@proxysql
http://proxysql.com
https://github.com/sysown/proxysql/sysown.com
Users Authentication
Credentials stored in the proxy
User login always possible (even without backends)
Max connections
Security enhancement in roadmap:
different credentials on backends and frontends
internal mapping
@proxysql
http://proxysql.com
https://github.com/sysown/proxysql/sysown.com
Hostgroup Manager
and Connections Pool
HG0
HG1
APP1 ProxySQL
Queries
cache
Query
Processor
APP2
APP3
Thread#1
Thread#2
Thread#3
Users Auth
Connection
Pool
Hostgroup
Manager
@proxysql
http://proxysql.com
https://github.com/sysown/proxysql/sysown.com
Hostgroups Manager
Management of servers
Track servers status
Tightly integrated with the connections pool
@proxysql
http://proxysql.com
https://github.com/sysown/proxysql/sysown.com
Connections Pool
Reduced the overhead of creating new connections, and
are recycled when not in use
One to many connections
Multiplexing & maximum connections
Auto-reconnect and automatic re-execution of queries
Failover management
@proxysql
http://proxysql.com
https://github.com/sysown/proxysql/sysown.com
Multiplexing
Reduce the number of connections against mysqld
(configurable)
Many clients connections (tens of thousands) can use few
backend connections (few hundreds)
Order by waiting time
Few edge cases not handled correctly: open a feature request if you hit any
@proxysql
http://proxysql.com
https://github.com/sysown/proxysql/sysown.com
Auto-reconnect and re-execution
Automatic detection of failures
Graceful handling
Auto-reconnect when possible
Pause until a backend becomes
available
Re-execution of queries
@proxysql
http://proxysql.com
https://github.com/sysown/proxysql/sysown.com
Failover management
Seamless switchover:
http://www.proxysql.com/2015/09/proxysql-tutorial-seamles
s-replication.html
Managed by external process
Switchover in less than 1 second
@proxysql
http://proxysql.com
https://github.com/sysown/proxysql/sysown.com
Monitoring Module
HG0
HG1
APP1 ProxySQL
Queries
cache
Query
Processor
APP2
APP3
Thread#1
Thread#2
Thread#3
Users Auth
Connection
Pool
Hostgroup
Manager
Monitoring
@proxysql
http://proxysql.com
https://github.com/sysown/proxysql/sysown.com
Monitoring Module
It monitors backends and collects metrics
Monitors replication lag and shun hosts
@proxysql
http://proxysql.com
https://github.com/sysown/proxysql/sysown.com
Admin Interface
HG0
HG1
APP1 ProxySQL
Queries
cache
Query
Processor
APP2
APP3
Thread#1
Thread#2
Thread#3
Users Auth
Connection
Pool
Hostgroup
Manager
Admin
Monitoring
@proxysql
http://proxysql.com
https://github.com/sysown/proxysql/sysown.com
Admin Interface
Allows runtime configuration
Exports internal statuses
It uses MySQL protocol
Configuration possible from any client/tool
using MySQL API
@proxysql
http://proxysql.com
https://github.com/sysown/proxysql/sysown.com
Admin Interface
mysql> show databases;
+-----+---------+------------------+
| seq | name | file |
+-----+---------+------------------+
| 0 | main | |
| 2 | disk | /tmp/proxysql.db |
| 3 | stats | |
| 4 | monitor | |
| 5 | myhgm | |
+-----+---------+------------------+
5 rows in set (0.00 sec)
@proxysql
http://proxysql.com
https://github.com/sysown/proxysql/sysown.com
Admin Interface
mysql> SHOW TABLES FROM main;
+-------------------+
| tables |
+-------------------+
| mysql_servers |
| mysql_users |
| mysql_query_rules |
| global_variables |
| mysql_collations |
| debug_levels |
+-------------------+
6 rows in set (0.01 sec)
@proxysql
http://proxysql.com
https://github.com/sysown/proxysql/sysown.com
Admin Interface
mysql> SHOW TABLES FROM stats;
+--------------------------------+
| tables |
+--------------------------------+
| stats_mysql_query_rules |
| stats_mysql_commands_counters |
| stats_mysql_processlist |
| stats_mysql_connection_pool |
| stats_mysql_query_digest |
| stats_mysql_query_digest_reset |
| stats_mysql_global |
+--------------------------------+
7 rows in set (0.00 sec)
@proxysql
http://proxysql.com
https://github.com/sysown/proxysql/sysown.com
Admin Interface
mysql> SHOW TABLES FROM monitor;
+----------------------------------+
| tables |
+----------------------------------+
| mysql_server_connect |
| mysql_server_connect_log |
| mysql_server_ping |
| mysql_server_ping_log |
| mysql_server_replication_lag_log |
+----------------------------------+
5 rows in set (0.00 sec)
@proxysql
http://proxysql.com
https://github.com/sysown/proxysql/sysown.com
Queries cache rules
proxysql-admin> SELECT match_pattern ,
negate_match_pattern neg , destination_hostgroup hs_id ,
cache_ttl ttl FROM mysql_query_rules WHERE
replace_pattern IS NULL ORDER BY rule_id ;
+---------------------+------+-------+------+
| match_pattern | neg | hs_id | ttl |
+---------------------+------+-------+------+
| ^SELECT | 1 | 0 | -1 |
| s+FORs+UPDATEs*$ | 0 | 0 | -1 |
| .* | 0 | 1 | 30 |
+---------------------+------+-------+------+
@proxysql
http://proxysql.com
https://github.com/sysown/proxysql/sysown.com
Queries rewrite rules
proxysql-admin> SELECT match_pattern m, replace_pattern
r , destination_hostgroup hs_id , cache_ttl ttl FROM
mysql_query_rules WHERE replace_pattern IS NOT NULLG
m: ^SELECT(| DISTINCT) c FROM sbtest WHERE id BETWEEN
(.*) AND (.*) ORDER BY c
r: SELECT c FROM sbtest WHERE id BETWEEN 2 AND 3
hs_id: 1
ttl: 30
@proxysql
http://proxysql.com
https://github.com/sysown/proxysql/sysown.com
Deploy ProxySQL
@proxysql
http://proxysql.com
https://github.com/sysown/proxysql/sysown.com
Location, location, location
ProxySQL sits between the application and the
database systems
Where is exactly the best location?
@proxysql
http://proxysql.com
https://github.com/sysown/proxysql/sysown.com
Basic design
HG0
HG2
HG1
APP
APP
ProxySQL
Very low latency using
Unix Domain Socket
@proxysql
http://proxysql.com
https://github.com/sysown/proxysql/sysown.com
Basic design
HG0
HG2
HG1
APP1
ProxySQL
APP2
ProxySQL
APP3
ProxySQL
@proxysql
http://proxysql.com
https://github.com/sysown/proxysql/sysown.com
High Availability
HG0
HG2
HG1
APP1
ProxySQL
APP2
ProxySQL
APP3
ProxySQL
HG0
ProxySQL
ProxySQL
@proxysql
http://proxysql.com
https://github.com/sysown/proxysql/sysown.com
HG0
HG2
HG1
APP1
ProxySQL
APP3
ProxySQL
ProxySQL
ProxySQL
Complex Potential Setups
APP2
ProxySQL
ProxySQL
HG0
HG0
HG0
HG1
ProxySQL
ProxySQL
@proxysql
http://proxysql.com
https://github.com/sysown/proxysql/sysown.com
Hostgroup reconfiguration
HG0
HG1
1
43
ProxySQLAPP 2
Remove host :
all the connections to server2 are terminated
1
Add host :
New connections to HG1 can use also server1
@proxysql
http://proxysql.com
https://github.com/sysown/proxysql/sysown.com
Failover
2 phases process:
remove host
add host
Fully supported
Seamless failover in under 1 second
@proxysql
http://proxysql.com
https://github.com/sysown/proxysql/sysown.com
Failover : 2 phases task
HG0
HG1
1
43ProxySQLAPP 2
1.Connections to an empty hostgroup are put on hold
2
2.Connections to HG0 are resumed
Connections to HG1 were never stopped
1. remove host
2. add host
@proxysql
http://proxysql.com
https://github.com/sysown/proxysql/sysown.com
Distributed failover
Multiple ProxySQL are available in a network
Failover managed by an external process that:
remove host from each ProxySQL instance
add new host into each ProxySQL instance
Manager is not part of ProxySQL.
Ex: MHA or MySQL Utilities
@proxysql
http://proxysql.com
https://github.com/sysown/proxysql/sysown.com
APP1
ProxySQL
APP2
ProxySQL
Distributed failover : remove host
HG0
1
HG1
32 4
MHA
@proxysql
http://proxysql.com
https://github.com/sysown/proxysql/sysown.com
APP1
ProxySQL
APP2
ProxySQL
Distributed failover : add host
HG0
1
HG1
3 4
MHA
2
@proxysql
http://proxysql.com
https://github.com/sysown/proxysql/sysown.com
New features in roadmap
Improved security (SSL support, SQL injection
detection, frontend/backend users, etc) ;
GUI;
Prepared statements;
Support for multiple backends (postgres, redis,
mongo) ;
Enhanced monitoring and statistics;
@proxysql
http://proxysql.com
https://github.com/sysown/proxysql/sysown.com
Try it!
Source code on GitHub:
https://github.com/sysown/proxysql
Binaries on GitHub:
https://github.com/sysown/proxysql-binaries
Forum:
https://groups.google.com/forum/#!forum/proxysql
Tutorial on:
http://www.proxysql.com
@proxysql
http://proxysql.com
https://github.com/sysown/proxysql/sysown.com
Please contact me
Thanks!
Feedback, feature requests, contribution:
rene.cannao@gmail.com
rene@sysown.com
@rene_cannao
@proxysql
Ad

Recommended

Using all of the high availability options in MariaDB
Using all of the high availability options in MariaDB
MariaDB plc
 
ProxySQL for MySQL
ProxySQL for MySQL
Mydbops
 
LISA2019 Linux Systems Performance
LISA2019 Linux Systems Performance
Brendan Gregg
 
Maxscale 소개 1.1.1
Maxscale 소개 1.1.1
NeoClova
 
MaxScale이해와활용-2023.11
MaxScale이해와활용-2023.11
NeoClova
 
MySQL Storage Engines
MySQL Storage Engines
Karthik .P.R
 
M|18 Architectural Overview: MariaDB MaxScale
M|18 Architectural Overview: MariaDB MaxScale
MariaDB plc
 
Intro ProxySQL
Intro ProxySQL
I Goo Lee
 
MongoDB Performance Tuning
MongoDB Performance Tuning
MongoDB
 
Backup and-recovery2
Backup and-recovery2
Command Prompt., Inc
 
Keepalived+MaxScale+MariaDB_운영매뉴얼_1.0.docx
Keepalived+MaxScale+MariaDB_운영매뉴얼_1.0.docx
NeoClova
 
MariaDB MaxScale monitor 매뉴얼
MariaDB MaxScale monitor 매뉴얼
NeoClova
 
Patroni - HA PostgreSQL made easy
Patroni - HA PostgreSQL made easy
Alexander Kukushkin
 
How to Manage Scale-Out Environments with MariaDB MaxScale
How to Manage Scale-Out Environments with MariaDB MaxScale
MariaDB plc
 
MySQL 상태 메시지 분석 및 활용
MySQL 상태 메시지 분석 및 활용
I Goo Lee
 
[2018] MySQL 이중화 진화기
[2018] MySQL 이중화 진화기
NHN FORWARD
 
Maria db 이중화구성_고민하기
Maria db 이중화구성_고민하기
NeoClova
 
MySQL Load Balancers - Maxscale, ProxySQL, HAProxy, MySQL Router & nginx - A ...
MySQL Load Balancers - Maxscale, ProxySQL, HAProxy, MySQL Router & nginx - A ...
Severalnines
 
MySQL Database Architectures - High Availability and Disaster Recovery Solution
MySQL Database Architectures - High Availability and Disaster Recovery Solution
Miguel Araújo
 
Galera cluster for high availability
Galera cluster for high availability
Mydbops
 
MariaDB MaxScale
MariaDB MaxScale
MariaDB plc
 
ProxySQL High Availability (Clustering)
ProxySQL High Availability (Clustering)
Mydbops
 
Webinar: PostgreSQL continuous backup and PITR with Barman
Webinar: PostgreSQL continuous backup and PITR with Barman
Gabriele Bartolini
 
Wars of MySQL Cluster ( InnoDB Cluster VS Galera )
Wars of MySQL Cluster ( InnoDB Cluster VS Galera )
Mydbops
 
Replication Troubleshooting in Classic VS GTID
Replication Troubleshooting in Classic VS GTID
Mydbops
 
PostgreSQL replication
PostgreSQL replication
NTT DATA OSS Professional Services
 
Achieving High Availability in PostgreSQL
Achieving High Availability in PostgreSQL
Mydbops
 
Oracle ASM Training
Oracle ASM Training
Vigilant Technologies
 
ProxySQL Tutorial - PLAM 2016
ProxySQL Tutorial - PLAM 2016
Derek Downey
 
Proxysql use case scenarios hl++ 2017
Proxysql use case scenarios hl++ 2017
Alkin Tezuysal
 

More Related Content

What's hot (20)

MongoDB Performance Tuning
MongoDB Performance Tuning
MongoDB
 
Backup and-recovery2
Backup and-recovery2
Command Prompt., Inc
 
Keepalived+MaxScale+MariaDB_운영매뉴얼_1.0.docx
Keepalived+MaxScale+MariaDB_운영매뉴얼_1.0.docx
NeoClova
 
MariaDB MaxScale monitor 매뉴얼
MariaDB MaxScale monitor 매뉴얼
NeoClova
 
Patroni - HA PostgreSQL made easy
Patroni - HA PostgreSQL made easy
Alexander Kukushkin
 
How to Manage Scale-Out Environments with MariaDB MaxScale
How to Manage Scale-Out Environments with MariaDB MaxScale
MariaDB plc
 
MySQL 상태 메시지 분석 및 활용
MySQL 상태 메시지 분석 및 활용
I Goo Lee
 
[2018] MySQL 이중화 진화기
[2018] MySQL 이중화 진화기
NHN FORWARD
 
Maria db 이중화구성_고민하기
Maria db 이중화구성_고민하기
NeoClova
 
MySQL Load Balancers - Maxscale, ProxySQL, HAProxy, MySQL Router & nginx - A ...
MySQL Load Balancers - Maxscale, ProxySQL, HAProxy, MySQL Router & nginx - A ...
Severalnines
 
MySQL Database Architectures - High Availability and Disaster Recovery Solution
MySQL Database Architectures - High Availability and Disaster Recovery Solution
Miguel Araújo
 
Galera cluster for high availability
Galera cluster for high availability
Mydbops
 
MariaDB MaxScale
MariaDB MaxScale
MariaDB plc
 
ProxySQL High Availability (Clustering)
ProxySQL High Availability (Clustering)
Mydbops
 
Webinar: PostgreSQL continuous backup and PITR with Barman
Webinar: PostgreSQL continuous backup and PITR with Barman
Gabriele Bartolini
 
Wars of MySQL Cluster ( InnoDB Cluster VS Galera )
Wars of MySQL Cluster ( InnoDB Cluster VS Galera )
Mydbops
 
Replication Troubleshooting in Classic VS GTID
Replication Troubleshooting in Classic VS GTID
Mydbops
 
PostgreSQL replication
PostgreSQL replication
NTT DATA OSS Professional Services
 
Achieving High Availability in PostgreSQL
Achieving High Availability in PostgreSQL
Mydbops
 
Oracle ASM Training
Oracle ASM Training
Vigilant Technologies
 
MongoDB Performance Tuning
MongoDB Performance Tuning
MongoDB
 
Keepalived+MaxScale+MariaDB_운영매뉴얼_1.0.docx
Keepalived+MaxScale+MariaDB_운영매뉴얼_1.0.docx
NeoClova
 
MariaDB MaxScale monitor 매뉴얼
MariaDB MaxScale monitor 매뉴얼
NeoClova
 
Patroni - HA PostgreSQL made easy
Patroni - HA PostgreSQL made easy
Alexander Kukushkin
 
How to Manage Scale-Out Environments with MariaDB MaxScale
How to Manage Scale-Out Environments with MariaDB MaxScale
MariaDB plc
 
MySQL 상태 메시지 분석 및 활용
MySQL 상태 메시지 분석 및 활용
I Goo Lee
 
[2018] MySQL 이중화 진화기
[2018] MySQL 이중화 진화기
NHN FORWARD
 
Maria db 이중화구성_고민하기
Maria db 이중화구성_고민하기
NeoClova
 
MySQL Load Balancers - Maxscale, ProxySQL, HAProxy, MySQL Router & nginx - A ...
MySQL Load Balancers - Maxscale, ProxySQL, HAProxy, MySQL Router & nginx - A ...
Severalnines
 
MySQL Database Architectures - High Availability and Disaster Recovery Solution
MySQL Database Architectures - High Availability and Disaster Recovery Solution
Miguel Araújo
 
Galera cluster for high availability
Galera cluster for high availability
Mydbops
 
MariaDB MaxScale
MariaDB MaxScale
MariaDB plc
 
ProxySQL High Availability (Clustering)
ProxySQL High Availability (Clustering)
Mydbops
 
Webinar: PostgreSQL continuous backup and PITR with Barman
Webinar: PostgreSQL continuous backup and PITR with Barman
Gabriele Bartolini
 
Wars of MySQL Cluster ( InnoDB Cluster VS Galera )
Wars of MySQL Cluster ( InnoDB Cluster VS Galera )
Mydbops
 
Replication Troubleshooting in Classic VS GTID
Replication Troubleshooting in Classic VS GTID
Mydbops
 
Achieving High Availability in PostgreSQL
Achieving High Availability in PostgreSQL
Mydbops
 

Similar to ProxySQL - High Performance and HA Proxy for MySQL (20)

ProxySQL Tutorial - PLAM 2016
ProxySQL Tutorial - PLAM 2016
Derek Downey
 
Proxysql use case scenarios hl++ 2017
Proxysql use case scenarios hl++ 2017
Alkin Tezuysal
 
ProxySQL Use Case Scenarios / Alkin Tezuysal (Percona)
ProxySQL Use Case Scenarios / Alkin Tezuysal (Percona)
Ontico
 
Proxysql use case scenarios fosdem17
Proxysql use case scenarios fosdem17
Alkin Tezuysal
 
Proxysql use case scenarios plam 2016
Proxysql use case scenarios plam 2016
Alkin Tezuysal
 
HandsOn ProxySQL Tutorial - PLSC18
HandsOn ProxySQL Tutorial - PLSC18
Derek Downey
 
ProxySQL and the Tricks Up Its Sleeve - Percona Live 2022.pdf
ProxySQL and the Tricks Up Its Sleeve - Percona Live 2022.pdf
Jesmar Cannao'
 
The Proxy Wars - MySQL Router, ProxySQL, MariaDB MaxScale
The Proxy Wars - MySQL Router, ProxySQL, MariaDB MaxScale
Colin Charles
 
Percona University - ProxySQL para MySQL
Percona University - ProxySQL para MySQL
Marcelo Altmann
 
MySQL Proxy. A powerful, flexible MySQL toolbox.
MySQL Proxy. A powerful, flexible MySQL toolbox.
Miguel Araújo
 
Mysql Proxy Presentation Yahoo
Mysql Proxy Presentation Yahoo
Chris Westin
 
Mysql proxy presentation_yahoo
Mysql proxy presentation_yahoo
Chris Westin
 
MySQL Proxy tutorial
MySQL Proxy tutorial
Giuseppe Maxia
 
Fortify aws aurora_proxy
Fortify aws aurora_proxy
Marco Tusa
 
MySQL Proxy
MySQL Proxy
Manikanda kumar
 
Proxy SQL 2.0 with PXC
Proxy SQL 2.0 with PXC
Vinicius M Grippa
 
HTTP, JSON, JavaScript, Map&Reduce built-in to MySQL
HTTP, JSON, JavaScript, Map&Reduce built-in to MySQL
Ulf Wendel
 
DB Floripa - ProxySQL para MySQL
DB Floripa - ProxySQL para MySQL
Marcelo Altmann
 
My SQL 101
My SQL 101
Dave Stokes
 
Fortify aws aurora_proxy_2019_pleu
Fortify aws aurora_proxy_2019_pleu
Marco Tusa
 
ProxySQL Tutorial - PLAM 2016
ProxySQL Tutorial - PLAM 2016
Derek Downey
 
Proxysql use case scenarios hl++ 2017
Proxysql use case scenarios hl++ 2017
Alkin Tezuysal
 
ProxySQL Use Case Scenarios / Alkin Tezuysal (Percona)
ProxySQL Use Case Scenarios / Alkin Tezuysal (Percona)
Ontico
 
Proxysql use case scenarios fosdem17
Proxysql use case scenarios fosdem17
Alkin Tezuysal
 
Proxysql use case scenarios plam 2016
Proxysql use case scenarios plam 2016
Alkin Tezuysal
 
HandsOn ProxySQL Tutorial - PLSC18
HandsOn ProxySQL Tutorial - PLSC18
Derek Downey
 
ProxySQL and the Tricks Up Its Sleeve - Percona Live 2022.pdf
ProxySQL and the Tricks Up Its Sleeve - Percona Live 2022.pdf
Jesmar Cannao'
 
The Proxy Wars - MySQL Router, ProxySQL, MariaDB MaxScale
The Proxy Wars - MySQL Router, ProxySQL, MariaDB MaxScale
Colin Charles
 
Percona University - ProxySQL para MySQL
Percona University - ProxySQL para MySQL
Marcelo Altmann
 
MySQL Proxy. A powerful, flexible MySQL toolbox.
MySQL Proxy. A powerful, flexible MySQL toolbox.
Miguel Araújo
 
Mysql Proxy Presentation Yahoo
Mysql Proxy Presentation Yahoo
Chris Westin
 
Mysql proxy presentation_yahoo
Mysql proxy presentation_yahoo
Chris Westin
 
Fortify aws aurora_proxy
Fortify aws aurora_proxy
Marco Tusa
 
HTTP, JSON, JavaScript, Map&Reduce built-in to MySQL
HTTP, JSON, JavaScript, Map&Reduce built-in to MySQL
Ulf Wendel
 
DB Floripa - ProxySQL para MySQL
DB Floripa - ProxySQL para MySQL
Marcelo Altmann
 
Fortify aws aurora_proxy_2019_pleu
Fortify aws aurora_proxy_2019_pleu
Marco Tusa
 
Ad

Recently uploaded (20)

Measurecamp Copenhagen - Consent Context
Measurecamp Copenhagen - Consent Context
Human37
 
Presentation by Tariq & Mohammed (1).pptx
Presentation by Tariq & Mohammed (1).pptx
AbooddSandoqaa
 
presentation4.pdf Intro to mcmc methodss
presentation4.pdf Intro to mcmc methodss
SergeyTsygankov6
 
NASA ESE Study Results v4 05.29.2020.pptx
NASA ESE Study Results v4 05.29.2020.pptx
CiroAlejandroCamacho
 
PPT1_CB_VII_CS_Ch3_FunctionsandChartsinCalc.ppsx
PPT1_CB_VII_CS_Ch3_FunctionsandChartsinCalc.ppsx
animaroy81
 
PPT2 W1L2.pptx.........................................
PPT2 W1L2.pptx.........................................
palicteronalyn26
 
英国毕业证范本利物浦约翰摩尔斯大学成绩单底纹防伪LJMU学生证办理学历认证
英国毕业证范本利物浦约翰摩尔斯大学成绩单底纹防伪LJMU学生证办理学历认证
taqyed
 
Prescriptive Process Monitoring Under Uncertainty and Resource Constraints: A...
Prescriptive Process Monitoring Under Uncertainty and Resource Constraints: A...
Mahmoud Shoush
 
Camuflaje Tipos Características Militar 2025.ppt
Camuflaje Tipos Características Militar 2025.ppt
e58650738
 
624753984-Annex-A3-RPMS-Tool-for-Proficient-Teachers-SY-2024-2025.pdf
624753984-Annex-A3-RPMS-Tool-for-Proficient-Teachers-SY-2024-2025.pdf
CristineGraceAcuyan
 
UPS and Big Data intro to Business Analytics.pptx
UPS and Big Data intro to Business Analytics.pptx
sanjum5582
 
NVIDIA Triton Inference Server, a game-changing platform for deploying AI mod...
NVIDIA Triton Inference Server, a game-changing platform for deploying AI mod...
Tamanna36
 
Residential Zone 4 for industrial village
Residential Zone 4 for industrial village
MdYasinArafat13
 
最新版美国佐治亚大学毕业证(UGA毕业证书)原版定制
最新版美国佐治亚大学毕业证(UGA毕业证书)原版定制
Taqyea
 
最新版美国威斯康星大学河城分校毕业证(UWRF毕业证书)原版定制
最新版美国威斯康星大学河城分校毕业证(UWRF毕业证书)原版定制
taqyea
 
The Influence off Flexible Work Policies
The Influence off Flexible Work Policies
sales480687
 
Indigo dyeing Presentation (2).pptx as dye
Indigo dyeing Presentation (2).pptx as dye
shreeroop1335
 
一比一原版(TUC毕业证书)开姆尼茨工业大学毕业证如何办理
一比一原版(TUC毕业证书)开姆尼茨工业大学毕业证如何办理
taqyed
 
Indigo_Airlines_Strategy_Presentation.pptx
Indigo_Airlines_Strategy_Presentation.pptx
mukeshpurohit991
 
11_L2_Defects_and_Trouble_Shooting_2014[1].pdf
11_L2_Defects_and_Trouble_Shooting_2014[1].pdf
gun3awan88
 
Measurecamp Copenhagen - Consent Context
Measurecamp Copenhagen - Consent Context
Human37
 
Presentation by Tariq & Mohammed (1).pptx
Presentation by Tariq & Mohammed (1).pptx
AbooddSandoqaa
 
presentation4.pdf Intro to mcmc methodss
presentation4.pdf Intro to mcmc methodss
SergeyTsygankov6
 
NASA ESE Study Results v4 05.29.2020.pptx
NASA ESE Study Results v4 05.29.2020.pptx
CiroAlejandroCamacho
 
PPT1_CB_VII_CS_Ch3_FunctionsandChartsinCalc.ppsx
PPT1_CB_VII_CS_Ch3_FunctionsandChartsinCalc.ppsx
animaroy81
 
PPT2 W1L2.pptx.........................................
PPT2 W1L2.pptx.........................................
palicteronalyn26
 
英国毕业证范本利物浦约翰摩尔斯大学成绩单底纹防伪LJMU学生证办理学历认证
英国毕业证范本利物浦约翰摩尔斯大学成绩单底纹防伪LJMU学生证办理学历认证
taqyed
 
Prescriptive Process Monitoring Under Uncertainty and Resource Constraints: A...
Prescriptive Process Monitoring Under Uncertainty and Resource Constraints: A...
Mahmoud Shoush
 
Camuflaje Tipos Características Militar 2025.ppt
Camuflaje Tipos Características Militar 2025.ppt
e58650738
 
624753984-Annex-A3-RPMS-Tool-for-Proficient-Teachers-SY-2024-2025.pdf
624753984-Annex-A3-RPMS-Tool-for-Proficient-Teachers-SY-2024-2025.pdf
CristineGraceAcuyan
 
UPS and Big Data intro to Business Analytics.pptx
UPS and Big Data intro to Business Analytics.pptx
sanjum5582
 
NVIDIA Triton Inference Server, a game-changing platform for deploying AI mod...
NVIDIA Triton Inference Server, a game-changing platform for deploying AI mod...
Tamanna36
 
Residential Zone 4 for industrial village
Residential Zone 4 for industrial village
MdYasinArafat13
 
最新版美国佐治亚大学毕业证(UGA毕业证书)原版定制
最新版美国佐治亚大学毕业证(UGA毕业证书)原版定制
Taqyea
 
最新版美国威斯康星大学河城分校毕业证(UWRF毕业证书)原版定制
最新版美国威斯康星大学河城分校毕业证(UWRF毕业证书)原版定制
taqyea
 
The Influence off Flexible Work Policies
The Influence off Flexible Work Policies
sales480687
 
Indigo dyeing Presentation (2).pptx as dye
Indigo dyeing Presentation (2).pptx as dye
shreeroop1335
 
一比一原版(TUC毕业证书)开姆尼茨工业大学毕业证如何办理
一比一原版(TUC毕业证书)开姆尼茨工业大学毕业证如何办理
taqyed
 
Indigo_Airlines_Strategy_Presentation.pptx
Indigo_Airlines_Strategy_Presentation.pptx
mukeshpurohit991
 
11_L2_Defects_and_Trouble_Shooting_2014[1].pdf
11_L2_Defects_and_Trouble_Shooting_2014[1].pdf
gun3awan88
 
Ad

ProxySQL - High Performance and HA Proxy for MySQL