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 Network Database.
For a full description of NDB Cluster capabilities, use-cases and resources, see the entry for MySQL Cluster
Standalone Ndb Cluster
Ndb Cluster has the following capabilities independent of any attached MySQL Server :
- Persistent, distributed storage of tables with unique or ordered indexes
- Redo logging, checkpointing, system recovery
- Auto-sharding of tables across data nodes
- Hashing some or all of the primary key
- Primary key, unique key, table scan and ordered index scan
- Parallel scan execution with 'pushed-down' filters
- Row locks, transactional updates
- Synchronous data replication within the cluster, automatic failover + recovery
- Automatic connection failover for 'API' processes
- Standard SQL datatypes including Blobs etc.
- Storage of data on disk
- Asynchronous data change triggers mechanism
- DDL operations (although independent DDL will not currently be recognised by any attached MySQL servers)
- Online index add, online table alter
- Online add node, table reorganisation
- Online backup
- Online upgrade
MySQL Cluster (Ndb Cluster + MySQL Server(s))
- SQL parsing / optimising / execution capability
- Cross-table join mechanism
- User authentication and authorisation
- Asynchronous data replication to other systems
Ndb Cluster is often configured as a MySQL Cluster (An Ndb Cluster with attached MySQL Server processes) with one or more non-MySQL Server API processes attached.
It is currently recommended that at least one MySQL Server is connected to an Ndb Cluster to perform DDL operations.
Refer to the MySQL Cluster entry
-  The MySQL Cluster API Developer Guide