Speaker Presentation Files:
MySQL Conference & Expo 2009

Presentation files will be made available after the session has concluded and the speaker has given us the files. Check back if you don't see the file you're looking for—it might be available later! (However, please note some speakers choose not to share their presentations.)

Network communication can be a significant bottleneck for several MySQL architectures and applications. Dolphin Express cost effectively reduces network latency and can dramatically improves applications performance. Dolphin showcases application examples with improved performance results based on Dolphin Express and the ease of installation and use to achieve these results.
Working in an Agile environment poses unique challenges for DBAs used to more traditional environments. This session, co-presented by Laine Campbell of Palomino DB, Inc. and Sheeri K. Cabral of The Pythian Group, will explain how to function more effectively as an Agile DBA, giving you tips and tricks to better survive in an Agile development environment.
With the increase complexity of software architecture and database design the amount of data stored in databases systems grows rapidly. Additionally, data security and international regulatory laws require that data changes are audited and restorable to any point of time. The revision engine implements automated auditing of data transparently as a storage engine.
Do you use replication? Would you like to improve your data protection and recovery capabilities? If you do, chances are you would also like to improve your ability to recover from failures faster. In this session, we will show you how you can use backup to enhance your replication capabilities.
There is a lot of buzz about Memcached and MySQL 5.1 and what it can do for your website. But how exactly do you go about setting it all up and write your code to make use of memcached? In this session, Adam Donnison will take you step by step through implementing memcached using real world examples in PHP from the MySQL.com website infrastructure.
Do you like to tinker? Would you like to see how MySQL? If you’d like to get your hands dirty (or watch others work their developer magic), stop by this session and learn how to take a simple desktop system running MySQL into a fully functional time based backup system that you can connect to any server and get up to the minute recovery capability.
In this session we will build a PHP+MySQL application in NetBeans that uses the Twitter API to find and graph a "meme" in Twitter.
Feeling the pressures of data warehousing? Costs growing non-linearly? Are data growth, ad-hoc queries and near real-time data availability requirements threatening to take your DW system past the event horizon? Let us show you how to create a scalable, open source, low cost data warehouse with MySQL & the Calpont storage engine.
This presentation explores what cloud computing means beyond being a buzz-word and touches upon the various scenarios where MySQL and Pentaho Data Integration (Kettle) can be deployed on a large number of hosts to process data in parallel.
Connector/J has a wealth of under-promoted performance features. Come to this session to learn about bulk data loading, load balancing, batch rewriting and the "reckless but really fast" options that C/J has.
Indexes are known to speed up retrievals, but do you know that sometimes looking at the indexes is sufficient to get the data you need ? This session will help you understand the principles of covering indexes, their benefits and the situations where you should avoid them.
Many of the characteristics that make MySQL so successful also apply to GlassFish and NetBeans. This talk will demonstrate how MySQL, GlassFish, and NetBeans can be used together to create quick and powerful web applications. It shares tips to boost web application development when using all of them together.
DTrace is breakthrough tool for on-demand tracing and analysis of any software. As MySQL internals are open, it is possible to extract incredibly valuable information about database work - without performance overhead or even need to restart a server. This talk covers and merges knowledge and practice from both DTrace and MySQL worlds - and explains why D in DTrace means 'dynamic'.
The InnoDB storage engine has been modified to use memcached as a level 2 cache, the InnoDB buffer pool being the level 1. Important reduction of the disk load and performance boost has been observed. This opens a new way of scaling out MySQL.
It began as a question. Could a slice of silicon make MySQL the fastest database on the planet? Impossible, most thought. It would have to be magic. Well, call it magic or advanced technology, it's here. Join us and we'll show you how it's making customers' data warehousing limitations disappear!


With the volume of data exploding and the need for business insight more critical then ever, a new breed of open source solutions delivers the simple-but-sophisticated analytics an enterprise needs to make fact-based decisions and compete more effectively.


This session will give an overview of the new set of static DTrace probes introduced in MySQL 6.0 with examples on how to use them in real-life monitoring and performance tuning tasks.
A tour of External Language Stored Procedures for MySQL and how they overcome the challenges involved when using MySQL's UDFs and SQL stored procedures.
Using SCM to enable fast, random, and low-latency access to large ‘in-memory’ databases, Virident’s GreenCloud servers offer dramatic improvements in performance, scalability, and energy and cost efficiency for MySQL in the data center.


