最近,公司正打算做ITOO产品,所以前期的技术调研是必不可少的。

本文的将对MySQL Cluster进行简要介绍:


(一)概述

        MySQL cluster是Mysql适用于分布式计算机环境的膏使用、高冗余版本。

集群的节点。

        一个理想的集群是,用户从来不会意识到集群系统底层的节点,在用户看来,集群是一个系统,而不是多个计算机系统。

        除此之外,集群的系统管理员可以随意增加和删除集群的节点。


 集群一般分为以下两类:

 1、高可用集群


        致力于提供高度可靠的服务,目的在于减少服务中断时间。如果某个节点失效,他的冗余节点将在极短的时间内接管他的职责。对于用户而来,集群永远不会停机。

        分为两种工作方式:


       1)容错系统:通常是主从服务器方式。只有当主服务器时效,从服务器立刻代替主服务器向客户提供服务。


        2)负载均衡系统:急群众的所有节点都处于活动状态,它们分摊系统的工作负担。

2、高性能计算机群

        简称HPC集群,目的在于提供单个计算机所不能提供的强大的计算能力。将问题分解为若干分,多节点同时工作,从而缩短解决问题的时间。

(二)层次结构

有3类节点:

  1、管理节点,Management Node

        是整个集群的控制中心,负责各个节点的增加、杉树、启动、停止等。在启动MySQL Cluster时,必须先启动管理节点。

        启动命令是ndb_mgmd

  2、数据节点,Data Node

        用于存放数据。集群中至少要有一个数据节点。有两个以上的数据节点可保证集群的高可用性。

        增加数据节点,会导致集群的处理速度变慢。

        启动命令:ndbd

  3、SQL节点

        就是普通的mysqld进程,用来访问Cluster的数据。

        增加sql节点可提高整个集群的并发访问速度和整体的吞吐量

        启动命令:mysqld -ndbCluster


MySQL Cluster的层次结构如下:

mysql集群三种方式 mysql的集群_MySQL


Application,代表应用程序,比如:网页

sql,实质就是mysqld进程,为其他应用程序提供读取、写入MySQL数据库服务的接口。

storage,是存放数据的区域,具有高冗余性。

Management,是整个集群的管理中枢,具有最高的控制权限。