Seminar : "The Future of MYSQL - Roadmap to Success" session MySQL Technology Update
<Insert Picture Here>MySQL Technology UpdateOracle’s Investment in Performance and Scalability
Investment in MySQLRapid InnovationMake MySQL a Better MySQL• #1 Open Source Database for Web Applications• Most Complete LAMP Stack• Telecom & EmbeddedDevelop, Promote and Support MySQL• Improve engineering, consulting and support• Leverage 24x7, World-Class Oracle SupportMySQL Community Edition• Source and binary releases• GPL license
Announced Today MySQL 5.5 is now GA!Making MySQL Better Today and Everyday
MySQL 5.5 – What’s NewBetter Performance, Scalability and Recovery GAInnoDB Performance improvements• Multiple Buffer Pool Instances• Multiple Rollback Segments – now supports 128K concurrent trxs• Extended Change Buffering (with delete buffering, purge buffering)• Improved Purge Scheduling• Improved Log Sys mutex, Separate Flush List mutex• Improved Recovery Times• More…MySQL Performance Improvements• Better Metadata Locking within Transactions• Split LOCK_open mutex• Eliminated LOCK_alarm mutex as bottleneck• Eliminated LOCK_thread_count as bottleneck• Improved Performance/Scale on Win32, 64• More…
MySQL 5.5 – What’s NewInnoDB becomes default storage engine GA• ACID Transactions, FKs, Crash RecoveryImproved Availability• Semi-synchronous Replication• Replication Heartbeat• Replication Slave fsync options• Automatic Relay Log RecoveryImproved Usability• SIGNAL/RESIGNAL• More Partitioning Options• Replication Server Filtering• Replication Slave Side Type Conversions• Individual Log FlushingBetter Instrumentation/Diagnostics• New PERFORMANCE_SCHEMA
MySQL 5.5 Early Adopters Speak!“Thanks to the MySQL and InnoDB teams for their continuedhard work and dedication to making MySQL faster ashardware evolves. I, for one, cannot wait to see what thisstuff does for us. “– Jeremy Zawodny, Craigslist“I’m really blown away by MySQL 5.5’s improvements. “- Don MacAskill, SmugMug“My expectations for 5.5 were not high. I am pleasantlysurprised!”- Mark Callaghan, Facebook, MySQL UC Keynote
MySQL 5.5 SysBench BenchmarksLinux GA MySQL 5.5.6 (New InnoDB) MySQL 5.1.50 (InnoDB Plug-in) MySQL 5.1.50 (InnoDB built-in) 200% performance gain Intel Xeon X7460 x86_64 4 CPU x 6 Cores/CPU 2.66 GHz, 32GB RAM for MySQL 5.5 over 5.1.50; at scale Fedora 10
MySQL 5.5 SysBench BenchmarksLinux GA MySQL 5.5.6 (New InnoDB) MySQL 5.1.50 (InnoDB Plug-in) MySQL 5.1.50 (InnoDB built-in) 370% performance gain Intel Xeon X7460 x86_64 4 CPU x 6 Cores/CPU 2.66 GHz, 32GB RAM for MySQL 5.5 over 5.1.50; at scale Fedora 10
MySQL on WindowsThe Right ChoiceSignificant Developer Adoption • Windows is the #1 development platform for MySQL • Making MySQL better on Windows Performance & Scalability Lower TCO • Improved on Windows • More Affordable • MySQL 5.5 Benchmarks • Easier to Administer Ease of Use Cross-platform • MySQL Workbench • 20+ Platforms • New Connector/NET 6.3 • No Lock-in
MySQL 5.5 SysBench BenchmarksWindows GA MySQL 5.5.6 (New InnoDB) MySQL 5.1.50 (InnoDB Plug-in) MySQL 5.1.50 (InnoDB built-in) 540% performance gain Intel x86_64 4 CPU x 2 Cores/CPU 3.166 GHz, 8GB RAM for MySQL 5.5 over 5.1.50; at scale Windows Server 2008
MySQL 5.5 SysBench BenchmarksWindows GA MySQL 5.5.6 (New InnoDB) MySQL 5.1.50 (InnoDB Plug-in) MySQL 5.1.50 (InnoDB built-in) 1560% performance gain Intel x86_64 4 CPU x 2 Cores/CPU 3.166 GHz, 8GB RAM for MySQL 5.5 over 5.1.50; at scale Windows Server 2008
MySQL 5.5 Scales on multi core SysBench Read Write GA MySQL 5.5.4 MySQL 5.5.3Transactions/Second MySQL 5.1 AMD Opteron 7160 (Magny-Cours) @2100 MHz 64 GB memory 2 x Intel X25E SSD drives OS is Oracle Enterprise Linux with the Enterprise Kernel 4 sockets with a total of 48 cores.
Improved Recovery Performance GA Crash Recovery 250 200 5.1 5.1 5.1 Minutes 150 100 50 5.5 5.5 5.5 0 plugin 1.0.6 Total Scanning Log Applying InnoDB 1.1> 10x recovery performance gain 50 warehouses Database=9800MB Intel Xeon X7460 x86_64 4 CPU x 6 Cores/CPU Innodb_log_file_size=2x1950MB 2.66 GHz, 32GB RAMfor MySQL 5.5 over 5.1 Buffer_pool-12GB Fedora 10 Started tested, killed server@5 mins
MySQL 5.5 Replication Features 1. Semisynchronous replication Improved resilience by having master wait for slave to receive events. 2. Slave fsync tuning & Automatic relay log recovery Tune fsyncs so corruption is less likely on slave crashes. Let the slave recover from corrupted relay logs. 3. Replication Heartbeat Have a more precise failure detection mechanism. Avoid spurious relay log rotation when the master is idle. 4. Per server replication filtering Instruct slave to discard events from a master with a specific server id.Copyright Oracle Corporation 2010 19
MySQL 5.5 Replication Features 5. Precise Slave Type Conversions Use different types on master and slave and get automatic type promotion and demotion when using RBR 6. Individual Log Flushing Selectively flush server logs when using FLUSH LOGS 7. Safe logging of mixed transactions Replicate transactions containing both InnoDB and MyISAM changesCopyright Oracle Corporation 2010 20
1. Semisynchronous Replication • MySQL replication is asynchronous – A recovered master may have non-binlogged changes. – This can cause master and slave to diverge. – A failed master may have binlogged but non-replicated changes – If a slave is promoted to master some information can be lost. • Semisynchronous replication ensures redundancy – At least one slave acknowledges relay logging the transaction. – Master waits for slave acknowledgement before commit returns. – (On time-out, master temporarily switches to async replication.)Copyright Oracle Corporation 2010 21
1. Semisynchronous Replication Checking the state On master Rpl_semi_sync_master_status Rpl_semi_sync_master_clients Rpl_semi_sync_master_yes_tx Rpl_semi_sync_master_no_tx On Slave Rpl_semi_sync_slave_statusCopyright Oracle Corporation 2010 23
3. Replication Heartbeat MySQL Server Replication MySQL Server Master I/O Slave thread Heartbeat SE1 SE2 SE1 SE2 Relay Binlog Binlog Binlog • Automatic checking of connection status • No more relay log rotates when the master is idle • Detection of master/slave disconnect, configurable in milliseconds CHANGE MASTER SET master_heartbeat_period= val; SHOW STATUS like slave_heartbeat period SHOW STATUS like slave_received_heartbeatsCopyright Oracle Corporation 2010 24
MySQL: Still Free, Open to the CommunityAvailable to download and use under the GPL:• MySQL Database (Community Server) • All 5.5 features, all storage engines• MySQL Cluster • Geo-replication• MySQL Workbench Community Edition• MySQL Connectors• MySQL Proxy• Documentation• Forums http://mysql.com/downloads/
A particular slide catching your eye?
Clipping is a handy way to collect important slides you want to go back to later.