This tutorial aims to guide normal MySQL users and DBAs into the world of MySQL Cluster. From installing and configuring to creating your first clustered table and finally node failure handling. At the end of the session you’ll will be the proud owner of a full blown, tiny MySQL Cluster which you can show off at work. The data nodes will gently keep you lap warm when the air conditioning is set too low, and the cluster log will help you through sleepless nights.

Morning Session

At the beginning of the tutorial you will be supplied with a DVD containing a fully functioning MySQL cluster 7.0 on a VirtualBox virtual machine. We will then take you on the journey of getting the cluster up and running, using the laptops of other attendees as part for your cluster. Once you have the cluster up and running we will take you through the various components of the cluster, the data nodes (ndbd and ndbmtd), management nodes and SQL nodes. We will explain what node’s role is in the cluster and why it is important, and also cover the best and worst ways to set a cluster up (in terms of a node’s physical location).

The cluster is useless if it cannot store data! So we will guide you through creating your first clustered table and inserting and selecting data from it (even seeing the data instantly on your partner’s machine!).

Finally we will cover useful management node commands for controlling and getting information from the nodes as well as understanding the management node’s cluster log.

All this is done with the aim that you can follow the tutorial on your own cluster learning about it along the way.

Afternoon Session

Now that we have mastered the basic concepts in part 1 of this tutorial we will delve into slightly more complex topics. Starting with good and bad use cases for cluster, we will then go on to node failure handling and finally geographical replication. At the end of this session you will be able to drop a car from a height onto a server (although our budget will not extend to this exact demonstration), have zero downtime from it and know how to bring it back to full working order. You will also be able to geographically send your data half way across the world (or the room) without the complexity of handling it in your application.

MySQL Cluster may be transactional but it is not a direct replacement for InnoDB. We will demonstrate examples of good and bad schema and queries for MySQL Cluster and explain the reasons why they do/don’t perform as expected.

Occasionally when running a cluster things can go wrong, it could be because a configuration needs tweaking or a server is on fire, DON’T PANIC! We will explain what happens when this happens, what you would expect to see and how to rectify the situation.

MySQL Cluster is NoSQL too! We will give a taste of NDBAPI and MGMAPI so that your applications can monitor cluster and interface directly with the data nodes without the SQL layer!

Geographical asynchronous replication will be our final topic, this lets the cluster in your New York office asynchronously replicate to your Santa Clara office and back again with ease. We will demonstrate how this works and even get some of you to geographically replicate your clusters over the great distance of the conference room!

As Geert would put it, this will be one clusterful day!

People planning to attend this session also want to see:

Andrew Morgan

Oracle

Andrew is the MySQL Product Manager responsible for High Availability Solutions – in particular MySQL Cluster and replication. He is based in United Kingdom and has worked for MySQL/Sun/Oracle since February 2009.Before joining MySQL he was responsible for delivering High Availability telecoms applications which is where he became exposed to MySQL Cluster – replacing proprietary and other 3rd party databases. His primary roles in MySQL are working with engineers to make sure that MySQL Cluster & replication evolve to meet the needs of their users as well as spreading the word on the what people can get from these technologies.

Geert Vanderkelen

Sun Microsystems

Geert Vanderkelen is a member of the MySQL Support Team at Sun Microsystems. He is based in Germany and has worked for MySQL AB since April, 2005.

Before joining MySQL he worked as developer, DBA and SysAdmin for various companies in Belgium and Germany.

Today Geert specializes in MySQL Cluster and works together with colleagues around the world to ensure continued support for both customers and community. He’s also the maintainer of Sun’s MySQL Connector/Python.

Andrew Hutchings

Hewlett-Packard

Andrew Hutchings (aka LinuxJedi) is a Principal Software Engineer for Hewlett-Packard’s Advanced Technology Group working with new an exciting Open Source technologies. He is physically based in the middle of nowhere in the United Kingdom but works with a global development team.

Before joining HP he was a Senior Sustaining Engineer for SkySQL, Software Developer on the Drizzle project at Rackspace and a Senior MySQL Support Engineer for Sun Microsystems / Oracle Corporation specialising in MySQL Cluster and C/C++ APIs. He is also co-author of the book MySQL 5.1 Plugins Development.