CN104504128B - 一种基于联邦集群的数据库系统非对称部署的构建方法 - Google Patents
一种基于联邦集群的数据库系统非对称部署的构建方法 Download PDFInfo
- Publication number
- CN104504128B CN104504128B CN201410854077.5A CN201410854077A CN104504128B CN 104504128 B CN104504128 B CN 104504128B CN 201410854077 A CN201410854077 A CN 201410854077A CN 104504128 B CN104504128 B CN 104504128B
- Authority
- CN
- China
- Prior art keywords
- clusters
- cluster
- coordinator
- gcware
- gnode
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/21—Design, administration or maintenance of databases
- G06F16/217—Database tuning
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明提供一种基于联邦集群的数据库系统非对称部署的构建方法,包括以下步骤:S1.把基于对称部署(所有节点均部署gcware,coordinator,gnode)的分布式数据库集群系统按照功能拆分成gcware,coordinator,gnode三个子集群;S2.三个子集群gcware,coordinator,gnode组成的联邦集群间相互协作对外提供服务,gcware集群提供一致性服务;coordinator集群提供了集群入口也就是接收用户SQL的高可用性,集群元数据的高可用性,存储和计算集群的资源管理和任务调度;gnode集群提供了基础的数据存储和计算服务。这种设计解决了目前市场上主流的分布式数据库集群系统vertica,GreenPlum架构存在的问题,结构简洁,提高了稳定性,降低了操作复杂度,降低了集群元数据出现不一致的风险。
Description
技术领域
本发明涉及分布式数据库领域,具体涉及一种基于联邦集群的数据库系统非对称部署的构建方法。
背景技术
随着大数据时代的来临,为了满足处理海量数据的需要,分布式数据库系统被广泛地使用。分布式数据库系统物理上是由多台独立的节点组成,每个节点内都有独立的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语句,查询语句)去执行。
以上对本发明的实施例进行了详细说明,但所述内容仅为本发明的较佳实施例,不能被认为用于限定本发明的实施范围。凡依本发明范围所作的均等变化与改进等,均应仍归属于本专利涵盖范围之内。
Claims (5)
1.一种基于联邦集群的数据库系统非对称部署的构建方法,其特征在于:包括以下步骤:
S1.把基于对称部署的分布式数据库集群系统按照功能拆分成gcware,coordinator,gnode三个子集群;
S2.三个子集群gcware,coordinator,gnode组成的联邦集群间相互协作对外提供服务,gcware集群提供一致性服务;coordinator集群提供了集群入口也就是接收用户SQL的高可用性,集群元数据的高可用性,存储和计算集群的资源管理和任务调度;gnode集群提供了基础的数据存储和计算服务。
2.根据权利要求1所述的一种基于联邦集群的数据库系统非对称部署的构建方法,其特征在于:所述步骤S1包括
S11.构建gcware,coordinator,gnode三个子集群;
S12.注册coordinator集群和gnode集群的信息到gcware集群中。
3.根据权利要求2所述的一种基于联邦集群的数据库系统非对称部署的构建方法,其特征在于:所述步骤S11包括
构建gcware集群,gcware集群需要至少3台机器组成,只要该集群中一半以上的机器可用,则gcware集群即可用;gcware集群对coordinator集群和gnode集群提供一致性服务,提供coordinator集群和gnode集群的静态拓补结构和动态拓补结构信息,提供集群表的事务状态,集群锁,全局sequence信息;
构建coordinator集群,coordinator集群需要至少2台机器组成,coordinator集群提供了集群入口即接收用户SQL的高可用性,集群元数据的高可用性,存储和计算集群的资源管理和任务调度;
构建gnode集群,gnode集群需要至少2台机器组成,gnode集群提供了基础的数据存储和计算服务。
4.根据权利要求2所述的一种基于联邦集群的数据库系统非对称部署的构建方法,其特征在于:所述步骤S12包括
注册coordinator集群的节点信息及集群节点静态拓补结构到gcware集群中,由gcware集群管理coordinator集群的成员信息;
注册gnode集群的节点信息及集群节点静态拓补结构到gcware集群中,注册节点及其备份节点信息到gcware集群中。
5.根据权利要求1所述的一种基于联邦集群的数据库系统非对称部署的构建方法,其特征在于:所述步骤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语句去执行。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410854077.5A CN104504128B (zh) | 2014-12-31 | 2014-12-31 | 一种基于联邦集群的数据库系统非对称部署的构建方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410854077.5A CN104504128B (zh) | 2014-12-31 | 2014-12-31 | 一种基于联邦集群的数据库系统非对称部署的构建方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104504128A CN104504128A (zh) | 2015-04-08 |
CN104504128B true CN104504128B (zh) | 2017-09-12 |
Family
ID=52945525
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410854077.5A Active CN104504128B (zh) | 2014-12-31 | 2014-12-31 | 一种基于联邦集群的数据库系统非对称部署的构建方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104504128B (zh) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105302500B (zh) * | 2015-11-24 | 2018-04-10 | 中国科学技术大学 | 一种基于动态条带构造的分布式编码方法 |
CN106250566A (zh) * | 2016-08-31 | 2016-12-21 | 天津南大通用数据技术股份有限公司 | 一种分布式数据库及其数据运算的管理方法 |
EP3407206B1 (en) | 2017-05-22 | 2021-08-04 | Fujitsu Limited | Reconciled data storage system |
CN111726388A (zh) * | 2019-03-22 | 2020-09-29 | 苏宁易购集团股份有限公司 | 一种跨集群高可用的实现方法、装置、系统及设备 |
CN110266771B (zh) * | 2019-05-30 | 2022-11-22 | 王静逸 | 分布式智能节点及分布式群体智能统部署方法 |
CN110990329B (zh) * | 2019-12-09 | 2023-12-01 | 杭州趣链科技有限公司 | 一种联邦计算高可用方法、设备及介质 |
CN112612854B (zh) * | 2020-12-29 | 2023-01-24 | 天津南大通用数据技术股份有限公司 | 一种集群数据库在断电或宕机时保证数据一致性的方法 |
CN113297173B (zh) * | 2021-05-24 | 2023-10-31 | 阿里巴巴新加坡控股有限公司 | 分布式数据库集群管理方法及装置、电子设备 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103209202A (zh) * | 2012-01-16 | 2013-07-17 | 联想(北京)有限公司 | 用于传输数据的方法和设备 |
CN103731508A (zh) * | 2014-01-23 | 2014-04-16 | 易桂先 | 一种基于云存储的网络硬盘装置及其管理方法 |
CN103747060A (zh) * | 2013-12-26 | 2014-04-23 | 惠州华阳通用电子有限公司 | 一种基于流媒体服务集群的分布式监控系统及方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8635309B2 (en) * | 2007-08-09 | 2014-01-21 | Hand Held Products, Inc. | Methods and apparatus to change a feature set on data collection devices |
-
2014
- 2014-12-31 CN CN201410854077.5A patent/CN104504128B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103209202A (zh) * | 2012-01-16 | 2013-07-17 | 联想(北京)有限公司 | 用于传输数据的方法和设备 |
CN103747060A (zh) * | 2013-12-26 | 2014-04-23 | 惠州华阳通用电子有限公司 | 一种基于流媒体服务集群的分布式监控系统及方法 |
CN103731508A (zh) * | 2014-01-23 | 2014-04-16 | 易桂先 | 一种基于云存储的网络硬盘装置及其管理方法 |
Non-Patent Citations (1)
Title |
---|
"容错系统中实时任务调度和负载均衡算法研究";王健;《中国博士学位论文全文数据库 信息科技辑》;20110315;全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN104504128A (zh) | 2015-04-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104504128B (zh) | 一种基于联邦集群的数据库系统非对称部署的构建方法 | |
CN108573006B (zh) | 跨机房数据同步系统、方法及装置、电子设备 | |
WO2017008657A1 (zh) | 一种数据快照获取的方法及系统 | |
CN106649378B (zh) | 一种数据同步方法及装置 | |
CN104885054B (zh) | 大规模并行处理数据库中执行事务的系统和方法 | |
US9154553B2 (en) | Methods, devices and systems for dynamically managing memberships in replicated state machines within a distributed computing environment | |
CN106126601A (zh) | 一种社保大数据分布式预处理方法及系统 | |
CN109582722A (zh) | 公安资源数据服务系统 | |
CN108469988A (zh) | 一种基于异构Hadoop集群的任务调度方法 | |
CN106250543A (zh) | 一种自动化数据查询同步存储方法 | |
CN105069109B (zh) | 一种分布式数据库扩容的方法和系统 | |
CN107220310A (zh) | 一种数据库数据管理系统、方法及装置 | |
CN104980518B (zh) | 多学习主体并行训练模型的方法、装置和系统 | |
CN103279390A (zh) | 一种面向小作业优化的并行处理系统 | |
CN105930417B (zh) | 一种基于云计算的大数据etl交互式处理平台 | |
CN103838855A (zh) | 余票更新的方法 | |
CN109145060A (zh) | 数据处理方法及装置 | |
Smid et al. | Case study on data communication in microservice architecture | |
US10931504B2 (en) | Abstraction layer for streaming data sources | |
Shi et al. | GIRAFFE: A scalable distributed coordination service for large-scale systems | |
Loganathan et al. | A systematic approach to Big Data | |
CN109657000B (zh) | 一种轨道交通综合监控系统的实时数据同步方法及装置 | |
Grinev et al. | Analytics for the real-time web | |
CN106528051B (zh) | 基于MongoDB的大数据队列堆栈操作的方法 | |
CN103078946A (zh) | 一种海量实时数据分布方法及其访问方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |