MySQL Cluster

ClusterNDB
MySQL Cluster is a technology providing shared-nothing clustering and auto-sharding for the MySQL database management system.wikipedia
52 Related Articles

MySQL

M'''ySQLMySQL 4.1MySQL 4.x
MySQL Cluster is a technology providing shared-nothing clustering and auto-sharding for the MySQL database management system.
Built-in replication support (i.e., master-master replication and master-slave replication) with one master per slave, many slaves per master. Multi-master replication is provided in MySQL Cluster, and multi-master support can be added to unclustered configurations using Galera Cluster.

Shard (database architecture)

shardingshardedshard
MySQL Cluster uses automatic sharding (partitioning) to scale out read and write operations on commodity hardware and can be accessed via SQL and Non-SQL (NoSQL) APIs
MySQL Cluster: Auto-Sharding: Database is automatically and transparently partitioned across low-cost commodity nodes, allowing scale-out of read and write queries, without requiring changes to the application.

Shared-nothing architecture

shared-nothingshared nothing architectureshared nothing
MySQL Cluster is a technology providing shared-nothing clustering and auto-sharding for the MySQL database management system.
MySQL Cluster

MySQL AB

MySQL
MySQL AB acquired the technology behind MySQL Cluster from Alzato, a small venture company started by Ericsson.
MySQL AB is the creator of MySQL, a relational database management system, as well as related products such as MySQL Cluster.

NDB Cluster

NDB
MySQL Cluster is implemented through the NDB or NDBCLUSTER storage engine for MySQL ("NDB" stands for Network Database).
NDB Cluster is the distributed database system underlying MySQL Cluster.

Database

database management systemdatabasesdatabase systems
MySQL Cluster is a technology providing shared-nothing clustering and auto-sharding for the MySQL database management system.

ACID (computer science)

ACIDACID transactionsAtomicity, consistency, isolation, durability
MySQL Cluster is designed around a distributed, multi-master ACID compliant architecture with no single point of failure.

Single point of failure

single points of failurecentral point of failurecauses the entire circuit to "open" or stop operating
MySQL Cluster is designed around a distributed, multi-master ACID compliant architecture with no single point of failure.

Application programming interface

APIAPIsapplication programming interfaces
MySQL Cluster uses automatic sharding (partitioning) to scale out read and write operations on commodity hardware and can be accessed via SQL and Non-SQL (NoSQL) APIs

Replication (computing)

replicationdata replicationreplicated
Internally MySQL Cluster uses synchronous replication through a two-phase commit mechanism in order to guarantee that data is written to multiple nodes upon committing the data.

Two-phase commit protocol

two-phase committwo phase commit2-phase commit
Internally MySQL Cluster uses synchronous replication through a two-phase commit mechanism in order to guarantee that data is written to multiple nodes upon committing the data.

Disaster recovery

recovery point objectiverecovery time objectiverecovery
This is typically used to replicate clusters between data centers for disaster recovery or to reduce the effects of network latency by locating data physically closer to a set of users.

Optimistic concurrency control

optimisticoptimistic concurrencyoptimistic concurrency mechanism
Unlike standard MySQL replication, MySQL Cluster's geographic replication uses optimistic concurrency control and the concept of Epochs to provide a mechanism for conflict detection and resolution, enabling active/active clustering between data centers.

Partition (database)

partitioninghorizontal partitioningpartitions
Data within MySQL Cluster (NDB) tables is automatically partitioned across all of the data nodes in the system.

Primary key

alternate keydefining database keykey
This is done based on a hashing algorithm based on the primary key on the table, and is transparent to the end application.

Table (database)

tabletablesdatabase table
This is done based on a hashing algorithm based on the primary key on the table, and is transparent to the end application.

Application software

applicationapplicationssoftware application
This is done based on a hashing algorithm based on the primary key on the table, and is transparent to the end application.

Database index

indexindexesindexing
MySQL Cluster maintains all indexed columns in distributed memory.

Hard disk drive

hard drivehard diskhard drives
Non-indexed columns can also be maintained in distributed memory or can be maintained on disk with an in-memory page cache.

Page cache

disk cachecachesdisk caching
Non-indexed columns can also be maintained in distributed memory or can be maintained on disk with an in-memory page cache.

Redo log

online redo log filesRedo
MySQL Cluster writes Redo logs to disk for all data changes as well as check pointing data to disk regularly.

Asynchronous communication

asynchronousasynchronouslyASYNC
As the Redo logs are written asynchronously with respect to transaction commit, some small number of transactions can be lost if the full cluster fails, however this can be mitigated by using geographic replication or multi-site cluster discussed above.

Storage area network

SANstorage area networksSANs
Shared disk (SAN) is not required.

Ethernet

wiredJabbernetworking
The interconnects between nodes can be standard Ethernet, Gigabit Ethernet, InfiniBand, or SCI interconnects.

Gigabit Ethernet

1000BASE-TGigabit1000BASE-SX
The interconnects between nodes can be standard Ethernet, Gigabit Ethernet, InfiniBand, or SCI interconnects.