implements no-sharing clustering for the popular MySQL database management system. Taking advantage of the clustering technology, it provides enhanced availability and scalability for MySQL databases.
MySQL Cluster relies on a distributed architecture with low chance of failure, delivering high-scale systems that can serve intensive workloads generated by both SQL and no-SQL clients. In other words, it aims to ensure high throughput with a very low latency and a reduced response time.
The clustering technology in MySQL Cluster is based on the NDB (short for “network database”) storage engine in a version that is specifically designed for MySQL.
The cluster holds one or several management nodes that are responsible for controlling the nodes that store data in the database. All the servers, clients or MySQL-based APIs first call to the management nodes and then connect to the data nodes directly.
There are various advantages of using MySQL Cluster. First, thanks to its synchronous replication, the new database content is written to multiple nodes, which guarantees data availability. Secondly, auto-sharding ensures that database updates are reflected in all the corresponding nodes that gain access to the cluster. Last but not least, the cluster allows for large databases to be stored across multiple machines.