首页> 中国专利> 一种基于联邦集群的数据库系统非对称部署的构建方法

一种基于联邦集群的数据库系统非对称部署的构建方法

摘要

本发明提供一种基于联邦集群的数据库系统非对称部署的构建方法,包括以下步骤:S1.把基于对称部署(所有节点均部署gcware,coordinator,gnode)的分布式数据库集群系统按照功能拆分成gcware,coordinator,gnode三个子集群;S2.三个子集群gcware,coordinator,gnode组成的联邦集群间相互协作对外提供服务,gcware集群提供一致性服务;coordinator集群提供了集群入口也就是接收用户SQL的高可用性,集群元数据的高可用性,存储和计算集群的资源管理和任务调度;gnode集群提供了基础的数据存储和计算服务。这种设计解决了目前市场上主流的分布式数据库集群系统vertica,GreenPlum架构存在的问题,结构简洁,提高了稳定性,降低了操作复杂度,降低了集群元数据出现不一致的风险。

著录项

  • 公开/公告号CN104504128A

    专利类型发明专利

  • 公开/公告日2015-04-08

    原文格式PDF

  • 申请/专利号CN201410854077.5

  • 发明设计人 张绍勇;孔德生;武新;崔维力;

    申请日2014-12-31

  • 分类号G06F17/30(20060101);

  • 代理机构12211 天津滨海科纬知识产权代理有限公司;

  • 代理人杨慧玲

  • 地址 300384 天津市滨海新区高新区华苑产业区海泰发展六道6号海泰绿色产业基地J-518

  • 入库时间 2023-12-17 04:53:00

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2017-09-12

    授权

    授权

  • 2015-05-06

    实质审查的生效 IPC(主分类):G06F17/30 申请日:20141231

    实质审查的生效

  • 2015-04-08

    公开

    公开

说明书

技术领域

本发明涉及分布式数据库领域,具体涉及一种基于联邦集群的数据库系 统非对称部署的构建方法。

背景技术

随着大数据时代的来临,为了满足处理海量数据的需要,分布式数据库 系统被广泛地使用。分布式数据库系统物理上是由多台独立的节点组成,每 个节点内都有独立的CPU、总线、内存、硬盘等,这些节点可能放在不同的 位置,它们共同组成了一个逻辑上集中、物理上分布的大型分布式数据库系 统。分布式数据库系统需要提供以下核心组件,提供一致性服务的组件,简 称为gcware,一般部署在集群的所有节点上;提供集群入口(接收用户的 SQL)的高可用,集群元数据的高可用,存储和计算集群的资源管理和任务 调度的组件,简称为coordinator,一般部署在集群的所有节点上;提供基础的 数据存储和计算服务的组件,简称为gnode,一般部署在集群的所有节点上。

如图1所示,目前市场上主流的分布式数据库系统vertica采用了对称部 署的share nothing架构。它的coordinator部署在集群的所有节点上,所有节 点都作为用户的入口节点,负责接收用户的SQL,集群元数据的高可用,分 布式任务的调度;它的gnode部署在集群的所有节点上,负责数据存储和计 算服务;vertica的coordinator和gnode物理上是捆绑在一起的,无法进行拆 分,是由一个进程提供以上两种服务,因此必须部署在所有的节点上。它的 gcware部署在集群的所有节点或者部分节点上,缺省部署在所有的节点上, 当集群规模大(上百台节点)时,可部署在部分节点上,提供一致性服务。 该部署方式的劣势是vertica的coordinator和gnode物理上是捆绑在一起的, 无法进行拆分,是由一个进程提供以上两种服务,没有把coorinator剥离出 来可独立进行部署,必须部署在所有的节点上,但从职责上来说coordinator 仅提供集群入口的高可用,集群元数据的高可用和分布式任务的调度。相对 于部署在所有节点的gnode来说,coordinator不负责存储和运算,对于集群 入口(接收用户的SQL)功能和分布式任务调度的功能因占用资源的负载少, 因此无需部署到所有的节点上,对于集群元数据的高可用功能也无需部署到 所有的节点上,如部署到所有节点上,需要在所有节点维护集群的元数据, 带来的风险是集群元数据不一致的风险将增大。

