SlideShare a Scribd company logo
1 of 79
Download to read offline
Common MySQL Scalability Mistakes - 2010.10
Common MySQL
Scalability Mistakes
Ronald Bradford
OTN LAD Tour
South America
2010.10
www.RonaldBradford.com
Ronald Bradford
http://ronaldbradford.com
Common MySQL Scalability Mistakes - 2010.10
9
Common MySQL Scalability Mistakes - 2010.10
My website seems to
freeze or responds
randomly?
PROBLEM
Common MySQL Scalability Mistakes - 2010.10
The default MyISAM
storage engine uses
exclusive table locks for
DML.
CAUSE
Common MySQL Scalability Mistakes - 2010.10
Optimize blocking query
performance
Use a transactional engine
with MVCC and row based
locking to address the
LOCKING issue
SOLUTION
Common MySQL Scalability Mistakes - 2010.10
End user report that selects all
customer, order, order lines and
order history data and performs
poor joins. This takes shared read
locks blocking future write locks
then future reads.
EXAMPLE
Common MySQL Scalability Mistakes - 2010.10
MySQL is unique in that it offers
different mechanisms for storing
and retrieving data, each with
strengths and weaknesses.
The DEFAULT is not always the
best.
WHY
Common MySQL Scalability Mistakes - 2010.10
MySQL PROCESSLIST
Blocked have State = Locked
Blocker - Same table, larger Time
HOW
mysql> SHOW PROCESSLIST;
+----+------+-----------+-------+---------+------+------------+---------------
| Id | User | Host | db | Command | Time | State | Info
+----+------+-----------+-------+---------+------+------------+---------------
| 13 | app1 | localhost | odtug | Query | 144 | User sleep | UPDATE emp ...
| 14 | app1 | localhost | odtug | Query | 116 | Locked | select c from emp
| 15 | app1 | localhost | odtug | Query | 89 | Locked | select c from emp
Common MySQL Scalability Mistakes - 2010.10
Optimize Blocker
Indexes
Limit query
Summary table
Change storage engine
HOW
Common MySQL Scalability Mistakes - 2010.10
8
Common MySQL Scalability Mistakes - 2010.10
Why is my database so
large?
PROBLEM
Common MySQL Scalability Mistakes - 2010.10
Don’t store large static
objects in the database
SOLUTION
Common MySQL Scalability Mistakes - 2010.10
80% of data is email content/
attachments
60% of data is PDF documents
30% of data is uncompressed large
XML objects
EXAMPLE
Common MySQL Scalability Mistakes - 2010.10
Maximize memory usage
for important data
Reduce database recovery
time
WHY
Common MySQL Scalability Mistakes - 2010.10
Compress large text data
90% saving on XML data
Store static data in files
Avoids DB handling overhead
HOW
Common MySQL Scalability Mistakes - 2010.10
HOW
Table Size per schema
# Schema Table Usage
SELECT table_schema,table_name,engine,row_format, table_rows, avg_row_length,
(data_length+index_length)/1024/1024 as total_mb,
(data_length)/1024/1024 as data_mb,
(index_length)/1024/1024 as index_mb,
CURDATE() AS today
FROM information_schema.tables
WHERE table_schema = DATABASE()
ORDER BY 7 DESC;
http://ronaldbradford.com/mysql-dba/
Common MySQL Scalability Mistakes - 2010.10
7
Common MySQL Scalability Mistakes - 2010.10
I can't access my website?
PROBLEM
Common MySQL Scalability Mistakes - 2010.10
TRUE STORY
Common MySQL Scalability Mistakes - 2010.10
Question:
TRUE STORY
Common MySQL Scalability Mistakes - 2010.10
Question:
How do you know when your server
is down or not accessible?
TRUE STORY
Common MySQL Scalability Mistakes - 2010.10
Question:
How do you know when your server
is down or not accessible?
Answer:
TRUE STORY
Common MySQL Scalability Mistakes - 2010.10
Question:
How do you know when your server
is down or not accessible?
Answer:
The users will let us know.
TRUE STORY
Common MySQL Scalability Mistakes - 2010.10
SOLUTION
Integrated monitoring
including graphical
interface, real time
analysis and notification
Common MySQL Scalability Mistakes - 2010.10
Monitoring/Alerting
Graphical
Historical
Necessary
Generally missing/incomplete
Useless for real-time analysis
HOW
Common MySQL Scalability Mistakes - 2010.10
Dashboard
The state of NOW
Sampling at 1s/3s/5s
e.g. 0.1% of throughput
HOW
Common MySQL Scalability Mistakes - 2010.10
Instrumentation
Important to business viability
e.g. orders per minute
page load time
Seamless implementation
i.e. no code changes to view real-time
extensible
HOW
Common MySQL Scalability Mistakes - 2010.10
6
Common MySQL Scalability Mistakes - 2010.10
My replication slave can't
keep up?
PROBLEM
Common MySQL Scalability Mistakes - 2010.10
Know the weakest link(s)
of MySQL replication and
don't exceed that,
or cheat.
SOLUTION
Common MySQL Scalability Mistakes - 2010.10
If replication can't catchup,
slaves are useless.
Backup & recovery may
also suffer.
WHY
Common MySQL Scalability Mistakes - 2010.10
Master
DML Statement
Write Data/Redo Log
Write Binary Log
Return OK to client
HOW
Common MySQL Scalability Mistakes - 2010.10
Slave
Detect master log change
Retrieve binary log entry
Write relay log (IO_THREAD)
Read relay log
Apply DML (SQL_THREAD)
Write Data/redo log
HOW
Common MySQL Scalability Mistakes - 2010.10
Replication workarounds
Restrict queries executed
--ignore
Different storage engines
Different index structures
HOW
Common MySQL Scalability Mistakes - 2010.10
Advanced workarounds
RAID 0 (large number of slaves)
Pre fetch thread
EXPERT TIP
Common MySQL Scalability Mistakes - 2010.10
5
Common MySQL Scalability Mistakes - 2010.10
My server has crashed with
a hard drive failure
PROBLEM
Common MySQL Scalability Mistakes - 2010.10
Question:
Have you ever performed a database recovery?
Answer:
No, why?
TRUE STORY
Common MySQL Scalability Mistakes - 2010.10
Consultant:
Do you know that your daily backups only
recover the data up to that time, e.g. 1am. You
know you have lost all your sales and changes
since then.
Customer:
No, I didn’t know that.
TRUE STORY
Common MySQL Scalability Mistakes - 2010.10
Have a DR Plan
Documented
Tested
Timed
Verified - End to End
SOLUTION
Common MySQL Scalability Mistakes - 2010.10
Do you pass the MySQL backup/
recovery quiz?
http://rb42.com/mysql-backup-quiz
HOW
Common MySQL Scalability Mistakes - 2010.10
1. Do you have MySQL backups in place?
2. Do you backup ALL your MySQL data?
3. Do you have consistent MySQL backups?
4. Do you have backups that include both static snapshot and point in
time transactions?
5. Do you review your backup logs EVERY SINGLE day or have tested
backup monitoring in place?
6. Do you perform a test recovery of your static backup?
7. Do you perform a test recovery to point in time?
8. Do you time your backup and recovery process and review over time?
9. Do you have off-site copies of your backups?
10. Do you backup your primary binary logs?
QUIZ
http://rb42.com/mysql-backup-quiz
Common MySQL Scalability Mistakes - 2010.10
4
Common MySQL Scalability Mistakes - 2010.10
Why is my database
executing 1,200 qps
for 50 users?
PROBLEM
Common MySQL Scalability Mistakes - 2010.10
Determine what queries
are running and why they
are running?
SOLUTION
Common MySQL Scalability Mistakes - 2010.10
Excessive SQL statements
Duplicate
Redundant
Cachable
Row at a time (RAT)
CAUSE
Common MySQL Scalability Mistakes - 2010.10
Reducing SQL load both
improves performance now
and provides greater
capacity as you scale
WHY
Common MySQL Scalability Mistakes - 2010.10
EXAMPLE
http://ronaldbradford.com/blog/optimizing-sql-performance-the-art-of-elimination-2010-07-08/
SELECT * FROM activities_theme WHERE theme_parent_id=0
SELECT * FROM activities_theme WHERE theme_parent_id=1
SELECT * FROM activities_theme WHERE theme_parent_id=2
SELECT * FROM activities_theme WHERE theme_parent_id=11
SELECT * FROM activities_theme WHERE theme_parent_id=16
SELECT *
FROM activities_theme
WHERE theme_parent_id in (0,1,2,11,16)
CAT
RAT
Common MySQL Scalability Mistakes - 2010.10
EXAMPLE
http://ronaldbradford.com/blog/optimizing-sql-performance-the-art-of-elimination-2010-07-08/
5 Query SELECT * FROM `artist`
5 Query SELECT * FROM `artist`
5 Query SELECT * FROM `artist`
5 Query SELECT * FROM `artist`
5 Query SELECT * FROM `artist`
5 Query SELECT * FROM `artist` WHERE (ArtistID = 196 )
5 Query SELECT * FROM `artist` WHERE (ArtistID = 2188 )
5 Query SELECT * FROM `artist`
5 Query SELECT * FROM `artist`
5 Query SELECT * FROM `artist`
Duplicate
Unnecessary
Only 2 queries
necessary or 1 CAT
Common MySQL Scalability Mistakes - 2010.10
EXAMPLE
http://ronaldbradford.com/blog/optimizing-sql-performance-the-art-of-elimination-2010-07-08/
SELECT pages_id, pages_livestats_code, pages_title,
pages_parent, pages_exhibid, pages_theme,
pages_accession_num
FROM pages WHERE pages_id = 0
5 minutes
6000 executions
0 is out of bounds
Unnecessary
Common MySQL Scalability Mistakes - 2010.10
Capture & Analyze
DML is easy
SELECT is harder
HOW
http://www.slideshare.net/ronaldbradford/capturing-analyzing-and-optimizing-mysql
Common MySQL Scalability Mistakes - 2010.10
MySQL Binary Log (Archive Redo)
mysqlbinlog
mk-query-digest
One Liner
HOW
http://ronaldbradford.com/blog/mysql-dml-stats-per-table-2009-09-09/
Common MySQL Scalability Mistakes - 2010.10
HOW
55463 update sessions
25574 insert into sessions
12820 update items
11636 insert into item_categories
7532 update users
5168 delete from item_categories
4076 update extended_item_infos
3701 insert into sphinx_new_items
3701 insert into mini_items
2190 update sweet_bars
1922 update chat_users
1662 update item_shipping_infos
1265 update search_terms
1260 insert into images
931 delete from item_shipping_infos
825 update booths
713 update booth_stats
574 update topics
540 update offers
81k of 141k
Top 2 queries = 57%
Common MySQL Scalability Mistakes - 2010.10
Process List
General Log
tcpdump
Application
HOW
Common MySQL Scalability Mistakes - 2010.10
Capturing, Analyzing and Optimizing
your SQL
http://www.slideshare.net/ronaldbradford/capturing-analyzing-and-
optimizing-mysql
HOW
Common MySQL Scalability Mistakes - 2010.10
/* Comment your queries */
The more products you have, the
more developers you have, the
more time you spend in code
identification before you can even
determine a resolution
EXPERT TIP
Common MySQL Scalability Mistakes - 2010.10
3
Common MySQL Scalability Mistakes - 2010.10
The database is slow.
My webpage takes five
seconds to load.
PROBLEM
Common MySQL Scalability Mistakes - 2010.10
Evaluate the time taken in
the database and all
stages in between
SOLUTION
Common MySQL Scalability Mistakes - 2010.10
Client example showed a webpage
taking 5 seconds to load. The html
component was taking only 400 ms.
Any MySQL performance
improvement will only tune 8% of
the total time.
EXAMPLE
Common MySQL Scalability Mistakes - 2010.10
Performance is important
to end user
Performance is perception
WHY
Common MySQL Scalability Mistakes - 2010.10
Firebug - http://getfirebug.com/
Httpwatch - http://httpwatch.com/
Page speed - http://code.google.com/speed/page-speed/
YSlow - http://developer.yahoo.com/yslow/
wget/curl
Application code instrumentation
HOW
Common MySQL Scalability Mistakes - 2010.10
http://www.stevesouders.com/
http://developer.yahoo.com/
performance/rules.html
EXPERT TIP
Common MySQL Scalability Mistakes - 2010.10
2
Common MySQL Scalability Mistakes - 2010.10
I want to add new H/W.
How do I change my
application to support this?
PROBLEM
Common MySQL Scalability Mistakes - 2010.10
Develop a seamless
integration that requires no
code changes, no downtime
and very little additional
physical resources.
SOLUTION
Common MySQL Scalability Mistakes - 2010.10
Integrated monitoring and
instrumentation
Deployed from Day 1
HOW
Common MySQL Scalability Mistakes - 2010.10
Seamless automated server
deployment
Version Control
Build & Release
Runtime config management
Automated discovery
HOW
Common MySQL Scalability Mistakes - 2010.10
API
One code path for business
functionality
Implied business documentation
Enforced data exchange standard
Testability
HOW
Common MySQL Scalability Mistakes - 2010.10
Different levels of data availability
Read & Write
Read Only
No Access
Cached
HOW
Common MySQL Scalability Mistakes - 2010.10
Different principles for scalability
Read Scalability
Write Scalability
Caching
HOW
Common MySQL Scalability Mistakes - 2010.10
Successful MySQL Scalability
1. Integrated monitoring & instrumentation
2. Seamless automated server deployment
3. Disaster is inevitable
4. Application Programming Interface
5. Support different levels of data availability
6. Support different scalability principles
REFERENCE
http://ronaldbradford.com/blog/successful-mysql-scalability-presentation-2010-09-17/
Common MySQL Scalability Mistakes - 2010.10
1
Common MySQL Scalability Mistakes - 2010.10
My website is slow?
PROBLEM
Common MySQL Scalability Mistakes - 2010.10
Seek professional advice.
Hire for example Ronald Bradford.
20+ years of system architecture, database design and
performance tuning.
Employment as Consultant for Oracle Corporation (96-99)
Employment as Senior Consultant for MySQL Inc (06-08)
SOLUTION
Common MySQL Scalability Mistakes - 2010.10
R
Common MySQL Scalability Mistakes - 2010.10
Monitoring. Before, during and after NOW.
You may not be able to predict the future
but you can preempt the future.
Choose the best product and features for
you needs.
The best SQL statement is the one
you never have to execute.
RECAP
Common MySQL Scalability Mistakes - 2010.10
3 levels of real time data access.
Read/Write, Read and no access
3 aspects of scalability.
Read, Write and Caching
Operate below 90% capacity. That 10% is
your insurance.
RECAP
Common MySQL Scalability Mistakes - 2010.10
http://ronaldbradford.com
me@ronaldbradford.com
CONTACT

