Tag Archive for MySQL Cluster 7.0

New white paper: Guide to Optimizing Performance of the MySQL Cluster Database

MySQL Cluster Connection Pooling

MySQL Cluster Connection Pooling

This guide explores how to tune and optimize the MySQL Cluster database to handle diverse workload requirements. It discusses data access patterns and how to build distribution awareness into applications, before exploring schema and query optimization, tuning of parameters and how to get the best out of the latest innovations in hardware design.

The Guide concludes with recent performance benchmarks conducted with the MySQL Cluster database, an overview of how MySQL Cluster can be integrated with other MySQL storage engines, before summarizing additional resources that will enable you to optimize MySQL Cluster performance with your applications.

Download the white paper (as always, for free) from: http://www.mysql.com/why-mysql/white-papers/mysql_wp_cluster_perfomance.php

MySQL Cluster 7.0.9 GA binaries released

The GA binaries for MySQL Cluster 7.0.9 have been released – download them from http://dev.mysql.com/downloads/select.php?id=14

A summary of the changes can be found in the MySQL Cluster 7.0.9 Change Log

Free Webinar: Shopatron’s eCommerce Services Powered by MySQL Cluster – Best Practices

As one of the world’s leading eCommerce Service Providers, Shopatron needed to further improve scalability and availability of their eCommerce services to keep pace with their rapidly growing business, while at the same time, reducing costs.

After extensive evaluations, Shopatron selected MySQL Cluster to power its back-end database, running the entire eCommerce fulfillment engine.

Since deploying MySQL Cluster, Shopatron have achieved:

  • continuous service availability with sub-second failover and fully automated recovery
  • real-time performance, reducing query times from 3 seconds to 2 milliseconds
  • extreme levels of scalability on commodity hardware and open source software
  • reduced licensing, support and operational management costs

Tune into this webinar where Shopatron’s CIO/COO and VP of Engineering will both share their experiences and best practices of implementing the MySQL Cluster database for eCommerce applications.


Sean Collier, CIO & COO, Shopatron Inc.
David Dalrymple, VP of Engineering, Shopatron Inc.
Matthew Keep, MySQL Product Management


Thursday, October 22, 2009: 10:00 Pacific time (America)
Thu, Oct 22: 07:00 Hawaii time
Thu, Oct 22: 11:00 Mountain time (America)
Thu, Oct 22: 12:00 Central time (America)
Thu, Oct 22: 13:00 Eastern time (America)
Thu, Oct 22: 17:00 UTC
Thu, Oct 22: 18:00 Western European time
Thu, Oct 22: 19:00 Central European time
Thu, Oct 22: 20:00 Eastern European time

Free webinar: FreeRADIUS & MySQL Cluster: Scalable and Highly Available AAA Services – EMEA

FreeRADIUS And MySQL ClusterAs network use grows and services become more dynamic, so existing Authentication, Authorization and Accounting (AAA) environments can struggle to keep pace with demand.

Tune into this webinar where you can hear from the Alan Dekok, one of the founders of the FreeRADIUS project and CEO of Network RADIUS, discuss the concepts and implementation of RADIUS services using the FreeRADIUS server and the MySQL Cluster database to deliver highly available and scalable AAA services.

As always, this webinar is free and you can register here. I will be manning the Q&A during the webinar.

In this session, you will learn about:

  • potential AAA limitations as network environments grow
  • advantages of deploying FreeRADIUS with MySQL Cluster
  • Performance, sizing and deployment of an AAA environment using FreeRADIUS with MySQL Cluster
  • customer case studies
  • how to get started


Alan Dekok, Founder of the FreeRADIUS project and CEO of Network RADIUS
Matthew Keep, MySQL Cluster Product Management


FreeRADIUS & MySQL Cluster: Scalable and Highly Available AAA Services web presentation.


Tuesday, October 20, 2009: 10:00 Central European time

Tue, Oct 20: 09:00 Western European time

Tue, Oct 20: 11:00 Eastern European time

The presentation will be approximately 45 minutes long followed by Q&A.


Simply access the web seminar from the comfort of your own office.


To learn more about how you can use FreeRADIUS and MySQL Cluster 7.0

MySQL Cluster 7.0.8a is now released

The GA binaries for MySQL Cluster 7.0.8a (the “a” is used to indicate that this is an increment on the original 7.0.8 source release) have been released – download them from http://dev.mysql.com/downloads/select.php?id=14

A summary of the changes can be found in the MySQL Cluster 7.0.8a Change Log

Free MySQL webinar today – High Availability Architectures for Online Applications

Update: You can now download a recording of the webinar and the slides from http://www.mysql.com/news-and-events/on-demand-webinars/display-od-403.html

I’ll be presenting the fourth (and final) session of the MySQL for Online Applications webinar series today (29 September). Today’s High Availability Architectures for Online Applications webinar covers:

  • MySQL Replication
  • MySQL Cluster
  • Distributed Replicated Block Device (DRBD)
  • Other high-availability technologies

