MySQL集群架构05分组复制架构和NDB集群架构

本博客讨论MySQL原生的两种架构:分组复制架构和NDB集群架构。这两种架构在之前的博客中有详细介绍。

一、MySQL分组复制架构

1.架构说明

MySQL Group Replication架构总体上还是一种基于复制的技术架构,可以轻松实现单主结构或者多主结构。每份数据存在于2个节点中,提供了数据安全保障的同时,节省了存储空间。主节点对外提供读写服务,而其它从结点仅仅提供只读服务。Group Replication内部实现了自动屏蔽故障主机的功能。

2.核心原理

MySQL Group Replication使用MySQL 内置插件的方式包含在MySQL发行版本中。

节点之间的事务决策机制采用分布式一致性算法PAXOS算法实现。任意两个节点之间建立专门的通信连接,用于探测节点是否存活以及数据传输。当主节点出现故障时,自动选举出新的主节点,同时让故障节点下线。

每份数据会自动复制到至少1个其它节点中,即每份数据至少存在于2个节点中,保障了数据的安全性。每个节点上存储的数据并不相同,即每份数据并不需要在每个节点上都存储。相比于PXC集群架构,Group Replication更加节省存储空间。

3.架构缺点

集群中节点数量目前限制为最多9个节点。集群的写事务的效率相对于单机系统有所降低。当出现节点故障时,可能导致数据重新分片(sharding),可能对集群造成影响。

4.适用场景

Group Replication适用于对事务一致性要求较高但是事务数据量不大的应用场合。

Group Replication不适合高并发的大量写事务的同时对写事务效率有较高要求的应用场合。

5.搭建环境

详见博客:http://www.cnblogs.com/coe2coe中的MySQL栏目。

6.故障转移

详见博客:http://www.cnblogs.com/coe2coe中的MySQL栏目。

二、MySQL NDB Cluster集群架构

1.架构说明

MySQL NDB Cluster集群架构使用了MySQL Group Replication技术和NDBCluster存储引擎的一种MySQL集群技术架构。这种集群中存在三种节点:管理节点、数据节点和SQL节点。

这种集群同样内置了自动检测故障主机并自动将故障主机下线并踢出集群的功能。

2.核心原理

NDB 集群中的管理节点负责集群的维护工作,包括节点的上线和下线以及节点状态监控等。数据节点负责数据的存储。SQL节点负责对外提供服务。

NDB Cluster集群架构与PXC架构相比,同样更加节省存储空间,因为NDB Cluster集群内部使用的跟MySQL Group Replication相似的数据分布方式。

3.架构缺点

NDB集群的最大缺点是只能使用NDBCluster存储引擎,不能使用Innodb 等其它存储引擎。

NDB集群要求每个表必须有一个主键,否则可能造成集群故障。

4.适用场景

NDB集群适用于对事务一致性要求较高但是事务数据量不大的应用场合。

NDB不适合高并发的大量写事务的同时对写事务效率有较高要求的应用场合。

5.搭建环境

详见博客:http://www.cnblogs.com/coe2coe中的MySQL栏目。

6.故障转移

详见博客:http://www.cnblogs.com/coe2coe中的MySQL栏目。

原文地址:https://www.cnblogs.com/coe2coe/p/9751612.html

时间: 2024-10-28 22:52:30

MySQL集群架构05分组复制架构和NDB集群架构的相关文章

Memcached 主主复制+ Keepalived 实现 Memcached 高可用架构集群

Memcached +keepalived 高可用集群 Memcached 主主复制这种架构,在程序连接时不知道应该连接哪个主服务器,所以需要在前端增加 VIP 地址,实现高可用架构.这里用 Keepalived 实现,因而 Keepalived 的作用就是用来检测 Memcached 服务器的状态是否正常. Keepalived 不断检测 Memcached 主服务器的11211端口,如果检测到 Memcached 服务发生宕机或者死机等情况,就会将 VIP 从主服务器移至从服务器,从而实现

2017最新技术java高级架构、千万高并发、分布式集群、架构师入门到精通视频教程