如图2所示,目前市场上主流的分布式数据库系统GreenPlum采用了 Master-Slave方式的share nothing架构。它的coordinator部署在集群单台 master节点上,只有该节点作为用户的入口节点,负责接收用户的SQL,集 群元数据的高可用,分布式任务的调度;它的gnode部署在集群的所有节点 上,负责数据存储和计算服务;它的gcware部署在集群单台master节点上, 提供一致性服务。GreenPlum的coordinator和gcware部署在集群单台master 节点上,并且物理上是捆绑在一起的,无法进行拆分,是由一个进程提供以 上两种服务。该部署方式的劣势是GreenPlum的coordinator和gcware物理 上是捆绑在一起的,无法进行拆分,是由一个进程提供以上两种服务,没有 把coorinator剥离出来可独立进行部署,必须部署在单台master节点上,因 为单台master节点承担了coordinator和gcware的功能,master节点负责的 职责太多并且存在单点瓶颈,当高并发的应用场景时,master节点也成为了 系统的瓶颈。

发明内容

本发明要解决的是集群结构不合理,应由完全对等结构的ShareNothing 集群向以不同计算特征为划分的联邦体系结构的转化的问题。

为解决上述技术问题,本发明采用的技术方案是:一种基于联邦集群的 数据库系统非对称部署的构建方法,包括以下步骤:

S1.把基于对称部署(所有节点均部署gcware,coordinator,gnode)的分 布式数据库集群系统按照功能拆分成gcware,coordinator,gnode三个子集群;

S2.三个子集群gcware,coordinator,gnode组成的联邦集群间相互协作对 外提供服务,gcware集群提供一致性服务;coordinator集群提供了集群入口 也就是接收用户SQL的高可用性,集群元数据的高可用性,存储和计算集 群的资源管理和任务调度;gnode集群提供了基础的数据存储和计算服务。

进一步地,所述步骤S1包括

S11.构建gcware,coordinator,gnode三个子集群;

S12.注册coordinator集群和gnode集群的信息到gcware集群中。

进一步地,所述步骤S11包括

构建gcware集群,gcware集群需要至少3台机器组成,只要该集群中 一半以上的机器可用,则gcware集群即可用。gcware集群对coordinator集 群和gnode集群提供一致性服务,提供coordinator集群和gnode集群的静态 拓补结构和动态拓补结构信息,提供集群表的事务状态,集群锁,全局 sequence信息;

构建coordinator集群,coordinator集群需要至少2台机器组成, coordinator集群提供了集群入口即接收用户SQL的高可用性,集群元数据的 高可用性,存储和计算集群的资源管理和任务调度;

构建gnode集群,gnode集群需要至少2台机器组成,gnode集群提供 了基础的数据存储和计算服务。

进一步地,所述步骤S12包括

注册coordinator集群的节点信息及集群节点静态拓补结构到gcware集 群中,由gcware集群管理coordinator集群的成员信息;

注册gnode集群的节点信息及集群节点静态拓补结构到gcware集群中, 注册节点及其备份节点信息到gcware集群中。

进一步地,所述步骤S2包括

gcware集群动态管理coordinator集群的成员信息,当coordinator集群 的成员发生改变时,gcware集群将自动探寻到并把该信息持久保存在gcware 集群中,并对coordinator集群提供服务;

coordinator集群从gcware集群中获得coordinator集群和gnode集群的静 态拓补结构和动态拓补结构信息以及表的事务状态信息,集群锁以及全局 sequence信息;

coordinator集群运行时产生的表的事务状态信息,集群锁以及全局 sequence信息保存到gcware集群中;

coordinator集群作为集群的入口,接收的DDL语句在coordinator集群 和gnode集群执行,接收的DML语句和查询语句在gnode集群执行;

gcware集群动态管理gnode集群的成员信息,当gnode集群的成员发生 改变时,gcware集群将自动探寻到并把该信息持久保存在gcware集群中, 并对coordinator集群和gnode集群提供服务;

gnode集群作为存储和计算集群,接收coordinator集群发送过来的SQL 语句(DDL语句,DML语句,查询语句)去执行。

本发明采用的设计思想是:完成了由完全对等结构的ShareNothing集 群向以不同计算特征为划分的联邦体系结构的转化。在新的联邦体系结构 中,gcware集群提供了一致性服务,coordinator集群提供了集群入口的高可 用,集群元数据的高可用(元数据量达到GB级别,不适合保存于轻量级的 gcware集群中),存储和计算集群的资源管理和任务调度。gnode集群提供 了基础的数据存储和计算服务。数据库中真正ShareNothing的部分是由 gnode构成的存储和计算集群。