The Falcon Storage Engine is designed to take advantage of multi-core computers. It is reaching GA at a time when computer performance is being increased mostly by adding more cores. Falcon's unique characteristics will be explained and contrasted with InnoDB and other MySQL storage engines.
A case study of the evolution of MySQL usage, as a company moved from a scrappy startup - with the goals of finding a cheap, quick, and simple database solution - to a mature enterprise - with high availability and horizontal scalability as key requirements.
Have a look at how Big Fish Games and thePlatform are using MySQL Enterprise Monitor 2.0 now to help tune and troubleshoot their applications.
Query analysis can help highlight issues in the SQL in your application, but there are many ways of getting that information. Obvious choices are explain and the slow-query log, but newer solutions, such as live query monitoring, mysql proxy and DTrace provide additional benefits.
In a classic case of "eat your own dogfood", MySQL.com is a key player in the beta testing of MySQL software, including Query Analyzer. In this presentation MySQL.com web developer Adam Donnison will take you through how he used Quan to improve database performance on the MySQl.com website by orders of magnitude, and why Quan was needed.
Sheeri K. Cabral, a two-time winner of the MySQL Community Advocate award, passes the baton to the next generation of MySQL Community superheroes -- you! Though you cannot fly or have X-ray vision, Sheeri will explain how you can make a difference in the MySQL Community without writing a single line of code.