More Related Content

What's hot

MySQL High Availability and Disaster Recovery with Continuent, a VMware company
MySQL High Availability and Disaster Recovery with Continuent, a VMware companyMySQL High Availability and Disaster Recovery with Continuent, a VMware company
MySQL High Availability and Disaster Recovery with Continuent, a VMware companyContinuent
 
MySQL For Oracle DBA's and Developers
MySQL For Oracle DBA's and DevelopersMySQL For Oracle DBA's and Developers
MySQL For Oracle DBA's and DevelopersRonald Bradford
 
MySQL Enterprise Backup - BnR Scenarios
MySQL Enterprise Backup - BnR ScenariosMySQL Enterprise Backup - BnR Scenarios
MySQL Enterprise Backup - BnR ScenariosKeith Hollman
 
MySQL Performance Tuning: The Perfect Scalability (OOW2019)
MySQL Performance Tuning: The Perfect Scalability (OOW2019)MySQL Performance Tuning: The Perfect Scalability (OOW2019)
MySQL Performance Tuning: The Perfect Scalability (OOW2019)Mirko Ortensi
 
MySQL Performance Best Practices
MySQL Performance Best PracticesMySQL Performance Best Practices
MySQL Performance Best PracticesOlivier DASINI
 
MySQL 5.7 -- SCaLE Feb 2014
MySQL 5.7 -- SCaLE Feb 2014MySQL 5.7 -- SCaLE Feb 2014
MySQL 5.7 -- SCaLE Feb 2014Dave Stokes
 
