If you have been following the development of the NDB Cluster storage engine lately, you are probably as excited as I am. NDB Cluster is becoming a kind of large database killer app. Look at all the nice features that have been added:
- Replication, if you know MySQL you know what I am talking about
- Distribution awareness, optimize query execution based on the distribution, a strong scaling factor
- Disk based data, the possibility of pushing some columns to disk
- Online add index, among the only online DDL I know of in MySQL
- Multi-threading, no more need to configure many data nodes per server
- Realtime, when query execution times matter
and I probably miss some. And now, with version 7 (renamed from 6.4) it is possible to extend a NDB cluster online, without doing a ndb_backup and ndb_restore. Johan did a clean demonstration on how to use this new feature here. The big missing remaining feature is Batch Key Access (BKA) which should improve significantly the performance. Mark Callaghan has published last week a patch that backports the MySQL-6.0 branch BKA code. The patch is for the MySQL-5.0 branch which is of Cretaceous age for NDB. I will try to apply the patch, at least the BKA, part to the MySQL-5.1 branch. Does anyone have already done this?
I have seen cluster achieving truly amazing things when there is a good application fit. The addition of BKA should widen the possibilities of good application fits. The NDB future is bright!
If you are coming to the UC and interested in learning more about Cluster and the features in MySQL Cluster 7.0, please come to the session where I will discuss those and how those matters to performance and scalability.
There are also a bunch of other sessions at the UC about Cluster that are very interesting, and there will also be a lot of people from the Cluster Team ready to take your comments and questions!
This is great. A few more changes towards supporting complex query workloads on Cluster. HP is doing this with NeoView derived from the Tandem product.