Register here.

This session starts at 10:00 am Pacific Time but will be rerun tomorrow at 10:00 am CET (9:00 am UK) with Ivan Zoratti presenting (I’ll be handling questions).

More details for today’s webinar:

Tuesday, September 29, 2009

Join us for the last of our 4 part webinar series exploring the different aspects of using MySQL as the backend database for online applications. With real life experience gained working with MySQL Customers such as Facebook, Alcatel Lucent and Google, this webinar series will give you the information you need to run scalable, highly available online applications.

In this last installment we look at MySQL high availability technologies and architectures. We will explore the uses cases for implementing:

  • MySQL Replication
  • MySQL Cluster
  • Distributed Replicated Block Device (DRBD)
  • Other high-availability technologies

Also, covered will be the fundamentals of how these technologies work and how they can be combined to create a more scalable and highly available database infrastructure. Several case studies will be presented to show how these technologies have been implemented in the real world.

Whether you are already using MySQL for your online application or considering it for a new project then register today to learn how you can make best use of the world’s most popular database for online applications.


Andrew Morgan, Senior Product Manager, MySQL


High Availability Architectures for Online Applications web presentation.


Tuesday, September 29, 2009: 10:00 Pacific time (America)

Tue, Sep 29: 07:00 Hawaii time
Tue, Sep 29: 11:00 Mountain time (America)
Tue, Sep 29: 12:00 Central time (America)
Tue, Sep 29: 13:00 Eastern time (America)
Tue, Sep 29: 17:00 UTC
Tue, Sep 29: 18:00 Western European time
Tue, Sep 29: 19:00 Central European time
Tue, Sep 29: 20:00 Eastern European time
High Availability Architectures for Online Applications

MySQL Cluster 7.0.7 binaries released

The binaries for MySQL Cluster 7.0.7 have now been released and can be downloaded from http://dev.mysql.com/downloads/cluster/7.0.html

A description of all of the changes (fixes) that have gone into MySQL Cluster 7.0.7 (compared to 7.0.6) can be found in the MySQL Cluster 7.0.7 Change Log.

MySQL Cluster 7.0.7 source released

Update: As explained in “MySQL Cluster 7.0.7 binaries released” you can now download the compiled binaries for your particular platform. I am going to leave this entry in place as it will hopefully be useful for future releases but for 7.0.7 you should refer to that other post.

You’ll need to wait for the pre-built binaries but you can now download the source code and build it for yourself to get started. This article explains where to get it and how to build, install and test the installation.

In this example, I’ve used Ubuntu.

The first step is to download the compressed tar ball containing the source code by pointing your browser to ftp://ftp.mysql.com/pub/mysql/download/cluster_telco/mysql-5.1.35-ndb-7.0.7/mysql-cluster-gpl-7.0.7.tar.gz

Then you need to extract the code and then build and install the software:

billy@billy-laptop:~/mysql$ tar -xzf mysql-cluster-gpl-7.0.7.tar.gz
billy@billy-laptop:~/mysql$ mv mysql-cluster-gpl-7.0.7 7_0_7
billy@billy-laptop:~/mysql$ cd 7_0_7
billy@billy-laptop:~/mysql/7_0_7$ autoreconf --force --install
billy@billy-laptop:~/mysql/7_0_7$ ./configure --with-plugins=max --prefix=/usr/local/mysql
billy@billy-laptop:~/mysql/7_0_7$ make
billy@billy-laptop:~/mysql/7_0_7$ sudo make install
billy@billy-laptop:~/mysql/7_0_7$ sudo cp storage/ndb/src/kernel/ndbd /usr/local/mysql/bin
billy@billy-laptop:~/mysql/7_0_7$ sudo cp storage/ndb/src/kernel/ndbmtd /usr/local/mysql/bin
billy@billy-laptop:~/mysql/7_0_7$ sudo cp storage/ndb/src/mgmsrv/ndb_mgmd /usr/local/mysql/bin
billy@billy-laptop:~/mysql/7_0_7$ cd /usr/local/mysql/mysql-test
billy@billy-laptop:/usr/local/mysql/mysql-test$ sudo chmod 777 .
billy@billy-laptop:/usr/local/mysql/mysql-test$ sudo chmod 777 *

You can then test that the installation has been successful:

billy@billy-laptop:/usr/local/mysql/mysql-test$ ./mtr ndb_basic

Logging: ./mtr  ndb_basic
090902 18:17:43 [Warning] Forcing shutdown of 2 plugins
MySQL Version 5.1.35
Checking supported features...
- using ndbcluster when necessary, mysqld supports it
- skipping SSL, mysqld not compiled with SSL
- multi threaded ndbd, will be used "round robin"
Collecting tests...
vardir: /usr/local/mysql/mysql-test/var
Removing old var directory...
Creating var directory '/usr/local/mysql/mysql-test/var'...
Installing system database...
Using server port 43993