* { font-family: "Microsoft YaHei" !important } h1 { color: #FF0 } 15套java架构师.集群.高可用.高可扩 展.高性能.高并发.性能优化.Spring boot.Redis.ActiveMQ.Nginx.Mycat.Netty.Jvm大型分布 式项目实战视频教程 视频课程包含: 高级Java架构师包含:Spring boot.Spring  cloud.Dubbo.Redis.ActiveMQ.Nginx.Mycat

java架构师大型分布式综合项目实战,高并发,集群,高可用,程序设计,性能优化,架构设计,负载均衡,大数据量

* { font-family: "Microsoft YaHei" !important } h1 { color: #FF0 } 15套java架构师.集群.高可用.高可扩 展.高性能.高并发.性能优化.Spring boot.Redis.ActiveMQ.Nginx.Mycat.Netty.Jvm大型分布 式项目实战视频教程 视频课程包含: 高级Java架构师包含:Spring boot.Spring  cloud.Dubbo.Redis.ActiveMQ.Nginx.Mycat

Redis复制与可扩展集群搭建【转】

本文会讨论一下Redis的复制功能以及Redis复制机制本身的优缺点以及集群搭建问题. Redis复制流程概述 Redis的复制功能是完全建立在之前我们讨论过的基于内存快照的持久化策略基础上的,也就是说无论你的持久化策略选择的是什么,只要用到了Redis的复制功能,就一定会有内存快照发生,那么首先要注意你的系统内存容量规划,原因可以参考我上一篇文章中提到的Redis磁盘IO问题. Redis复制流程在Slave和Master端各自是一套状态机流转,涉及的状态信息是: Slave 端: REDIS

(转)Redis复制与可扩展集群搭建

讨论了Redis的常用数据类型与存储机制,本文会讨论一下Redis的复制功能以及Redis复制机制本身的优缺点以及集群搭建问题. Redis复制流程概述 Redis的复制功能是完全建立在之前我们讨论过的基于内存快照的持久化策略基础上的,也就是说无论你的持久化策略选择的是什么,只要用到了Redis的复制功能,就一定会有内存快照发生,那么首先要注意你的系统内存容量规划,原因可以参考我上一篇文章中提到的Redis磁盘IO问题. Redis复制流程在Slave和Master端各自是一套状态机流转,涉及的

MySQL学习笔记16分组复制的几个常见问题以及解决办法

MySQL分组复制提供的功能很强大,但是有时会出现一些问题,或者使用上存在一些限制主要包括: (1)分组复制的限制. (a)存储引擎只能是InnoDB. (b)二进制日志格式只支持ROW格式. (c)只支持使用GTID模式. (d)每个分组最多只支持9个成员节点. (2)数据表必须有主键. mysql> create table test (name varchar(100)); Query OK, 0 rows affected (0.05 sec) mysql> insert into t

Redis复制与可扩展集群搭建

抄自:http://www.infoq.com/cn/articles/tq-redis-copy-build-scalable-cluster 讨论了Redis的常用数据类型与存储机制,本文会讨论一下Redis的复制功能以及Redis复制机制本身的优缺点以及集群搭建问题. Redis复制流程概述 Redis的复制功能是完全建立在之前我们讨论过的基于内存快照的持久化策略基础上的,也就是说无论你的持久化策略选择的是什么,只要用到了Redis的复制功能,就一定会有内存快照发生,那么首先要注意你的系统

使用GTID给Galera集群做数据库异步复制

一.为什么要做Galera集群异步复制 Galera集群解决了数据库高可用的问题,但是存在局限性,例如耗时的事务处理可能会导致集群性能急剧下降,甚至出现阻塞现象.而不幸的是,类似报表等业务需求就需要做数据大批量的数据查询操作,为了不影响Galera的集群效率,需要做数据异步复制,产生一个从库来适配耗时的数据操作需求. 由于Galera集群的特殊性,我们不能使用一般的主从复制来实现数据异步复制的要求.集群中每台mariadb都会单独的记录binlog,使得一般的主从配置只能获取到单台数据的变更事件

Mysql上的RAC:Percona XtraDB Cluster负载均衡集群安装部署手册

 Percona XtraDB Cluster安装部署手册 引言 编写目的 编写此文档,供PerconaXtraDB Cluster部署时使用. 预期读者 系统维护人员及实施人员. 编制依据及参考资料 目标 通过阅读该手册,让读者明确PerconaXtraDB Cluster的安装.配置和维护情况,为后续数据库运维工作提供指导. 应用部署方案 环境准备 服务器列表 序号 IP 用途 HOSTNAME 操作系统 1 192.168.0.7 Percona XtraDB Cluster RedHat