[发明专利]分布式数据库中无状态计算实例高可用的实现方法及系统在审
申请号: | 202111073070.6 | 申请日: | 2021-09-14 |
公开(公告)号: | CN113886490A | 公开(公告)日: | 2022-01-04 |
发明(设计)人: | 何新敏;王伟哲 | 申请(专利权)人: | 北京东方金信科技股份有限公司 |
主分类号: | G06F16/27 | 分类号: | G06F16/27;G06F11/30 |
代理公司: | 北京纪凯知识产权代理有限公司 11245 | 代理人: | 王胥慧 |
地址: | 100083 北京市海淀区*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 分布式 数据库 状态 计算 实例 可用 实现 方法 系统 | ||
本发明涉及一种分布式数据库中无状态计算实例高可用的实现方法及系统,其特征在于,包括:对数据库的所有计算实例进行状态监控,确定离线的计算实例;分析离线的计算实例所在计算节点的状态,并根据分析的状态,重启离线计算实例或将离线的计算实例调度至其他计算节点,本发明在满足计算层高可用的同时,还不影响数据库的存储层,能够实现计算与存储的分离,可以广泛应用于分布式数据库领域中。
技术领域
本发明涉及分布式数据库领域,特别是关于一种分布式数据库中无状态计算实例高可用的实现方法及系统。
背景技术
当前,分布式数据库通常采用如图1所示的架构,它将数据拆分为若干个分片,每一分片交由不同的节点进行处理,节点间的数据无共享。这能够解决分布式数据库计算和存储能力随节点线性提升的问题。
但是,这种结构存在一个很大的缺陷,就是计算与存储是绑定的,数据库计算与存储的弹性能力不足,计算实例“有状态”,其高可用的实现也比较复杂。
发明内容
针对上述问题,本发明的目的是提供一种分布式数据库中无状态计算实例高可用的实现方法及系统,在已实现计算与存储分离的分布式数据库中使无状态计算实例实现高可用。
为实现上述目的,本发明采取以下技术方案:一方面,提供一种分布式数据库中无状态计算实例高可用的实现方法,包括:
对数据库的所有计算实例进行状态监控,确定离线的计算实例;
分析离线的计算实例所在计算节点的状态,并根据分析的状态,重启离线计算实例或将离线的计算实例调度至其他计算节点。
进一步地,所述对数据库的所有计算实例进行状态监控,确定离线的计算实例,包括:
对数据库的所有计算实例进行状态监控,分析所有计算实例的执行状态;
根据所有计算实例的执行状态,确定离线的计算实例。
进一步地,所述计算实例包括四种执行状态,其中:
第一执行状态:计算实例在线,且计算实例的当前计算节点与目标计算节点相同;
第二执行状态:计算实例在线,且计算实例的当前计算节点与目标计算节点不相同;
第三执行状态:计算实例离线,且计算实例的当前计算节点与目标计算节点不相同;
第四执行状态:计算实例离线,且计算实例的当前计算节点与目标计算节点相同。
进一步地,所述对计算实例进行状态监控包括监控计算实例是否存活以及能否及时响应探测消息。
进一步地,所述状态监控可采用探测的方式或主动上报心跳包的方式。
进一步地,所述分析离线的计算实例所在计算节点的状态,并根据分析的状态,重启离线计算实例或将离线的计算实例调度至其他计算节点,包括:
A)对数据库的计算节点进行状态监控,分析离线的计算实例所在计算节点的状态;
B)若计算节点的状态正常,则进入步骤C);否则,进入步骤D);
C)重启离线计算实例,如果计算实例的重启次数超过预先设定的阈值,则进入步骤D);
D)将离线的计算实例调度至其他计算节点。
进一步地,所述步骤D)的具体过程为:
在集群中选出一状态正常的计算节点,并将该计算节点设置为离线的计算实例需调度的目标计算节点;
将离线的计算实例的当前运行节点设定为需调度的目标计算节点;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京东方金信科技股份有限公司,未经北京东方金信科技股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202111073070.6/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种消防用便携式环保灭火器
- 下一篇:一种流量可控的串片式加热器