This session will highlight some of the architectural specifics of the DB2 Storage Engine as well as discuss uses and benefits of the storage engine.
This session will present the Random Query Generator, a new tool for database workload generation for the purpose of stress testing.
You can run MySQL on a standard server, but there can be benefits to running MySQL within a virtualized environment. You can take advantage of the isolation it provides, or the performance gains possible by running multiple MySQL instances on one large server. This session will show you the benefits and potential issues of running MySQL in a virtualized environment.
This presentation describes InnoDB on-disk file formats, the new file format management, as well as InnoDB source code structure.
InnoDB is well-known and popular, but naturally there's room for improvement. There are many hard-coded constants – what happens if we turn them into command-line parameters? InnoDB is also incredibly complex, with a lot going on under the covers. What algorithms can we change to make InnoDB faster and more scalable, especially on modern hardware?
Writing a custom engine can seem intimidating and creating a generic engine can be. This presentation will show how to refine the requirements to a manageable subset. We will discuss the problem addressed, the approach chosen, storage engine design and API required to implement the design. We will talk about lessons learned implementing the storage engine to improve flexibility and performance.
This session will introduce DTrace, OpenSolaris's Dynamic Trace Facility, which can be used to give unprecedented access to the inner workings of MySQL. We will explore specific MySQL DTrace probes and the DTrace pid provider, which allows the gathering of information about any function within a process.
In this session we present OpenLDAP/back-ndb which gives an LDAP interface to MySQL Cluster. The LDAP interface on Cluster offers some nice ways of scaling out, as well fantastic performance, and we discuss how this is done. Moreover, it is possible to simultaneously access the LDAP data using e.g SQL! A short demo will be given.
Enterprise email is broken. From managing metadata to the inefficiency of multiple message storage, IT administrators have long bemoaned the task of implementing a scalable, affordable, reliable messaging architecture. Zimbra and MySQL’s combined expertise has altered the way administrators control their email servers through the development of a more effective back end for messaging architecture.
What is libdrizzle? A complete client library rewrite for the Drizzle project. Why is this interesting for MySQL users? It supports the MySQL protocol and provides a non-blocking I/O interface. This session will demonstrate the power of connection pooling and how to run parallel queries to decrease overall processing time. PHP examples will be used, but other languages will be very similar.
Maatkit is a set of tools that helps MySQL users and administrators fill otherwise unmet needs. The toolkit is absolutely packed with functionality. This session will teach you how to get your daily work done faster, safer and smarter.
Come learn the fundamentals of how to leverage Gearman, the open-source, distributed job queuing system. Gearman can help in building scalable MySQL-backed applications or use through a user-defined function. Gearman’s generic design allows it to be used as a building block for a wide variety of applications, from farming out image processing to building your own Map/Reduce implementation.
Everybody knows that indexes can boost SELECT performance, but how do you verify that you are using index correctly? In this session, I'll explain detailed mechanism of traditional MySQL B+Tree indexes, optimizer plans, and how to boost performance. Not only speeding up SELECT, but also speeding INSERT are covered.
The memcached Functions for MySQL are User Defined Functions (UDFs) that give you the power to interact with both MySQL and memcached in one place, giving you the ability to have read-through or write-through caching using a number of tricks, all without having to have caching logic in the application. Learn from Patrick Galbraith how to take advantage of these great new UDFs!
Habbo, the world's leading virtual world for teens, has been running on MySQL ever since year 2000 and serves millions of users each month. It's global operation and continued product development depend on timely analysis of masses of data, a challenge we solved using Infobright's Brighthouse DWH engine. I'll tell you why and how we did that.
Craigslist serves millions of classifieds to millions of users around the world on a daily basis and MySQL is our database of record for all this data. But how do you efficiently design a search system to handle this volume?
In blazing speed we will cover the most important features on MYSQL Cluster 7.0: online add node, multi-threading of the data node and a bunch of other features that pushes the limits of MySQL Cluster even further. A demo will be made showing how to add a node.
MySQL deeply embedded version, libmysqld, is coming back in MySQL Version 5.1. This talk gives an overview of libmysqld, the advantages and the limitations, as well as example applications and sample code. The talk is centered around C applications, so knowledge of C is assumed to appreciate this talk fully.
Learn why MySQL was chosen as core database in mission critical system for fund managers of financial firms. In this mission critical financial system, in which database manages more than 1TB and handles over 200 concurrent transactions per second, all operations of front office team are managed including positions, executions and capital management.
MySQL is a great DBMS with a vast feature set. It is lightweight and easy to use "out of the box". What it lacks is a good High-Availability (HA) solution though. There are different approaches to create a HA environment - Depending on software setup and application preferences. This talk will cover everything from pros and cons of different solutions to real world experiences.
An updated overview of MySQL High Availability deployment options with DRBD. Covers DRBD for low-latency workloads (leveraging Dolphin Express interconnect technology), four-way replicated storage redundancy, end-to-end replication integrity checking, and more.
In the daily work of MySQL Support Engineers, alongside genuine problems, there are some that are plain mistakes. These mistakes can become forum questions, or bug reports, or finally Support issues. Even the most advanced users make terrible mistakes that become interesting support case stories. This presentation is a collection of those.
Amazon EC2 is a new platform on which to run MySQL. This session evaluates the performance possible on the variety of hardware configurations available with EC2.
Binlogs are essential for the MySQL Replication. MySQL Proxy can unleash the full power of binlogs: filtering, rewriting, splitting and merging.
There should be nothing more important to a database administrator than backups, restoration and disaster recovery planning. Unfortunately it is an often neglected area of database administration. This session will cover the importance of these vital areas and practical information about the ways to perform backups and recovery with currently available technology.
Innovation happens everywhere; MySQL drives innovation within support to serve customers better. Considered one of the best, we'll show off how MySQL Support works around the clock, around the globe. This talk could be useful for startups trying to build services for their customers and community. We'll show the tools we are using and how support engineers communicate internally with each other.
mysqlnd, also known as MySQL native driver for PHP, is the new way of connecting from PHP to MySQL. It's a superior substitute to libmysql. mysqlnd is "native" to PHP, in means that it uses the infrastructure provided by PHP. In this session I will show why mysqlnd is better than libmysql, in the PHP world - performance, better resources utilization, quicker bug-fixing cycle and others.
The goal of this session is to introduce users to new standard conforming and engine-neutral implementation of foreign keys, which is being developed for 6.1 version of server. The session will describe capabilities of this new implementation (including limitations for different engines), give a glance at its performance and provide comparison with current InnoDB-specific implementation.
The MySQL Replication developers walk through some of the new Replication features of MySQL 5.1 and MySQL 6.0, such as row-based replication, heart-beating and semi-synchronous replication.
This session will present the latest connector developed by SUN - MySQL Connector/C++.
ZFS offers many leading-edge features, including automatic protection against silent data corruption, immense capacity, and vastly simplified administration. But how well does it perform with MySQL? This session explores MySQL performance with ZFS compared to alternative file system implementations. The performance implications of ZFS compression and other features are also examined.
Insights from the developers behind MySQL Partitioning. How is partitioning implemented, how does it work in the server and with the storage engines? What solutions can it be a part of and what problems does it introduce? We present a new partitioning type: Column list, range partitioning on any column type. And give the status of the current development.
Perl stored procedures provide greater flexibility than the standard SQL stored procedures. For many users, they can provide performance and connectivity which is not available from the built in SQL implementation, where many users have to resort to writing UDFs.
An overview how to make MySQL host system more secure, MySQL itself hardened, access control impossible to penetrate and use all possible security features MySQL provides. Additionally, it will cover some of security design flaws, that can be best resolved by hacking MySQL itself.
Recently faced with the problem of an ordinary table growing too large to back up or maintain, we designed a MySQL-Proxy-based storage cluster which seamlessly integrates with the rest of the database and offers redundancy, cluster-member failure protection, load balancing, and information lifecycle management (data age-out) capabilities.
See the replication developers give you a fast-paced session of some of the more interesting, useful, and odd ticks available for the intermediate to advanced replication user.
How do you set up replication? What can you do with replication? If these are the kinds of questions you ask yourself, then you need to go to this replication tutorial. You will hear the replication developers explain the architecture and concepts behind replication, and learn how to configure and use replication for managing backups, handle high-availability, and performing scale-out.
Discussion on solid state disk and how it will change the high performance industry. View pretty graphs and benchmarks that will dazzle your eyes, with numbers sure to get the purest database performance geek excited. DBT2, sysbench, Orion, and other benchmarks will help highlight the advantages and disadvantages of this new and exciting technology.
There are many different ways of scaling up and scaling out using MySQL. You can take advantage of replication, DRBD, memcached, MySQL Proxy and many other solutions. This tutorial will take you through all of these solutions and their combinations to increase your database throughput.
MySQL security best practices often assume restricted access to the physical server and restrictive file system privileges. However, OEM's and ISV's who bundle and distribute their application with MySQL have no control over where the application is installed. This session will provide silent installation instructions, common deployment strategies and recommendations for securing your data.
Looking at sharding your environment? This is the real-world example of sharding our databases using Spockproxy, a sharding-only version of the MySQL Proxy. Layout, sharding, and loading data; problems and limitations of working within shards; and how to get around these problems. The problems and solution we've come across are largely applicable to every kind of sharded environment.
Beginners to MySQL often start monitoring their systems manually but quickly realize the need to automate. When the new MySQL DBA is also new to shell scripting, the task of automating becomes even more daunting. This presentation introduces the Bash shell, illustrates how it can communicate with MySQL and with the outside world, and gives practical examples of these scripts.
"MySQL internal QA" about which many of you may speculate and very have direct knowledge of, will be discussed in this presentation. QA takes care of your favorite database in the development and release cycle, from code review through bug management with massive amounts of testing in between. Come to find out what is being done internally before the server is shipped.
This proposal is to highlight the integration of Open HA Cluster and MySQL. I will cover the various aspects of high availability and business continuity. In addition to the current features, the roadmap of Open HA Cluster will be discussed. There is a large focus on the integration with MySQL replication and MySQL cluster.
Experienced SQL developers know how to solve a class of quite different problems efficiently with the help of an auxiliary sequence table: We'll learn from them with easy to understand hands-on examples -- and meet the SeqEngine, a pluggable storage engine for MySQL 5.1 that helps us to apply the expert's tricks even more efficiently.
The presentation will discuss the loading and indexing of spatial data, but will concentrate on the spatial functions available for further analysis in MySQL. Specific business cases will be used to illustrate these functions, such as the real-time monitoring of boats in offshore windfarm construction. A Java front-end will be used to support the claim that Java plus Mysql equals traditional GIS
The Spider Storage Engine creates table-links from local databases to remote databases. To supports XA transaction and table partitioning itself, the Spider also created for the database shardings. Spider Storage Engine is being offered to the public by GPL. http://spiderformysql.com
In the annual State of MySQL keynote, Karen Padir, Vice President for MySQL & Software Infrastructure at Sun Microsystems discusses the current and future role of MySQL in the modern online world. The presentation also covers the broader role MySQL plays at Sun, the role open source is playing for users and customers all over the planet, and what the visions for the future are.