Posscon my sql56
Posscon my sql56Posscon my sql56
Posscon my sql56Dave Stokes
 
MySQL's new Secure by Default Install -- All Things Open October 20th 2015
MySQL's new Secure by Default Install -- All Things Open October 20th 2015MySQL's new Secure by Default Install -- All Things Open October 20th 2015
MySQL's new Secure by Default Install -- All Things Open October 20th 2015Dave Stokes
 
MySQL Performance Tuning. Part 1: MySQL Configuration (includes MySQL 5.7)
MySQL Performance Tuning. Part 1: MySQL Configuration (includes MySQL 5.7)MySQL Performance Tuning. Part 1: MySQL Configuration (includes MySQL 5.7)
MySQL Performance Tuning. Part 1: MySQL Configuration (includes MySQL 5.7)Aurimas Mikalauskas
 
MySQL Performance Tuning Variables
MySQL Performance Tuning VariablesMySQL Performance Tuning Variables
MySQL Performance Tuning VariablesFromDual GmbH
 
MySQL For Oracle Developers
MySQL For Oracle DevelopersMySQL For Oracle Developers
MySQL For Oracle DevelopersRonald Bradford
 
MySQL 5.7 - What's new and How to upgrade
MySQL 5.7 - What's new and How to upgradeMySQL 5.7 - What's new and How to upgrade
MySQL 5.7 - What's new and How to upgradeAbel Flórez
 
MySQL 5.7 New Features to Exploit -- PHPTek/Chicago MySQL User Group May 2014
MySQL 5.7 New Features to Exploit -- PHPTek/Chicago MySQL User Group May 2014MySQL 5.7 New Features to Exploit -- PHPTek/Chicago MySQL User Group May 2014
MySQL 5.7 New Features to Exploit -- PHPTek/Chicago MySQL User Group May 2014Dave Stokes
 
Southeast Linuxfest -- MySQL User Admin Tips & Tricks
Southeast Linuxfest -- MySQL User Admin Tips & TricksSoutheast Linuxfest -- MySQL User Admin Tips & Tricks
Southeast Linuxfest -- MySQL User Admin Tips & TricksDave Stokes
 
Tx lf propercareandfeedmysql
Tx lf propercareandfeedmysqlTx lf propercareandfeedmysql
Tx lf propercareandfeedmysqlDave Stokes
 
Greenplum versus redshift and actian vectorwise comparison
Greenplum versus redshift and actian vectorwise comparisonGreenplum versus redshift and actian vectorwise comparison
Greenplum versus redshift and actian vectorwise comparisonDr. Syed Hassan Amin
 
MySQL 5.6 Updates
MySQL 5.6 UpdatesMySQL 5.6 Updates
MySQL 5.6 UpdatesDave Stokes
 
Scaling MySQl 1 to N Servers -- Los Angelese MySQL User Group Feb 2014
Scaling MySQl 1 to N Servers -- Los Angelese MySQL User Group Feb 2014Scaling MySQl 1 to N Servers -- Los Angelese MySQL User Group Feb 2014
Scaling MySQl 1 to N Servers -- Los Angelese MySQL User Group Feb 2014Dave Stokes
 
UKOUG 2011: MySQL Architectures for Oracle DBA's
UKOUG 2011: MySQL Architectures for Oracle DBA'sUKOUG 2011: MySQL Architectures for Oracle DBA's
UKOUG 2011: MySQL Architectures for Oracle DBA'sFromDual GmbH
 

What's hot (20)

MySQL High Availability and Disaster Recovery with Continuent, a VMware company
MySQL High Availability and Disaster Recovery with Continuent, a VMware companyMySQL High Availability and Disaster Recovery with Continuent, a VMware company
MySQL High Availability and Disaster Recovery with Continuent, a VMware company
 
MySQL For Oracle DBA's and Developers
MySQL For Oracle DBA's and DevelopersMySQL For Oracle DBA's and Developers
MySQL For Oracle DBA's and Developers
 
MySQL Enterprise Backup - BnR Scenarios
MySQL Enterprise Backup - BnR ScenariosMySQL Enterprise Backup - BnR Scenarios
MySQL Enterprise Backup - BnR Scenarios
 
MySQL Performance Tuning: The Perfect Scalability (OOW2019)
MySQL Performance Tuning: The Perfect Scalability (OOW2019)MySQL Performance Tuning: The Perfect Scalability (OOW2019)
MySQL Performance Tuning: The Perfect Scalability (OOW2019)
 
MySQL Performance Best Practices
MySQL Performance Best PracticesMySQL Performance Best Practices
MySQL Performance Best Practices
 
MySQL 5.7 -- SCaLE Feb 2014
MySQL 5.7 -- SCaLE Feb 2014MySQL 5.7 -- SCaLE Feb 2014
MySQL 5.7 -- SCaLE Feb 2014
 