在coordinator层面,集群元数据是对等互为副本,是对称结构;而 coordinator元数据与gnode元数据是一对多的继承关系。对称部署方式下(所 有节点部署gcware,coordinator,gnode)的集群元数据管理同时包括了 coordinator元数据和gnode元数据,造成集群元数据管理复杂度极高。在联 邦集群架构中,gnode作为数据存储和计算节点,从集群层面看,其元数据 实际上是数据的一部分,应将其从集群中的元数据管理中去除掉。集群DDL 操作由coordinator集群上的元数据变更操作和各节点上gnode元数据与 coordinator上元数据同步共(n+1)个独立原子操作构成,相对于对称结构中 将2n个DDL操作绑定为一个原子操作,原子操作尺度小,稳定性会大幅提 高。DDL操作复杂度的降低的同时,coordinator集群执行器增加了对 coordinator元数据与gnode元数据不一致情况的检查和同步。

本发明具有的优点和积极效果是:解决了目前市场上主流的分布式数据 库系统vertica,GreenPlum架构存在的问题,结构简洁,提高了稳定性,降 低了操作复杂度,降低了集群元数据出现不一致的风险。

附图说明

图1vertica分布式数据库集群系统部署图;

图2GreenPlum分布式数据库集群系统部署图;

图3GBase基于对称部署的分布式数据库集群系统部署图;

图4GBase基于联邦集群的分布式数据库集群系统的非对称部署图。

具体实施方式

如图4所示,一种基于联邦集群的数据库系统非对称部署的构建方法, 包括以下步骤

S1.把基于对称部署(所有节点均部署gcware,coordinator,gnode)的分 布式数据库集群系统按照功能拆分成gcware,coordinator,gnode三个子集群;

S2.三个子集群gcware,coordinator,gnode组成的联邦集群间相互协作对 外提供服务,gcware集群提供一致性服务;coordinator集群提供了集群入口 也就是接收用户SQL的高可用性,集群元数据的高可用性,存储和计算集 群的资源管理和任务调度;gnode集群提供了基础的数据存储和计算服务。

所述步骤S1包括

S11.构建gcware,coordinator,gnode三个子集群;

S12.注册coordinator集群和gnode集群的信息到gcware集群中。

所述步骤S11包括

构建gcware集群,gcware集群需要至少3台机器组成,只要该集群中 一半以上的机器可用,则gcware集群即可用。gcware集群对coordinator集 群和gnode集群提供一致性服务,提供coordinator集群和gnode集群的静态 拓补结构和动态拓补结构信息,提供集群表的事务状态,集群锁,全局 sequence信息;

构建coordinator集群,coordinator集群需要至少2台机器组成, coordinator集群提供了集群入口即接收用户SQL的高可用性,集群元数据的 高可用性,存储和计算集群的资源管理和任务调度;

构建gnode集群,gnode集群需要至少2台机器组成,gnode集群提供 了基础的数据存储和计算服务。

所述步骤S12包括

注册coordinator集群的节点信息及集群节点静态拓补结构到gcware集 群中,由gcware集群管理coordinator集群的成员信息;

注册gnode集群的节点信息及集群节点静态拓补结构到gcware集群中, 注册节点及其备份节点信息到gcware集群中。

所述步骤S2包括

gcware集群动态管理coordinator集群的成员信息,当coordinator集群 的成员发生改变时,gcware集群将自动探寻到并把该信息持久保存在gcware 集群中,并对coordinator集群提供服务;

coordinator集群从gcware集群中获得coordinator集群和gnode集群的静 态拓补结构和动态拓补结构信息以及表的事务状态信息,集群锁以及全局 sequence信息;

coordinator集群运行时产生的表的事务状态信息,集群锁以及全局 sequence信息保存到gcware集群中;

coordinator集群作为集群的入口,接收的DDL语句在coordinator集群 和gnode集群执行,接收的DML语句和查询语句在gnode集群执行;

gcware集群动态管理gnode集群的成员信息,当gnode集群的成员发生 改变时,gcware集群将自动探寻到并把该信息持久保存在gcware集群中, 并对coordinator集群和gnode集群提供服务;

gnode集群作为存储和计算集群,接收coordinator集群发送过来的SQL 语句(DDL语句,DML语句,查询语句)去执行。

以上对本发明的实施例进行了详细说明,但所述内容仅为本发明的较佳 实施例,不能被认为用于限定本发明的实施范围。凡依本发明范围所作的均 等变化与改进等,均应仍归属于本专利涵盖范围之内。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号