Although the popular Ruby on Rails framework is known for its ability to quickly build web applications, getting the most favorable performance out of the standard database, MySQL, takes a little bit of effort. This session will cover simple techniques and tricks for optimizing the interaction of the Rails ActiveRecord for MySql.
Testing a complex system like MySQL cluster is always difficult. In this session we'll show the ANSTE testing framework and how it can help a project like MySQL do exhaustive testing.
ScaleDB storage engine delivers high performance transaction processing capability with row level locking and multi-node concurrency control. It enhances performance through innovative indexing technology and delivers low cost computing with a Shared Disk architecture. When applications demand more computing power, additional servers are added to the cluster to scale the system capacity.
Presentation: The SmugMug Tale Presentation [PDF]
A story of scaling, in today's world - using modern technologies like ZFS, OpenStorage, MySQL, and more, running one of the world's most popular photo sharing sites - SmugMug.


The inside story of MySQL use at Google, and how this performant database is scaled.


Launching MySQL databases in "The Cloud" can make a DBA's dreams come true. While it is relatively easy to set up special-purpose replicas or scale out on demand -- it is not as easy as it looks! RightScale, the leader in cloud computing management,has already launched thousands of MySQL clusters in the cloud and can help attendees understand the tradeoffs and tricks it takes to do it right.
Ever get frustrated because you can't enforce foreign key constraints between partitioned tables? Perhaps you'd like the ability to spread innodb partitions across multiple file systems / directories? During this session, we'll be looking at creative ways to use Triggers to get around a few of those annoying limitations, and what kind of impact they might have on your application in production.
This is a query optimization troubleshooting roadmap, presented by one of the MySQL optimizer developers. First, we'll give an overview of available query execution strategies and how they are (or aren't) shown in the EXPLAIN output. Second, we'll show how one can find out what the optimizer got wrong. Third, we'll discuss what means one can use to make the optimizer pick the right query plan.
You don't have to read source code -- understanding how MySQL works can be achieved through the system data. Learn a wide range of topics in this 3-hour tutorial, and leave armed with tons of knowledge about how MySQL 5.0, 5.1 and 6.0 work. You will take home a healthy understanding of performance tuning, storage engines, replication and many tips and tricks to help you be a better DBA.
Based on a real-world case study from a comprehensive market intelligence product - developed for Boats.com/YachtWorld.com by Breadboard BI, Inc - this 45 minute presentation describes a multi-source, enterprise data warehouse developed on a 100% open source stack - MySQL 5.1 (with partitioning), Pentaho Business Intelligence Suite, Linux OS.
SQLstream's SQL engine performs continuous ETL to offload aggregation and data cleaning from MySQL database systems. Simultaneously, SQLstream enhances MySQL with true real-time queries and analytics. The result is that MySQL executes historical queries much faster while remaining continuously updated and accurate to the last second.
The Dojo toolkit is a popular AJAX-based platform for building interactive web applications. This session will provide information on how to build some basic applications using a combination of Dojo and MySQL. The applications will be built from base principles to fully working system,showing both the interactive and database components.
There has been a lack of substantive data about the state of open source in the business intelligence and data warehousing market. In this session noted industry analyst Mark Madsen will present the results of his recent market research on adoption profiles and characteristics for open source BI/DW.  
Q4M (http://q4m.31tools.com) is a high-performance message queue that works as a pluggable storage engine of MySQL, used by Mixi (Japan's largest SNS provider) and Cybozu Labs (for running Pathtraq, one of the nation's largest web access stats service), etc. The presentation will cover from the design principles of Q4M, to how it is used to modularize, stabilize, and extend the web services.
One of MySQL 5.1 main features is the event scheduler, a portable way of executing SQL commands at given times or at scheduled intervals. Using the event scheduler you can organize your work regardless of the operating system you work with. This session presents the basics of the event scheduler, common tasks, tips and tricks.
Long the domain of ArcSDE, Oracle, and other proprietary database back ends, MySQL can compete as a reliable open-source database solution in the rapidly expanding world of Web Mapping Services (WMS). This presentation will demonstrate the utility and flexibility of MySQL's geo-spatial features and how these can be combined with other technologies to publish data into open WMS standards.
MySQL Cluster is unique among the selection of MySQL storage engines in that's not exclusively dependent on a MySQL server. The result is that a cluster can be accessed just as any other MySQL database or directly with the native NDB API. This session will cover application development with MySQL Cluster and Java using NDB/J.

Co-presented By:

O'Reilly Media MySQL/Sun Microsystems
  • Kickfire
  • Virident
  • Infobright, Inc
  • JasperSoft
  • Intel
  • Advanced Micro Devices
  • BIRT Exchange by Actuate
  • Calpont
  • Canonical
  • Continuent
  • Dolphin Interconnect Solutions
  • Facebook
  • HiT Software, Inc.
  • IBM
  • iDashboards
  • Oracle
  • Pentaho
  • R1Soft
  • Schooner Information Technology
  • SQLstream
  • Ticketmaster
  • Zmanda, Inc.
  • Linux Journal

Sponsorship Opportunities

For information on exhibition and sponsorship opportunities at the conference, contact Sharon Cordesse at scordesse@oreilly.com

Download the MySQL Sponsor/Exhibitor Prospectus

Media Partner Opportunities

Download the Media & Promotional Partner Brochure (PDF) for information on trade opportunities with O'Reilly conferences or contact mediapartners@ oreilly.com

Press and Media

For media-related inquiries, contact Maureen Jennings at maureen@oreilly.com

MySQL Conference Newsletter

To stay abreast of conference news and to receive email notification when registration opens, please sign up for the MySQL Conference newsletter.

Contact Us

View a complete list of MySQL contacts.