Posscon my sql56
Posscon my sql56Posscon my sql56
Posscon my sql56
 
MySQL's new Secure by Default Install -- All Things Open October 20th 2015
MySQL's new Secure by Default Install -- All Things Open October 20th 2015MySQL's new Secure by Default Install -- All Things Open October 20th 2015
MySQL's new Secure by Default Install -- All Things Open October 20th 2015
 
MySQL Performance Tuning. Part 1: MySQL Configuration (includes MySQL 5.7)
MySQL Performance Tuning. Part 1: MySQL Configuration (includes MySQL 5.7)MySQL Performance Tuning. Part 1: MySQL Configuration (includes MySQL 5.7)
MySQL Performance Tuning. Part 1: MySQL Configuration (includes MySQL 5.7)
 
MySQL Performance Tuning Variables
MySQL Performance Tuning VariablesMySQL Performance Tuning Variables
MySQL Performance Tuning Variables
 
MySQL For Oracle Developers
MySQL For Oracle DevelopersMySQL For Oracle Developers
MySQL For Oracle Developers
 
MySQL 5.7 - What's new and How to upgrade
MySQL 5.7 - What's new and How to upgradeMySQL 5.7 - What's new and How to upgrade
MySQL 5.7 - What's new and How to upgrade
 
Perf Tuning Short
Perf Tuning ShortPerf Tuning Short
Perf Tuning Short
 
MySQL 5.7 New Features to Exploit -- PHPTek/Chicago MySQL User Group May 2014
MySQL 5.7 New Features to Exploit -- PHPTek/Chicago MySQL User Group May 2014MySQL 5.7 New Features to Exploit -- PHPTek/Chicago MySQL User Group May 2014
MySQL 5.7 New Features to Exploit -- PHPTek/Chicago MySQL User Group May 2014
 
Southeast Linuxfest -- MySQL User Admin Tips & Tricks
Southeast Linuxfest -- MySQL User Admin Tips & TricksSoutheast Linuxfest -- MySQL User Admin Tips & Tricks
Southeast Linuxfest -- MySQL User Admin Tips & Tricks
 
Tx lf propercareandfeedmysql
Tx lf propercareandfeedmysqlTx lf propercareandfeedmysql
Tx lf propercareandfeedmysql
 
Greenplum versus redshift and actian vectorwise comparison
Greenplum versus redshift and actian vectorwise comparisonGreenplum versus redshift and actian vectorwise comparison
Greenplum versus redshift and actian vectorwise comparison
 
MySQL 5.6 Updates
MySQL 5.6 UpdatesMySQL 5.6 Updates
MySQL 5.6 Updates
 
Scaling MySQl 1 to N Servers -- Los Angelese MySQL User Group Feb 2014
Scaling MySQl 1 to N Servers -- Los Angelese MySQL User Group Feb 2014Scaling MySQl 1 to N Servers -- Los Angelese MySQL User Group Feb 2014
Scaling MySQl 1 to N Servers -- Los Angelese MySQL User Group Feb 2014
 
UKOUG 2011: MySQL Architectures for Oracle DBA's
UKOUG 2011: MySQL Architectures for Oracle DBA'sUKOUG 2011: MySQL Architectures for Oracle DBA's
UKOUG 2011: MySQL Architectures for Oracle DBA's
 

Similar to MySQL Scalability Mistakes - OTN

Exploring mysql cluster 7.4
Exploring mysql cluster 7.4Exploring mysql cluster 7.4
Exploring mysql cluster 7.4Ivan Ma
 
Ohio Linux Fest -- MySQL's NoSQL
Ohio Linux Fest -- MySQL's NoSQLOhio Linux Fest -- MySQL's NoSQL
Ohio Linux Fest -- MySQL's NoSQLDave Stokes
 
My sql susecon_crashcourse_2012
My sql susecon_crashcourse_2012My sql susecon_crashcourse_2012
My sql susecon_crashcourse_2012sqlhjalp
 
MySQL London Tech Tour March 2015 - Whats New
MySQL London Tech Tour March 2015 - Whats NewMySQL London Tech Tour March 2015 - Whats New
MySQL London Tech Tour March 2015 - Whats NewMark Swarbrick
 
Database2011 MySQL Sharding
Database2011 MySQL ShardingDatabase2011 MySQL Sharding
Database2011 MySQL ShardingMoshe Kaplan
 
My sql vivo_5.5_product_update_pt
My sql  vivo_5.5_product_update_ptMy sql  vivo_5.5_product_update_pt
My sql vivo_5.5_product_update_ptMySQL Brasil
 
MySQL's NoSQL -- Texas Linuxfest August 22nd 2015
MySQL's NoSQL  -- Texas Linuxfest August 22nd 2015MySQL's NoSQL  -- Texas Linuxfest August 22nd 2015
MySQL's NoSQL -- Texas Linuxfest August 22nd 2015Dave Stokes
 
Quick And Easy Guide To Speeding Up MySQL for web developers
Quick And Easy Guide To Speeding Up MySQL for web developersQuick And Easy Guide To Speeding Up MySQL for web developers
Quick And Easy Guide To Speeding Up MySQL for web developersJonathan Levin
 
What's New in MySQL 5.7
What's New in MySQL 5.7What's New in MySQL 5.7
What's New in MySQL 5.7Olivier DASINI
 
MySQL 5.7: What's New, Nov. 2015
MySQL 5.7: What's New, Nov. 2015MySQL 5.7: What's New, Nov. 2015
MySQL 5.7: What's New, Nov. 2015Mario Beck
 
Mysql User Camp : 20th June - Mysql New Features
Mysql User Camp : 20th June - Mysql New FeaturesMysql User Camp : 20th June - Mysql New Features
Mysql User Camp : 20th June - Mysql New FeaturesTarique Saleem
 
Mysql User Camp : 20-June-14 : Mysql New features and NoSQL Support
 Mysql User Camp : 20-June-14 : Mysql New features and NoSQL Support Mysql User Camp : 20-June-14 : Mysql New features and NoSQL Support
Mysql User Camp : 20-June-14 : Mysql New features and NoSQL SupportMysql User Camp
 
Upgrade from MySQL 5.7 to MySQL 8.0
Upgrade from MySQL 5.7 to MySQL 8.0Upgrade from MySQL 5.7 to MySQL 8.0
Upgrade from MySQL 5.7 to MySQL 8.0Olivier DASINI
 
My sql 56_roadmap_april2012
My sql 56_roadmap_april2012My sql 56_roadmap_april2012
My sql 56_roadmap_april2012sqlhjalp
 
MySQL Performance Tuning at COSCUP 2014
MySQL Performance Tuning at COSCUP 2014MySQL Performance Tuning at COSCUP 2014
MySQL Performance Tuning at COSCUP 2014Ryusuke Kajiyama
 
MySQL 20 años: pasado, presente y futuro; conoce las nuevas características d...
MySQL 20 años: pasado, presente y futuro; conoce las nuevas características d...MySQL 20 años: pasado, presente y futuro; conoce las nuevas características d...
MySQL 20 años: pasado, presente y futuro; conoce las nuevas características d...GeneXus
 
