和mongo分片集群架构类似
集群节点有三种类型
-
管理节点:此类节点的作用是管理 NDB 群集内的其他节点,执行提供配置数据、启动和停止节点以及运行备份等功能。由于此节点类型管理其他节点的配置,因此应先启动此类型的节点,然后再启动任何其他节点。管理节点使用命令ndb_mgmd启动。
- 数据节点:这种类型的节点存储集群数据。
- SQL 节点:这是访问群集数据的节点。在 NDB 群集中,SQL 节点是使用
NDBCLUSTER
存储引擎的传统 MySQL 服务器。
特征 | InnoDB (MySQL 8.0) | NDB 8.0 |
---|---|---|
MySQL 服务器版本 | 8.0 | 8.0 |
InnoDB 版本 |
InnoDB 8.0.38 |
InnoDB 8.0.38 |
NDB 群集版本 | 不适用 | NDB 8.0.38/8.0.38 |
存储限制 | 64TB | 128TB |
外键 | 是的 | 是的 |
事务 | 所有标准类型 | READ COMMITTED |
脉动循环控制电路 | 是的 | 不 |
数据压缩 | 是的 | 否(NDB 检查点和备份文件可以压缩) |
大行支持 (> 14K) | 支持VARBINARY 、 VARCHAR 、 BLOB 和 TEXT 列 |
仅支持BLOB 和 TEXT 列(使用这些类型存储大量数据可能会降低 NDB 性能) |
复制支持 | 使用 MySQL 复制进行异步和半同步复制;MySQL组复制 | NDB 群集内的自动同步复制;NDB 群集之间的异步复制,使用 MySQL 复制(不支持半同步复制) |
读取操作的横向扩展 | 是(MySQL 复制) | 是(NDB Cluster 中的自动分区;NDB Cluster 复制) |
写入操作的横向扩展 | 需要应用程序级分区(分片) | 是(NDB Cluster 中的自动分区对应用程序是透明的) |
高可用性 (HA) | 内置,来自 InnoDB 集群 | 是(设计为 99.999% 正常运行时间) |
节点故障恢复和故障转移 | 来自 MySQL 组复制 | 自动(NDB 架构中的关键元素) |
节点故障恢复时间 | 30 秒或更长时间 | 通常<1秒 |
实时性能 | 不 | 是的 |
内存表 | 不 | 是(某些数据可以选择存储在磁盘上;内存和磁盘数据存储都是持久的) |
NoSQL 访问存储引擎 | 是的 | 是(多种 API,包括 Memcached、Node.js/JavaScript、Java、JPA、C++ 和 HTTP/REST) |
并发和并行写入 | 是的 | 最多 48 个写入器,针对并发写入进行了优化 |
冲突检测与解决(多源) | 是(MySQL 组复制) | 是的 |
哈希索引 | 不 | 是的 |
在线添加节点 | 使用 MySQL 组复制读取/写入副本 | 是(所有节点类型) |
在线升级 | 是(使用复制) | 是的 |
在线修改架构 | 是的,作为 MySQL 8.0 的一部分 | 是的 |
标签:8.0,存储,架构,NDB,复制,集群,MySQL,节点 From: https://www.cnblogs.com/wonchaofan/p/18300269