当前位置:   article > 正文

MySQL Cluster 简介

mysql cluster

1.简介

MySQL Cluster 是官方推出的基于 NDB(Network DataBase)存储引擎的高可用、可伸缩的分布式数据库系统。

以下是 MySQL NDB Cluster 的主要特点和能力:

  • 高可用:MySQL Cluster 具有内置的高可用性功能,可以自动检测和恢复故障。它支持故障检测和节点恢复,以确保集群中的数据和服务可用性。
  • 分布式存储:NDB 存储引擎支持将数据分布在多个节点上,实现了数据的分布式存储。这意味着数据可以水平扩展,从而提高了存储容量和性能。
  • 实时处理:MySQL Cluster 旨在支持实时数据处理,特别适用于需要低延迟和高吞吐量的应用程序,如电信、在线游戏和金融领域。
  • 自动分区:NDB 存储引擎支持自动分区,可以根据数据分布自动将数据分割成多个分区,以实现负载均衡和高性能。
  • 动态扩展:MySQL Cluster 支持动态添加和删除节点,因此可以根据需求扩展集群。
  • 事务支持:MySQL Cluster 支持 ACID(原子性、一致性、隔离性和持久性)事务,确保数据的一致性和可靠性。
  • 并行查询:NDB 存储引擎支持并行查询,允许同时执行多个查询以提高性能。
  • 多地域复制:MySQL Cluster 支持跨地域数据复制,使数据在不同地理位置之间进行同步,以提高数据冗余和可用性。

2.组成

一个 MySQL Cluster 主要由以下三部分组成:

  1. SQL Node

SQL 节点主要负责实现一个数据库在存储层之上的所有事情,比如连接管理,Query 优化和响应 ,Cache 管理等等,只有存储层的工作交给了 NDB 数据节点去处理了。也就是说,在 MySQL Cluster 环境中的 SQL 节点,可以被认为是一个不需要提供任何存储引擎的 MySQL 服务器,因为他的存储引擎由 NDB 节点担任。

  1. Management Node

管理节点的作用是管理集群中的其他节点,执行提供配置数据、启动和停止节点以及运行备份等功能。因为这种类型的节点管理其他节点的配置,所以应该首先启动这种类型的节点,然后再启动其他类型节点。使用命令 ndb_mgmd 启动管理节点。

  1. Data Node

数据节点主要实现底层数据存储功能。每一个数据节点保存完整数据的一个 fragment,也就是一个数据分片(或者一份完整的数据,视节点数目和配置而定),所以只要配置得当,MySQL Cluster 在存储层不会出现单点的问题。使用命令 ndbdndbmtd 启动数据节点。

下面是一幅 MySQL Cluster 的基本架构图(出自 MySQL 官方参考手册):

在这里插入图片描述


参考文献

Chapter 23, MySQL NDB Cluster 8.0

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/很楠不爱3/article/detail/499281
推荐阅读
相关标签
  

闽ICP备14008679号