My sql performance tuning course
My sql performance tuning courseMy sql performance tuning course
My sql performance tuning courseAlberto Centanni
 
20190817 coscup-oracle my sql innodb cluster sharing
20190817 coscup-oracle my sql innodb cluster sharing20190817 coscup-oracle my sql innodb cluster sharing
20190817 coscup-oracle my sql innodb cluster sharingIvan Ma
 

Similar to MySQL Scalability Mistakes - OTN (20)

Exploring mysql cluster 7.4
Exploring mysql cluster 7.4Exploring mysql cluster 7.4
Exploring mysql cluster 7.4
 
Ohio Linux Fest -- MySQL's NoSQL
Ohio Linux Fest -- MySQL's NoSQLOhio Linux Fest -- MySQL's NoSQL
Ohio Linux Fest -- MySQL's NoSQL
 
My sql susecon_crashcourse_2012
My sql susecon_crashcourse_2012My sql susecon_crashcourse_2012
My sql susecon_crashcourse_2012
 
MySQL Tech Tour Nov, 2013
MySQL Tech Tour Nov, 2013MySQL Tech Tour Nov, 2013
MySQL Tech Tour Nov, 2013
 
MySQL London Tech Tour March 2015 - Whats New
MySQL London Tech Tour March 2015 - Whats NewMySQL London Tech Tour March 2015 - Whats New
MySQL London Tech Tour March 2015 - Whats New
 
Database2011 MySQL Sharding
Database2011 MySQL ShardingDatabase2011 MySQL Sharding
Database2011 MySQL Sharding
 
My sql vivo_5.5_product_update_pt
My sql  vivo_5.5_product_update_ptMy sql  vivo_5.5_product_update_pt
My sql vivo_5.5_product_update_pt
 
MySQL's NoSQL -- Texas Linuxfest August 22nd 2015
MySQL's NoSQL  -- Texas Linuxfest August 22nd 2015MySQL's NoSQL  -- Texas Linuxfest August 22nd 2015
MySQL's NoSQL -- Texas Linuxfest August 22nd 2015
 
Quick And Easy Guide To Speeding Up MySQL for web developers
Quick And Easy Guide To Speeding Up MySQL for web developersQuick And Easy Guide To Speeding Up MySQL for web developers
Quick And Easy Guide To Speeding Up MySQL for web developers
 
What's New in MySQL 5.7
What's New in MySQL 5.7What's New in MySQL 5.7
What's New in MySQL 5.7
 
MySQL 5.7: What's New, Nov. 2015
MySQL 5.7: What's New, Nov. 2015MySQL 5.7: What's New, Nov. 2015
MySQL 5.7: What's New, Nov. 2015
 
Mysql User Camp : 20th June - Mysql New Features
Mysql User Camp : 20th June - Mysql New FeaturesMysql User Camp : 20th June - Mysql New Features
Mysql User Camp : 20th June - Mysql New Features
 
Mysql User Camp : 20-June-14 : Mysql New features and NoSQL Support
 Mysql User Camp : 20-June-14 : Mysql New features and NoSQL Support Mysql User Camp : 20-June-14 : Mysql New features and NoSQL Support
Mysql User Camp : 20-June-14 : Mysql New features and NoSQL Support
 
Upgrade from MySQL 5.7 to MySQL 8.0
Upgrade from MySQL 5.7 to MySQL 8.0Upgrade from MySQL 5.7 to MySQL 8.0
Upgrade from MySQL 5.7 to MySQL 8.0
 
Sunshine php my sql 8.0 v2
Sunshine php my sql 8.0 v2Sunshine php my sql 8.0 v2
Sunshine php my sql 8.0 v2
 
My sql 56_roadmap_april2012
My sql 56_roadmap_april2012My sql 56_roadmap_april2012
My sql 56_roadmap_april2012
 
MySQL Performance Tuning at COSCUP 2014
MySQL Performance Tuning at COSCUP 2014MySQL Performance Tuning at COSCUP 2014
MySQL Performance Tuning at COSCUP 2014
 
MySQL 20 años: pasado, presente y futuro; conoce las nuevas características d...
MySQL 20 años: pasado, presente y futuro; conoce las nuevas características d...MySQL 20 años: pasado, presente y futuro; conoce las nuevas características d...
MySQL 20 años: pasado, presente y futuro; conoce las nuevas características d...
 
My sql performance tuning course
My sql performance tuning courseMy sql performance tuning course
My sql performance tuning course
 
20190817 coscup-oracle my sql innodb cluster sharing
20190817 coscup-oracle my sql innodb cluster sharing20190817 coscup-oracle my sql innodb cluster sharing
20190817 coscup-oracle my sql innodb cluster sharing
 

More from Ronald Bradford

My SQL Idiosyncrasies That Bite OTN
My SQL Idiosyncrasies That Bite OTNMy SQL Idiosyncrasies That Bite OTN
My SQL Idiosyncrasies That Bite OTNRonald Bradford
 
MySQL Idiosyncrasies That Bite SF
MySQL Idiosyncrasies That Bite SFMySQL Idiosyncrasies That Bite SF
MySQL Idiosyncrasies That Bite SFRonald Bradford
 
Successful MySQL Scalability
Successful MySQL ScalabilitySuccessful MySQL Scalability
Successful MySQL ScalabilityRonald Bradford
 
MySQL Idiosyncrasies That Bite 2010.07
MySQL Idiosyncrasies That Bite 2010.07MySQL Idiosyncrasies That Bite 2010.07
MySQL Idiosyncrasies That Bite 2010.07Ronald Bradford
 
Capturing, Analyzing and Optimizing MySQL
Capturing, Analyzing and Optimizing MySQLCapturing, Analyzing and Optimizing MySQL
Capturing, Analyzing and Optimizing MySQLRonald Bradford
 
MySQL Idiosyncrasies That Bite
MySQL Idiosyncrasies That BiteMySQL Idiosyncrasies That Bite
MySQL Idiosyncrasies That BiteRonald Bradford
 
10x Performance Improvements
10x Performance Improvements10x Performance Improvements
10x Performance ImprovementsRonald Bradford
 
LIFTOFF - MySQLCamp for the Oracle DBA
LIFTOFF - MySQLCamp for the Oracle DBALIFTOFF - MySQLCamp for the Oracle DBA
LIFTOFF - MySQLCamp for the Oracle DBARonald Bradford
 
IGNITION - MySQLCamp for the Oracle DBA
IGNITION - MySQLCamp for the Oracle DBAIGNITION - MySQLCamp for the Oracle DBA
IGNITION - MySQLCamp for the Oracle DBARonald Bradford
 
10x Performance Improvements - A Case Study
10x Performance Improvements - A Case Study10x Performance Improvements - A Case Study
10x Performance Improvements - A Case StudyRonald Bradford
 
Dolphins Now And Beyond - FOSDEM 2010
Dolphins Now And Beyond - FOSDEM 2010Dolphins Now And Beyond - FOSDEM 2010
Dolphins Now And Beyond - FOSDEM 2010Ronald Bradford
 
