The NDB Cluster NDB
storage engine is implemented using a distributed, shared-nothing architecture, which causes it to behave differently from InnoDB
in a number of ways. For those unaccustomed to working with NDB
, unexpected behaviors can arise due to its distributed nature with regard to transactions, foreign keys, table limits, and other characteristics. These are shown in the following table:
Feature |
| NDB Cluster |
---|---|---|
MySQL Server Version | 5.7 | 5.7 |
|
|
|
NDB Cluster Version | N/A |
|
Storage Limits | 64TB | 3TB (PRactical upper limit based on 48 data nodes with 64GB RAM each; can be increased with disk-based data and BLOBs) |
Foreign Keys | Yes | Yes. |
Transactions | All standard types |
|
MVCC | Yes | No |
Data Compression | Yes | No (NDB Cluster checkpoint and backup files can be compressed) |
Large Row Support (> 14K) | Supported for | Supported for (Using these types to store very large amounts of data can lower NDB Cluster performance) |
Replication Support | Asynchronous and semisynchronous replication using MySQL Replication | Automatic synchronous replication within an NDB Cluster . Asynchronous replication between NDB Cluster s, using MySQL Replication |
Scaleout for Read Operations | Yes (MySQL Replication) | Yes (Automatic partitioning in NDB Cluster ; NDB Cluster Replication) |
Scaleout for Write Operations | Requires application-level partitioning (sharding) | Yes (Automatic partitioning in NDB Cluster is transparent to applications) |
High Availability (HA) | Requires additional software | Yes (Designed for 99.999% uptime) |
Node Failure Recovery and Failover | Requires additional software | Automatic (Key element in NDB Cluster architecture) |
Time for Node Failure Recovery | 30 seconds or longer | Typically < 1 second |
Real-Time Performance | No | Yes |
In-Memory Tables | No | Yes (Some data can optionally be stored on disk; both in-memory and disk data storage are durable) |
NoSQL access to Storage Engine | Yes | Yes Multiple APIs, including Memcached, Node.js/javaScript, Java, JPA, C++, and HTTP/REST |
Concurrent and Parallel Writes | Not supported | Up to 48 writers, optimized for concurrent writes |
Conflict Detection and Resolution (Multiple Replication Masters) | No | Yes |
Hash Indexes | No | Yes |
Online Addition of Nodes | Read-only replicas using MySQL Replication | Yes (all node types) |
Online Upgrades | No | Yes |
Online Schema Modifications | Yes, as part of MySQL 5.6. | Yes. |
新闻热点
疑难解答