MySQL Cluster: Difference between revisions

Content deleted Content added
Add description of MySQL Ndb Operator project
Update latest release
 
(12 intermediate revisions by 4 users not shown)
Line 9:
| developer = [[Oracle Corporation|Oracle]]
| released = November 2004
| latest release version = 8.4.36
| latest release date = {{Start date and age|20242025|1007|1623}} <ref>{{Cite web|url=https://dev.mysql.com/doc/relnotes/mysql-cluster/8.4/en/|title=MySQL NDB Cluster 8.4 Release Notes|website=mysql.com}}</ref>
| operating system = [[Cross-platform]]{{which?|date=January 2019}}
| language = English
| genre = [[Relational database management system|RDBMS]]
| license = [[GNU General Public License]] (version 2, with [[GPL linking exception|linking exception]]) or commercial [[EULA]]
| website = <ref>[http://{{URL|www.mysql.com/products/cluster/ Cluster CGE]. MySQL. Retrieved on 2013-09-18.</ref>}}
}}
 
Line 69:
 
===NDB Cluster===
'''NDB Cluster''' is the distributed [[database]] system underlying [[MySQL Cluster]]. It can be used independently of a [[MySQL]] Server with users accessing the Cluster via the NDB API (C++). "NDB" stands for '''N'''etwork '''D'''ata'''b'''ase.
 
From the MySQL Server perspective the NDB Cluster is a [[Database engine|Storage engine]] for storing [[Table (database)|tables]] of [[Record (database)|rows]].
 
From the NDB Cluster perspective, a MySQL Server [[Instance (computer science)|instance]] is an [[Application programming interface|API]] process connected to the Cluster. NDB Cluster can concurrently support access from other types of API processes including Memcached, JavaScript/Node.JS, Java, JPA and HTTP/REST. All API processes can operate on the same tables and data stored in the NDB Cluster.
 
[[MySQL Cluster]] uses the [[MySQL]] Server to provide the following capabilities on top of Ndb Cluster:
 
* [[SQL]] parsing / optimising / execution capability
** Connectors to applications via [[JDBC]], [[ODBC]] etc.
* Cross-table [[Join_Join (SQL)|join]] mechanism
* User authentication and authorisation
* Asynchronous data replication to other systems
 
All API processes including the MySQL Server use the NDBAPI<ref name="NdbApiDocs">[http://dev.mysql.com/doc/ndbapi/en/index.html] The MySQL Cluster API Developer Guide </ref> [[C++]] client library to connect to the NDB Cluster and perform operations.
 
==Implementation==
Line 94:
 
== Versions ==
From the 8.0 release onwards, MySQL Cluster is based directly on the corresponding releases of the MySQL Server. Previously, MySQL Cluster version numbers were decoupled from those of MySQL Server - for example MySQL Cluster 7.6 was based on/contained the server component from MySQL 5.7.
 
Higher versions of MySQL Cluster include all of the features of lower versions, plus some new features.
Line 102:
:Add support for TLS on cluster internal connections
* MySQL Cluster 8.0 based on MySQL 8.0
:Increase in max row size to 30kB, Support for up to 144 data nodes, Improved distributed filtering and joining, Support for parallel outer joins and semi joins, Improved schema and ACL handling, Online column rename, Simplified configuration, Multithreaded parallel backup and restore, Disk data performance improvements, Enhanced support for 3 and 4 replica configurations, Support for multi socket mesh networking, Support for restore transformations, Improved Blob write performance, Backup encryption, Support for IPv6, Threading autoconfiguration, Improved recovery performance, Improved query multithreading. <ref>{{Cite web|url=https://dev.mysql.com/doc/refman/8.0/en/mysql-cluster-what-is-new.html|title=MySQL :: MySQL 8.0 Reference Manual :: 22.1.4 What is New in NDB Cluster|website=dev.mysql.com}}</ref>
* MySQL Cluster 7.6 based on MySQL 5.7
:Improved restart and recovery times, reduced disk space usage, improved join performance, new import tool, shared memory communication, improved topology awareness for cloud.<ref>[https://blogs.oracle.com/mysql/mysql-cluster-76-is-now-generally-available MySQL Cluster 7.6 is now Generally Available], Oracle's MySQL Blog, 1 June 2018 </ref>
 
Older versions (no longer in development):
Line 160:
 
== See also ==
* Galera Cluster,<ref>[[https://galeracluster.com/products/ Galera Cluster]],</ref> a generic synchronous multi-master replication library for transactional databases, for MySQL and MariaDB. [https://mariadb.com/kb/en/galera-cluster/[MariaDB]].
* [[Percona Server for MySQL]] XtraDB Cluster, also is a combination of Galera replication library and MySQL supporting multi master.
* [[RonDB]] A fork of MySQL Cluster maintained by Hopsworks.,<ref>{{cite web|title=RonDB Announcement|url=https://www.logicalclocks.com/blog/comparing-rondb-on-aws-azure-and-gcp-using-sysbench|accessdate=2022-08-01}}</ref> a fork of MySQL Cluster maintained by Hopsworks.
 
== References ==