Drizzle - Status, Principles and Ecosystem
Drizzle - Status, Principles and EcosystemDrizzle - Status, Principles and Ecosystem
Drizzle - Status, Principles and EcosystemRonald Bradford
 
MySQL for the Oracle DBA - Object Management
MySQL for the Oracle DBA - Object ManagementMySQL for the Oracle DBA - Object Management
MySQL for the Oracle DBA - Object ManagementRonald Bradford
 
Know Your Competitor - Oracle 10g Express Edition
Know Your Competitor - Oracle 10g Express EditionKnow Your Competitor - Oracle 10g Express Edition
Know Your Competitor - Oracle 10g Express EditionRonald Bradford
 
The Ideal Performance Architecture
The Ideal Performance ArchitectureThe Ideal Performance Architecture
The Ideal Performance ArchitectureRonald Bradford
 
Getting started with MySQL on Amazon Web Services
Getting started with MySQL on Amazon Web ServicesGetting started with MySQL on Amazon Web Services
Getting started with MySQL on Amazon Web ServicesRonald Bradford
 
Best Practices in Migrating to MySQL - Part 1
Best Practices in Migrating to MySQL - Part 1Best Practices in Migrating to MySQL - Part 1
Best Practices in Migrating to MySQL - Part 1Ronald Bradford
 
Extending The My Sql Data Landscape
Extending The My Sql Data LandscapeExtending The My Sql Data Landscape
Extending The My Sql Data LandscapeRonald Bradford
 

More from Ronald Bradford (20)

My SQL Idiosyncrasies That Bite OTN
My SQL Idiosyncrasies That Bite OTNMy SQL Idiosyncrasies That Bite OTN
My SQL Idiosyncrasies That Bite OTN
 
MySQL Idiosyncrasies That Bite SF
MySQL Idiosyncrasies That Bite SFMySQL Idiosyncrasies That Bite SF
MySQL Idiosyncrasies That Bite SF
 
Successful MySQL Scalability
Successful MySQL ScalabilitySuccessful MySQL Scalability
Successful MySQL Scalability
 
MySQL Idiosyncrasies That Bite 2010.07
MySQL Idiosyncrasies That Bite 2010.07MySQL Idiosyncrasies That Bite 2010.07
MySQL Idiosyncrasies That Bite 2010.07
 
Capturing, Analyzing and Optimizing MySQL
Capturing, Analyzing and Optimizing MySQLCapturing, Analyzing and Optimizing MySQL
Capturing, Analyzing and Optimizing MySQL
 
MySQL Idiosyncrasies That Bite
MySQL Idiosyncrasies That BiteMySQL Idiosyncrasies That Bite
MySQL Idiosyncrasies That Bite
 
10x Performance Improvements
10x Performance Improvements10x Performance Improvements
10x Performance Improvements
 
LIFTOFF - MySQLCamp for the Oracle DBA
LIFTOFF - MySQLCamp for the Oracle DBALIFTOFF - MySQLCamp for the Oracle DBA
LIFTOFF - MySQLCamp for the Oracle DBA
 
IGNITION - MySQLCamp for the Oracle DBA
IGNITION - MySQLCamp for the Oracle DBAIGNITION - MySQLCamp for the Oracle DBA
IGNITION - MySQLCamp for the Oracle DBA
 
10x Performance Improvements - A Case Study
10x Performance Improvements - A Case Study10x Performance Improvements - A Case Study
10x Performance Improvements - A Case Study
 
Dolphins Now And Beyond - FOSDEM 2010
Dolphins Now And Beyond - FOSDEM 2010Dolphins Now And Beyond - FOSDEM 2010
Dolphins Now And Beyond - FOSDEM 2010
 
Drizzle - Status, Principles and Ecosystem
Drizzle - Status, Principles and EcosystemDrizzle - Status, Principles and Ecosystem
Drizzle - Status, Principles and Ecosystem
 
SQL v No SQL
SQL v No SQLSQL v No SQL
SQL v No SQL
 
MySQL for the Oracle DBA - Object Management
MySQL for the Oracle DBA - Object ManagementMySQL for the Oracle DBA - Object Management
MySQL for the Oracle DBA - Object Management
 
Know Your Competitor - Oracle 10g Express Edition
Know Your Competitor - Oracle 10g Express EditionKnow Your Competitor - Oracle 10g Express Edition
Know Your Competitor - Oracle 10g Express Edition
 
The Ideal Performance Architecture
The Ideal Performance ArchitectureThe Ideal Performance Architecture
The Ideal Performance Architecture
 
MySQL Monitoring 101
MySQL Monitoring 101MySQL Monitoring 101
MySQL Monitoring 101
 
Getting started with MySQL on Amazon Web Services
Getting started with MySQL on Amazon Web ServicesGetting started with MySQL on Amazon Web Services
Getting started with MySQL on Amazon Web Services
 
Best Practices in Migrating to MySQL - Part 1
Best Practices in Migrating to MySQL - Part 1Best Practices in Migrating to MySQL - Part 1
Best Practices in Migrating to MySQL - Part 1
 
Extending The My Sql Data Landscape
Extending The My Sql Data LandscapeExtending The My Sql Data Landscape
Extending The My Sql Data Landscape
 

Recently uploaded

Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfAddepto
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Mark Simos
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationSlibray Presentation
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxLoriGlavin3
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024Stephanie Beckett
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsRizwan Syed
 
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxLoriGlavin3
 
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxLoriGlavin3
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteDianaGray10
 
unit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptxunit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptxBkGupta21
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxLoriGlavin3
 
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxThe Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxLoriGlavin3
 
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfMounikaPolabathina
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningLars Bell
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupFlorian Wilhelm
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsSergiu Bodiu
 
The State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxThe State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxLoriGlavin3
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenHervé Boutemy
 

Recently uploaded (20)

Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdf
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck Presentation
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL Certs
 
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
 
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test Suite
 
unit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptxunit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptx
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
 
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxThe Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
 
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdf
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine Tuning
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
 
The State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxThe State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptx
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache Maven
 