TEST                                      RESULT   TIME (ms)

worker[1] Using MTR_BUILD_THREAD 250, with reserved ports 12500..12509
ndb.ndb_basic                            [ pass ]  73661
The servers were restarted 0 times
Spent 73.661 of 143 seconds executing testcases

All 1 tests were successful.

Following this you can configure and use the software as normal (refer to Creating a simple Cluster on a single LINUX host).

The annotated header information has already been updated in the NDB API Docs section.

A description of all of the changes (fixes) that have gone into MySQL Cluster 7.0.7 (compared to 7.0.6) can be found in the MySQL Cluster 7.0.7 Change Log.

Webinar: MySQL Cluster 7.0: What’s New? (AS/ANZ/IN)

Mat Keep and I will be presenting a Webinar on Wednesday, August 12, 2009 describing the new capabilities of MySQL Cluster 7.0. The time is designed to be Asia/Australasia-friendly but of course it’s open to everyone.

Register for the MySQL Cluster 7 Webinar here.

By attending this webinar, you will learn more about the next generation of MySQL Cluster, and how it enables you to deliver 99.999% database availability, with real time performance and linear scalability, while slashing TCO.

Boasting a range of breakthrough capabilities, MySQL Cluster 7.0 will enable you to stay ahead of your most demanding, mission-critical application requirements. Enhanced scalability delivers higher database performance with fewer nodes to simplify deployment and administration. Expanded platform support and interoperability delivers more choice in both the development and deployment of MySQL Cluster. Simplified cluster monitoring tools reduce DBA administration overhead and operational costs.

Wednesday, August 12, 2009: 14:00 Singapore/Malaysia/Philippines time

Wed, Aug 12: 11:30 India, Sri Lanka
Wed, Aug 12: 13:00 Thailand/Vietnam/Western Indonesia time
Wed, Aug 12: 14:00 Western Australia
Wed, Aug 12: 15:30 Northern Territory (Australia)
Wed, Aug 12: 15:30 South Australia
Wed, Aug 12: 16:00 Queensland (Australia)
Wed, Aug 12: 16:00 NSW, ACT, Victoria, Tasmania (Australia)
Wed, Aug 12: 18:00 New Zealand time

MySQL Cluster Data Node restart times

Restart times have been reduced in MySQL Cluster 6.3.28a & 7.0.9a – refer to that article for the new timings: http://www.clusterdb.com/mysql-cluster/mysql-cluster-restarts-get-faster/

Restarts are required for certain, infrequent maintenance activities. Note that there is no loss of service while a single node restarts.

When a data node restarts, it first attempts to load the data into memory from the local log files and then it will catch up with any subsequent changes by retrieveing them from the surviving node(s) in its node group.

 Based on this, you would expect the time taken to restart a data node to be influenced by:

  1. The amount of data that was stored on the data node before the restart
  2. Rate of updates being made to the data during the restart
  3. Network performance (assuming the data is being updated during recovery)

The times will also be influenced bycertain configuration parameters, performance of the host machine and whether the multi-threaded data node (ndbmtd) is being used.

To provide some insight into how these factors impact restart times, tests have been performed where the following factors are varied:

  • Database size (Each Gbyte is made up of 1,000,000 tuples in each of 5 tables)
  • Whether traffic is running or not (a single thread using the NDB API to send in up to 2K tps (10K updates/second))
  • Whether the 2 data nodes in the node group are on the same host or separated by a Gbit Ethernet network

The following factors are kept constant:

  • Physical hosts: Intel Core 2 Quad Q8200@2.33 GHz; 7.7 GBytes RAM
  • NoOfFragmentLogFiles: 300
  • MaxNoOfExecutionThreads=4

Here are the observed results:

Data Node restart times

Data Node restart times

There are a couple of things to note from these results:

  • Using the multi-threaded data node (ndbmtd) greatly improves the restart time (in this case, 4 threads were available, improvements could be even greater on an 8 core/thread system)
  • Results become less predictable when heavy update traffic is being processed (in this case, up to 10,000 updated rows/second on a single node group). In the tests, no attempt was made to regulate this traffic and the test application was run on the same host as the one of the data nodes. Changes to the rate of updates will vary how long it takes for the restarting node to catch-up as it’s a moving target.

There is another recovery/restart scenario. The measurements shown above assumed that the file system on the data node’s host was intact and could be used to recover the in-memory copy – if that were not the case (or the data nodes were restarted with the “initial” option) then all of the data would have to be recovered from the surviving data node(s) in the same node group. As a comparison restarting a 6 Gbyte data node with the “initial” option took 20 minutes compared to 8 minutes without it (ndbmtd, over Gbit n/w).