一种MPP架构数据库集群元数据管理方法技术

技术编号:12988550 阅读:131 留言:0更新日期:2016-03-09 20:41
本发明专利技术提供一种MPP架构数据库集群元数据管理方法,通过在数据库集群中增加内存数据库,实现集群元数据的统一管理。采用本发明专利技术中的方法,可以保证数据库集群中集群元数据的一致性,以及实现快速写入及读取集群元数据,解决集群失效节点重新加入集群时集群元数据不一致问题,进而提高数据库集群的高可用性。

【技术实现步骤摘要】

本专利技术涉及数据库集群的元数据管理技术,尤其涉及一种MPP架构数据库集群元数据管理方法
技术介绍
随着信息化技术的快速发展,一个企业的用户数量、数据量均呈现爆炸式增长,在业务量提高的同时,数据库的访问量和数据量快速增长对数据库处理能力和计算强度也相应增大,使得单一节点数据库根本无法承担。在这样一个背景下,大型分布式数据库集群产生了,所谓数据库集群,是指利用两台或多台数据库服务,构成一个虚拟单一数据库逻辑映像,像单数据库那样,向客户端提供透明的数据服务。在数据库系统中,数据库的表(Table)、索引(Index)、视图(View)等数据库对象的定义称之为数据库元数据。对于单数据库,数据库元数据只有一份,保存在数据库服务中,由数据库自身管理,所有链接到数据库的客户端访问同一份数据库元数据,并依据元数据访问数据库中的数据。对于数据库集群,将数据库元数据称为集群元数据,根据架构的不同,集群元数据存放的位置也有所不同。目前,有两种主流的数据库集群架构,带中心节点的集群架构和不带中心节点的MPP架构。带中心节点的集群架构,集群元数据只有一份,由中心节点统一负责管理,应用客户端统一从中心节点接入数据库集群,并获得集群元数据和数据库集群提供的服务;不带中心节点的MPP架构,集群元数据有多份,每个集群节点一份,且完全相同,由各个集群节点自身维护,应用客户端可以从任意集群节点接入数据库集群,并获得一致的集群元数据和数据库集群提供的服务。不带中心节点的MPP架构的数据库集群如图1所示,由多个集群节点组成,本例中由3个集群节点组成,每个集群节点运行一个独立的数据库,为满足数据库集群向客户端提供透明的数据服务需求一一即无论客户端从哪个集群节点接入数据库集群都和接入单一数据库一样,数据库集群的每个集群节点所存储的集群元数据必须完全相同,由此,当连接到集群节点1的客户端发起一个管理元数据的请求(例如创建表Tablel)时,该元数据变更需要在集群节点1、集群节点2和集群节点3上均实现才能够保证每个集群节点所存储的集群元数据是相同的,集群元数据管理流程参考图2所示。在上述数据库集群中,现有集群元数据管理方法在处理单个客户端发起的多个管理元数据请求或者多个客户端发起不同的管理元数据请求时,可以保证每个集群节点所存储的集群元数据是相同的。但是,在高并发场景下,如果从不同集群节点接入的客户端同时发起相同的管理元数据请求,例如:接入集群节点1的客户端请求建表Table2(id int,name char (20)),接入集群节点2的客户端请求建表Table2 (id int))时,会导致同时失败或者部分成功,即在某些节点上创建为Table2 (id int,name char (20)),某些节点上创建为Table2(id int)),从而导致集群元数据不一致现象。此外,如果集群中某个集群节点失效,会导致在该失效集群节点无法进行管理元数据的操作,则在该集群节点恢复正常状态之前,集群无法管理元数据信息。综上所述,集群元数据管理方法亟待改进。
技术实现思路
本专利技术所要解决的技术问题是在现有技术的基础上,提出一种数据库集群元数据管理的系统组成和方法,从而解决数据库集群元数据管理过程中可能出现的集群元数据不一致问题,提高数据库集群的高可用性,为应用系统提供更高质量的服务。为了解决上述技术问题,本专利技术所提出的一种MPP架构数据库集群元数据管理方法,包括如下步骤:(l)MPP架构数据库集群设置内存数据库,所述内存数据库为分布式、可扩展的内存数据库,分布在每个集群节点;(2)所述内存数据库虚拟为一个单一数据库为每个集群节点提供集群元数据管理服务。进一步的,步骤(2)所述集群元数据管理服务流程为:(21)某个集群节点接收到客户端的管理集群元数据请求以后,该集群节点将本次管理集群元数据请求发送给内存数据库;(22)内存数据库执行集群元数据管理,并返回管理集群元数据响应消息给集群节占.(23)集群节点发送管理集群元数据响应消息给客户端,客户端接收到管理集群元数据响应消息,本次元数据管理完成。优选的,所述集群元数据管理包括实现集群元数据的增加、变更、删除和读取功會泛。优选的,所述内存数据库与集群节点之间通过标准SQL接口完成集群元数据的管理。本专利技术具有的优点和积极效果是:1.保证集群元数据一致:内存数据库具备事务能力,提供ACID特性,集群元数据存储在内存数据库中,内存数据库自身可以保障数据的一致性;2.集群元数据高可用:使用内存数据库管理集群元数据,对于每个集群节点来说,如同访问一个单点数据库,不需要关注集群元数据存储的位置,集群元数据的存储由内存数据库负责管理,内存数据库将数据库分布存储在每个集群节点上,本身具备高可用机制,即使有某个集群节点宕机,内存数据库依然可以对外提供服务;3.快速恢复集群元数据管理功能:集群中某个集群节点失效脱离集群以后,当恢复该集群节点时,该集群节点自动加入内存数据库,并可以立即提供集群元数据管理功會κ ;4.并发管理集群元数据:内存数据库支持并发数据处理,由此,各个集群节点可并发的发起管理集群元数据请求。【附图说明】图1是数据库集群现状组成图的示意图;图2是数据库集群现状元数据管理流程说明图;图3是增加内存数据库的数据库集群组成的示意图;图4是本专利技术实施例示意图;图5是本专利技术的实施示意流程说明图。【具体实施方式】下面通过实施例对本专利技术作更详细的说明。图3中,表示了增加内存数据库的数据库集群组成的示意图图4为应用实例,可以看出,内存数据库采用了 VoltDB数据库,分布式、可扩展,分布在每个集群节点,VoltDB与集群节点之间通过标准SQL接口完成集群元数据的增加、变更、删除和读取等功能。图5给出了本专利技术的实施示意流程说明,具体包括以下步骤:201:客户端1接入集群节点1,发送管理集群元数据请求,例如创建一个表Tablel202:集群节点1接收到客户端的管理集群元数据请求(建Tablel),发送管理集群元数据请求给内存数据库203:内存数据库管理集群元数据,创建表Tablel成功,发管理集群元数据请求响应给集群节点1204:集群节点1接收到发管理元数据响应消息后,发送发管理元数据响应消息给客户端1205:客户端1接收到集群节点1的管理元数据响应消息(建表Tablel成功),本次元数据管理完成以上对本专利技术的实施例进行了详细说明,但所述内容仅为本专利技术的较佳实施例,不能被认为用于限定本专利技术的实施范围。凡依本专利技术范围所作的均等变化与改进等,均应仍归属于本专利涵盖范围之内。【主权项】1.一种MPP架构数据库集群元数据管理方法,其特征在于,包括如下步骤: (1)MPP架构数据库集群设置内存数据库,所述内存数据库为分布式、可扩展的内存数据库,分布在每个集群节点; (2)所述内存数据库虚拟为一个单一数据库为每个集群节点提供集群元数据管理服务。2.根据权利要求1所述的一种MPP架构数据库集群元数据管理方法,其特征在于,步骤(2)所述集群元数据管理服务流程为: (21)某个集群节点接收到客户端的管理集群元数据请求以后,该集群节点将本次管理集群元数据请求发送给内存数据库; (22)内存数据库执行集群元数据管理,并返回管理集群本文档来自技高网
...

【技术保护点】
一种MPP架构数据库集群元数据管理方法,其特征在于,包括如下步骤:(1)MPP架构数据库集群设置内存数据库,所述内存数据库为分布式、可扩展的内存数据库,分布在每个集群节点;(2)所述内存数据库虚拟为一个单一数据库为每个集群节点提供集群元数据管理服务。

【技术特征摘要】

【专利技术属性】
技术研发人员:赵伟武新王洪越杨伟伟
申请(专利权)人:天津南大通用数据技术股份有限公司
类型:发明
国别省市:天津;12

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1