MySQL Scalability Mistakes - OTN

  • 1. Common MySQL Scalability Mistakes - 2010.10 Common MySQL Scalability Mistakes Ronald Bradford OTN LAD Tour South America 2010.10 www.RonaldBradford.com Ronald Bradford http://ronaldbradford.com
  • 2. Common MySQL Scalability Mistakes - 2010.10 9
  • 3. Common MySQL Scalability Mistakes - 2010.10 My website seems to freeze or responds randomly? PROBLEM
  • 4. Common MySQL Scalability Mistakes - 2010.10 The default MyISAM storage engine uses exclusive table locks for DML. CAUSE
  • 5. Common MySQL Scalability Mistakes - 2010.10 Optimize blocking query performance Use a transactional engine with MVCC and row based locking to address the LOCKING issue SOLUTION
  • 6. Common MySQL Scalability Mistakes - 2010.10 End user report that selects all customer, order, order lines and order history data and performs poor joins. This takes shared read locks blocking future write locks then future reads. EXAMPLE
  • 7. Common MySQL Scalability Mistakes - 2010.10 MySQL is unique in that it offers different mechanisms for storing and retrieving data, each with strengths and weaknesses. The DEFAULT is not always the best. WHY
  • 8. Common MySQL Scalability Mistakes - 2010.10 MySQL PROCESSLIST Blocked have State = Locked Blocker - Same table, larger Time HOW mysql> SHOW PROCESSLIST; +----+------+-----------+-------+---------+------+------------+--------------- | Id | User | Host | db | Command | Time | State | Info +----+------+-----------+-------+---------+------+------------+--------------- | 13 | app1 | localhost | odtug | Query | 144 | User sleep | UPDATE emp ... | 14 | app1 | localhost | odtug | Query | 116 | Locked | select c from emp | 15 | app1 | localhost | odtug | Query | 89 | Locked | select c from emp
  • 9. Common MySQL Scalability Mistakes - 2010.10 Optimize Blocker Indexes Limit query Summary table Change storage engine HOW
  • 10. Common MySQL Scalability Mistakes - 2010.10 8
  • 11. Common MySQL Scalability Mistakes - 2010.10 Why is my database so large? PROBLEM
  • 12. Common MySQL Scalability Mistakes - 2010.10 Don’t store large static objects in the database SOLUTION
  • 13. Common MySQL Scalability Mistakes - 2010.10 80% of data is email content/ attachments 60% of data is PDF documents 30% of data is uncompressed large XML objects EXAMPLE
  • 14. Common MySQL Scalability Mistakes - 2010.10 Maximize memory usage for important data Reduce database recovery time WHY
  • 15. Common MySQL Scalability Mistakes - 2010.10 Compress large text data 90% saving on XML data Store static data in files Avoids DB handling overhead HOW
  • 16. Common MySQL Scalability Mistakes - 2010.10 HOW Table Size per schema # Schema Table Usage SELECT table_schema,table_name,engine,row_format, table_rows, avg_row_length, (data_length+index_length)/1024/1024 as total_mb, (data_length)/1024/1024 as data_mb, (index_length)/1024/1024 as index_mb, CURDATE() AS today FROM information_schema.tables WHERE table_schema = DATABASE() ORDER BY 7 DESC; http://ronaldbradford.com/mysql-dba/
  • 17. Common MySQL Scalability Mistakes - 2010.10 7
  • 18. Common MySQL Scalability Mistakes - 2010.10 I can't access my website? PROBLEM
  • 19. Common MySQL Scalability Mistakes - 2010.10 TRUE STORY
  • 20. Common MySQL Scalability Mistakes - 2010.10 Question: TRUE STORY
  • 21. Common MySQL Scalability Mistakes - 2010.10 Question: How do you know when your server is down or not accessible? TRUE STORY
  • 22. Common MySQL Scalability Mistakes - 2010.10 Question: How do you know when your server is down or not accessible? Answer: TRUE STORY
  • 23. Common MySQL Scalability Mistakes - 2010.10 Question: How do you know when your server is down or not accessible? Answer: The users will let us know. TRUE STORY
  • 24. Common MySQL Scalability Mistakes - 2010.10 SOLUTION Integrated monitoring including graphical interface, real time analysis and notification
  • 25. Common MySQL Scalability Mistakes - 2010.10 Monitoring/Alerting Graphical Historical Necessary Generally missing/incomplete Useless for real-time analysis HOW
  • 26. Common MySQL Scalability Mistakes - 2010.10 Dashboard The state of NOW Sampling at 1s/3s/5s e.g. 0.1% of throughput HOW
  • 27. Common MySQL Scalability Mistakes - 2010.10 Instrumentation Important to business viability e.g. orders per minute page load time Seamless implementation i.e. no code changes to view real-time extensible HOW
  • 28. Common MySQL Scalability Mistakes - 2010.10 6
  • 29. Common MySQL Scalability Mistakes - 2010.10 My replication slave can't keep up? PROBLEM
  • 30. Common MySQL Scalability Mistakes - 2010.10 Know the weakest link(s) of MySQL replication and don't exceed that, or cheat. SOLUTION
  • 31. Common MySQL Scalability Mistakes - 2010.10 If replication can't catchup, slaves are useless. Backup & recovery may also suffer. WHY
  • 32. Common MySQL Scalability Mistakes - 2010.10 Master DML Statement Write Data/Redo Log Write Binary Log Return OK to client HOW
  • 33. Common MySQL Scalability Mistakes - 2010.10 Slave Detect master log change Retrieve binary log entry Write relay log (IO_THREAD) Read relay log Apply DML (SQL_THREAD) Write Data/redo log HOW
  • 34. Common MySQL Scalability Mistakes - 2010.10 Replication workarounds Restrict queries executed --ignore Different storage engines Different index structures HOW
  • 35. Common MySQL Scalability Mistakes - 2010.10 Advanced workarounds RAID 0 (large number of slaves) Pre fetch thread EXPERT TIP
  • 36. Common MySQL Scalability Mistakes - 2010.10 5
  • 37. Common MySQL Scalability Mistakes - 2010.10 My server has crashed with a hard drive failure PROBLEM
  • 38. Common MySQL Scalability Mistakes - 2010.10 Question: Have you ever performed a database recovery? Answer: No, why? TRUE STORY
  • 39. Common MySQL Scalability Mistakes - 2010.10 Consultant: Do you know that your daily backups only recover the data up to that time, e.g. 1am. You know you have lost all your sales and changes since then. Customer: No, I didn’t know that. TRUE STORY
  • 40. Common MySQL Scalability Mistakes - 2010.10 Have a DR Plan Documented Tested Timed Verified - End to End SOLUTION
  • 41. Common MySQL Scalability Mistakes - 2010.10 Do you pass the MySQL backup/ recovery quiz? http://rb42.com/mysql-backup-quiz HOW
  • 42. Common MySQL Scalability Mistakes - 2010.10 1. Do you have MySQL backups in place? 2. Do you backup ALL your MySQL data? 3. Do you have consistent MySQL backups? 4. Do you have backups that include both static snapshot and point in time transactions? 5. Do you review your backup logs EVERY SINGLE day or have tested backup monitoring in place? 6. Do you perform a test recovery of your static backup? 7. Do you perform a test recovery to point in time? 8. Do you time your backup and recovery process and review over time? 9. Do you have off-site copies of your backups? 10. Do you backup your primary binary logs? QUIZ http://rb42.com/mysql-backup-quiz
  • 43. Common MySQL Scalability Mistakes - 2010.10 4
  • 44. Common MySQL Scalability Mistakes - 2010.10 Why is my database executing 1,200 qps for 50 users? PROBLEM
  • 45. Common MySQL Scalability Mistakes - 2010.10 Determine what queries are running and why they are running? SOLUTION
  • 46. Common MySQL Scalability Mistakes - 2010.10 Excessive SQL statements Duplicate Redundant Cachable Row at a time (RAT) CAUSE
  • 47. Common MySQL Scalability Mistakes - 2010.10 Reducing SQL load both improves performance now and provides greater capacity as you scale WHY
  • 48. Common MySQL Scalability Mistakes - 2010.10 EXAMPLE http://ronaldbradford.com/blog/optimizing-sql-performance-the-art-of-elimination-2010-07-08/ SELECT * FROM activities_theme WHERE theme_parent_id=0 SELECT * FROM activities_theme WHERE theme_parent_id=1 SELECT * FROM activities_theme WHERE theme_parent_id=2 SELECT * FROM activities_theme WHERE theme_parent_id=11 SELECT * FROM activities_theme WHERE theme_parent_id=16 SELECT * FROM activities_theme WHERE theme_parent_id in (0,1,2,11,16) CAT RAT
  • 49. Common MySQL Scalability Mistakes - 2010.10 EXAMPLE http://ronaldbradford.com/blog/optimizing-sql-performance-the-art-of-elimination-2010-07-08/ 5 Query SELECT * FROM `artist` 5 Query SELECT * FROM `artist` 5 Query SELECT * FROM `artist` 5 Query SELECT * FROM `artist` 5 Query SELECT * FROM `artist` 5 Query SELECT * FROM `artist` WHERE (ArtistID = 196 ) 5 Query SELECT * FROM `artist` WHERE (ArtistID = 2188 ) 5 Query SELECT * FROM `artist` 5 Query SELECT * FROM `artist` 5 Query SELECT * FROM `artist` Duplicate Unnecessary Only 2 queries necessary or 1 CAT
  • 50. Common MySQL Scalability Mistakes - 2010.10 EXAMPLE http://ronaldbradford.com/blog/optimizing-sql-performance-the-art-of-elimination-2010-07-08/ SELECT pages_id, pages_livestats_code, pages_title, pages_parent, pages_exhibid, pages_theme, pages_accession_num FROM pages WHERE pages_id = 0 5 minutes 6000 executions 0 is out of bounds Unnecessary
  • 51. Common MySQL Scalability Mistakes - 2010.10 Capture & Analyze DML is easy SELECT is harder HOW http://www.slideshare.net/ronaldbradford/capturing-analyzing-and-optimizing-mysql
  • 52. Common MySQL Scalability Mistakes - 2010.10 MySQL Binary Log (Archive Redo) mysqlbinlog mk-query-digest One Liner HOW http://ronaldbradford.com/blog/mysql-dml-stats-per-table-2009-09-09/
  • 53. Common MySQL Scalability Mistakes - 2010.10 HOW 55463 update sessions 25574 insert into sessions 12820 update items 11636 insert into item_categories 7532 update users 5168 delete from item_categories 4076 update extended_item_infos 3701 insert into sphinx_new_items 3701 insert into mini_items 2190 update sweet_bars 1922 update chat_users 1662 update item_shipping_infos 1265 update search_terms 1260 insert into images 931 delete from item_shipping_infos 825 update booths 713 update booth_stats 574 update topics 540 update offers 81k of 141k Top 2 queries = 57%
  • 54. Common MySQL Scalability Mistakes - 2010.10 Process List General Log tcpdump Application HOW
  • 55. Common MySQL Scalability Mistakes - 2010.10 Capturing, Analyzing and Optimizing your SQL http://www.slideshare.net/ronaldbradford/capturing-analyzing-and- optimizing-mysql HOW
  • 56. Common MySQL Scalability Mistakes - 2010.10 /* Comment your queries */ The more products you have, the more developers you have, the more time you spend in code identification before you can even determine a resolution EXPERT TIP
  • 57. Common MySQL Scalability Mistakes - 2010.10 3
  • 58. Common MySQL Scalability Mistakes - 2010.10 The database is slow. My webpage takes five seconds to load. PROBLEM
  • 59. Common MySQL Scalability Mistakes - 2010.10 Evaluate the time taken in the database and all stages in between SOLUTION
  • 60. Common MySQL Scalability Mistakes - 2010.10 Client example showed a webpage taking 5 seconds to load. The html component was taking only 400 ms. Any MySQL performance improvement will only tune 8% of the total time. EXAMPLE
  • 61. Common MySQL Scalability Mistakes - 2010.10 Performance is important to end user Performance is perception WHY
  • 62. Common MySQL Scalability Mistakes - 2010.10 Firebug - http://getfirebug.com/ Httpwatch - http://httpwatch.com/ Page speed - http://code.google.com/speed/page-speed/ YSlow - http://developer.yahoo.com/yslow/ wget/curl Application code instrumentation HOW
  • 63. Common MySQL Scalability Mistakes - 2010.10 http://www.stevesouders.com/ http://developer.yahoo.com/ performance/rules.html EXPERT TIP
  • 64. Common MySQL Scalability Mistakes - 2010.10 2
  • 65. Common MySQL Scalability Mistakes - 2010.10 I want to add new H/W. How do I change my application to support this? PROBLEM
  • 66. Common MySQL Scalability Mistakes - 2010.10 Develop a seamless integration that requires no code changes, no downtime and very little additional physical resources. SOLUTION
  • 67. Common MySQL Scalability Mistakes - 2010.10 Integrated monitoring and instrumentation Deployed from Day 1 HOW
  • 68. Common MySQL Scalability Mistakes - 2010.10 Seamless automated server deployment Version Control Build & Release Runtime config management Automated discovery HOW
  • 69. Common MySQL Scalability Mistakes - 2010.10 API One code path for business functionality Implied business documentation Enforced data exchange standard Testability HOW
  • 70. Common MySQL Scalability Mistakes - 2010.10 Different levels of data availability Read & Write Read Only No Access Cached HOW
  • 71. Common MySQL Scalability Mistakes - 2010.10 Different principles for scalability Read Scalability Write Scalability Caching HOW
  • 72. Common MySQL Scalability Mistakes - 2010.10 Successful MySQL Scalability 1. Integrated monitoring & instrumentation 2. Seamless automated server deployment 3. Disaster is inevitable 4. Application Programming Interface 5. Support different levels of data availability 6. Support different scalability principles REFERENCE http://ronaldbradford.com/blog/successful-mysql-scalability-presentation-2010-09-17/
  • 73. Common MySQL Scalability Mistakes - 2010.10 1
  • 74. Common MySQL Scalability Mistakes - 2010.10 My website is slow? PROBLEM
  • 75. Common MySQL Scalability Mistakes - 2010.10 Seek professional advice. Hire for example Ronald Bradford. 20+ years of system architecture, database design and performance tuning. Employment as Consultant for Oracle Corporation (96-99) Employment as Senior Consultant for MySQL Inc (06-08) SOLUTION
  • 76. Common MySQL Scalability Mistakes - 2010.10 R
  • 77. Common MySQL Scalability Mistakes - 2010.10 Monitoring. Before, during and after NOW. You may not be able to predict the future but you can preempt the future. Choose the best product and features for you needs. The best SQL statement is the one you never have to execute. RECAP
  • 78. Common MySQL Scalability Mistakes - 2010.10 3 levels of real time data access. Read/Write, Read and no access 3 aspects of scalability. Read, Write and Caching Operate below 90% capacity. That 10% is your insurance. RECAP
  • 79. Common MySQL Scalability Mistakes - 2010.10 http://ronaldbradford.com me@ronaldbradford.com CONTACT