After dealing with Windows performance, I switched to MySQL
  Cluster Configurator (MCC for short) project. This was quite a
  change for me having to deal with Python back-end and JavaScript
  front-end, languages I was not so familiar with.
  
  For the history of the project, please refer to Andrew's blog post for I will concentrate on changes
  made in new version.
  
  There are many exciting new features in MySQL Cluster 7.6.4DMR
  including new MCC. To download MySQL Cluster 7.6.4DMR, please go
  to Development Releases tab. To see what's new in
  7.6.4DMR, please follow this link.
  
  MySQL Cluster Configurator in short With a single …
  This blog gives some background to the decisions made when
  designing the
  storage engine NDB Cluster used in MySQL Cluster around how to
  support
  real-time requirements (or as I sometime refer to it, predictable
  response
  time requirements).
  
  Requirement analysisWhen analysing the requirements for NDB
  Cluster based on its usage in telecom
  databases two things were important. The first requirement is
  that we need to
  be able to respond to queries within a few milliseconds (today
  even down to
  tens of microseconds). The second requirement is that we need to
  do this while
  at the same time supporting a mix of simple traffic queries
  combined with a
  number of more complex queries running at the same time.
  
  The first requirement was the main requirement that led to NDB
  Cluster using a
  main memory storage model with durability on disk using a REDO
  log and
  various …
  The swedish research institute, SICS, have worked hard for a few
  years on
  developing a scalable and a highly available Hadoop
  implementation using
  MySQL Cluster to store the metadata. In particular they have
  focused on the
  Hadoop file system (HDFS) and the YARN. Using features of
  MySQL
  Cluster 7.5 they were able to achieve linear scaling in number of
  name
  nodes as well as in number of NDB data nodes to the number of
  nodes
  available for the experiment (72 machines). Read the press
  release from
  SICS here
  
  The existing metadata layer of HDFS is based on a single Java
  server
  that acts as name node in HDFS. There are implementations to
  ensure
  that this metadata layer have HA by using a backup name node and
  to
  use ZooKeeper for heartbeats and a number of …
  I have been fairly quiet on my blog for some time. We've been
  very busy
  developing new features for MySQL Cluster 7.5 and ensuring that
  the
  quality is improved even further.
  
  We're now very pleased to release a new version of MySQL
  Cluster.
  
  MySQL Cluster 7.5 contains a number of new things that makes
  MySQL
  Cluster even better.
  1) You can declare a table as a READ_BACKUP table. This means
  that
  the updating transactions will receive the commit
  acknowledge
  a little bit later to ensure that we can always use any of
  the
  replicas for reading. We will use the nearest replica for
  committed reads, for locking reads we will still use the
  primary
  replica to avoid deadlocks.
  
  For applications that are mostly read-focused one can make it
  easier
  to set this variable by setting the ndb-read-backup config
  variable
  to 1 in the MySQL Server …
Here’s a way to detect the sql query causing a lock or a session to fail, and also to identify the o.s.pid if need be (btw, no rocket science). “a” way.. I’m sure there are many others, so feel free to suggest, please.
So, we’re using MCM, and have created a MySQL Cluster like mentioned in the cluster intro session (in Spanish I’m afraid), using 7.4.6, which comes with 5.6.24.
With the env up and running, set up a schema, some data and run a few queries:
mysql> create database world; mysql> use world; Database changed mysql> source world_ndb.sql
(world_ndb.sql, as you might guess, is the world_innodb tables script, with a little adjustment as to which storage engine to be used.)
Once created, let’s lock things up in Cluster:
mysql -uroot -h127.0.0.1 -P3306 mysql> use test; …[Read more]
MySQL Cluster: El ‘qué’ y el ‘cómo’.
  Para aquellos que encuentran mucho sobre MySQL en Inglés pero
  poco en Español: mi pequeña aportación.
  En el enlace tenéis información sobre qué es MySQL Cluster y cómo
  funciona. Incluso con ejemplos técnicos para romper las barreras
  y ayudar a simplificarlo (espero).
¡A disfrutar!
January 30, 2015 By Severalnines
| In this joint webinar series with our friends from the HAProxy team, we covered the concepts around the popular open-source HAProxy load balancer, and demonstrated how to use it with SQL-based database clusters. We also discussed HA strategies for HAProxy with Keepalived and Virtual IP. | 
       | 
  
Thanks to everyone who participated in these two sessions this week! Please see below for details on next week’s follow up session 'Performance Tuning for HAProxy & MySQL'.
The topics covered this week included:
- What is HAProxy?
 - SQL Load balancing for MySQL
 - Failure detection using MySQL health checks
 - High Availability with Keepalived and Virtual IP
 - Use cases: MySQL/MariaDB Galera Cluster, MySQL NDB Cluster …
 
Thanks to everyone who attended and participated in last week’s webinar on 'Galera Cluster for MySQL vs MySQL (NDB) Cluster: A High Level Comparison'. If you missed the sessions or would like to watch the webinar again & browse through the slides, they are now available online.
In this webinar, Severalnines VP of Products, Alex Yu, who was part of the team at Ericsson who originally developed the NDB storage engine in 2001, gave an overview of the two clustering architectures and discussed their respective strengths and weaknesses:
- MySQL Cluster architecture: strengths and limitations
 - Galera Architecture: strengths and limitations
 - Deployment scenarios
 - Data migration
 - Read and write workloads (Optimistic/pessimistic locking)
 - WAN/Geographical replication
 - Schema changes
 - Management and monitoring …
 
While working with MySQL Cluster, i was looking for a monitoring framework for the cluster.
i came across a library @ https://launchpad.net/ndb-bindings – which had java and other connectors to NDB, the library was a wrapper of the existing C++ NDB Api.
This library allowed me to connect to the management node , get the state of the cluster and get real time notifications about heartbeat misses/node disconnections.
The library error-ed out on some conditions, with a small fix, it can work with MySQL Cluster 7.3.
https://github.com/jaihind213/mysql-cluster-ndb-bindings
I have listed down steps for compilation and running a sample program at github
Yesterday, I got the basics going for MySQL Cluster on POWER. Today, I finished up a couple more patches to improve performance and ran some benchmarks.
This is on a 3.7Ghz POWER8 machine with non-balanced memory (only 2 of the 4 NUMA nodes have memory, so we have less total memory bandwidth than we could have, plus I’m going to bind ndbmtd to the CPUs in these NUMA nodes)
With a setup of a single replica and two data nodes on the one machine (each bound to a specific NUMA node), running the flexAsync benchmark on MySQL Cluster 7.3.7, I could get around:
- 3.2 million reads/sec
 - 2.6 million deletes/sec
 - 2.4 million updates/sec
 - 2.4 million inserts/sec.
 
So, that’s at least in the right ballpark for a first go.
(I’m running this on a big endian host …
[Read more]