时序数据库集群及其故障处理、操作方法、及装置制造方法及图纸

技术编号:31310940 阅读:9 留言:0更新日期:2021-12-12 21:42
本申请涉及一种时序数据库集群及其故障处理方法、操作方法、及装置,时序数据库集群包括:至少一个元数据节点、多个数据节点;多个数据节点互为副本;元数据节点用于存储元数据,元数据至少包括数据节点的主机名;方法包括:当检测到任一数据节点发生故障时,新建虚拟节点;将发生故障的数据节点的配置文件拷贝至虚拟节点,并将发生故障的数据节点的数据盘挂载至虚拟节点;在时序数据库集群的主机名映射文件中,将目标映射关系中的IP地址更新为虚拟节点的IP地址,使得虚拟节点替代发生故障的数据节点提供数据服务。由此可以实现当时序数据库集群中任一数据节点发生故障,进行故障转移,且无需修改元数据,使得时序数据库集群高可用。用。用。

【技术实现步骤摘要】
时序数据库集群及其故障处理、操作方法、及装置


[0001]本申请涉及时序数据库领域,尤其涉及一种时序数据库集群及其故障处理方法、操作方法、及装置。

技术介绍

[0002]时序数据指时间序列数据(Time Series Data,简称时序数据),是将同一指标的数据按时间顺序记录的数据列,普遍存在于IT基础设施、运维监控系统和物联网中。相应的,时序数据库是一种特定类型的数据库,主要用来存储时序数据。
[0003]在实践中,实现一个时序数据库集群方案是一项非常复杂的工作,至少需要实现高可用的目标,也即,当集群中的数据节点发生故障时,集群具备自愈能力。

技术实现思路

[0004]本申请提供了一种时序数据库集群及其故障处理方法、操作方法、及装置,以提高时序数据库集群的可靠性、稳定性。
[0005]第一方面,本申请提供了一种时序数据库集群的故障处理方法,所述时序数据库集群包括:至少一个元数据节点、多个数据节点;所述数据节点用于存储时序数据,且多个所述数据节点互为副本;所述元数据节点用于存储所述时序数据库集群的元数据,所述元数据至少包括每一个所述数据节点的主机名;所述方法包括:
[0006]当检测到任一所述数据节点发生故障时,新建虚拟节点;
[0007]将发生故障的所述数据节点的配置文件拷贝至所述虚拟节点,并将发生故障的所述数据节点的数据盘挂载至所述虚拟节点;
[0008]在所述时序数据库集群的主机名映射文件中,将目标映射关系中的IP地址更新为所述虚拟节点的IP地址,所述目标映射关系指发生故障的所述数据节点对应的映射关系;
[0009]重启所述时序数据库集群,以使所述虚拟节点替代发生故障的所述数据节点提供数据服务。
[0010]在一可能的实现方式中,所述时序数据库集群还包括探活组件,所述探活组件用于周期性地向各所述数据节点发送探活报文;
[0011]所述检测到任一所述数据节点发生故障,包括:
[0012]针对每一所述数据节点,若在当前的超时时间内,未接收到所述数据节点基于所述探活报文返回的应答报文,则确定所述数据节点故障,所述当前的超时时间指:以所述探活组件最近一次发送所述探活报文的时间为起始时刻,以设定时长为时长的时间段;或者,
[0013]针对每一所述数据节点,若在设定周期到达时,未接收到所述数据节点发送的心跳报文,则确定所述数据节点故障。
[0014]第二方面,本申请提供了一种时序数据库集群的操作方法,应用于第一方面任一项所述的时序数据库集群,所述方法包括:
[0015]当接收到数据操作请求时,从所述时序数据库集群中确定待操作的目标数据节
点;
[0016]从所述元数据中获取所述目标数据节点的主机名;
[0017]从所述主机名映射文件中确定与获取到的所述主机名对应的目标IP地址;
[0018]基于所述目标IP地址,在所述目标数据节点上对待操作的目标时序数据执行与所述数据操作请求对应的数据操作。
[0019]在一可能的实现方式中,所述从所述时序数据库集群中确定待操作的目标数据节点,包括:
[0020]基于所述目标时序数据的时间戳,确定所述目标时序数据所属的目标shardgroup,其中,所述时间戳位于所述目标shardgroup的起始时间和结束时间组成的时间范围内;
[0021]确定所述目标shardgroup包含的所有shard;
[0022]将与所述shard绑定的所述数据节点确定为待操作的数据节点。
[0023]第三方面,本申请提供了一种时序数据库集群,所述时序数据库集群至少包括:至少一个元数据节点、多个数据节点、探活组件以及虚拟节点创建组件;
[0024]所述数据节点,用于存储时序数据,且多个所述数据节点互为副本;
[0025]所述元数据节点,用于存储所述时序数据库集群的元数据,所述元数据至少包括每一个所述数据节点的主机名;
[0026]所述探活组件,用于检测所述数据节点的状态,所述状态包括正常和故障;
[0027]所述虚拟节点创建组件,用于当所述探活组件检测到任一所述数据节点发生故障时,新建虚拟节点;将发生故障的所述数据节点的配置文件拷贝至所述虚拟节点,并将发生故障的所述数据节点的数据盘挂载至所述虚拟节点;在所述时序数据库集群的主机名映射文件中,将目标映射关系中的IP地址更新为所述虚拟节点的IP地址,所述目标映射关系指发生故障的所述数据节点对应的映射关系;以及重启所述时序数据库集群,以使所述虚拟节点替代发生故障的所述数据节点提供数据服务。
[0028]在一可能的实现方式中,所述数据盘为云盘。
[0029]第四方面,本申请提供了一种时序数据库集群的故障处理装置,所述时序数据库集群包括:至少一个元数据节点、多个数据节点;所述数据节点用于存储时序数据,且多个所述数据节点互为副本;所述元数据节点用于存储所述时序数据库集群的元数据,所述元数据至少包括每一个所述数据节点的主机名;所述装置包括:
[0030]节点新建模块,用于当检测到任一所述数据节点发生故障时,新建虚拟节点;
[0031]节点配置模块,用于将发生故障的所述数据节点的配置文件拷贝至所述虚拟节点,并将发生故障的所述数据节点的数据盘挂载至所述虚拟节点;
[0032]映射模块,用于在所述时序数据库集群的主机名映射文件中,将目标映射关系中的IP地址更新为所述虚拟节点的IP地址,所述目标映射关系指发生故障的所述数据节点对应的映射关系;
[0033]重启模块,用于重启所述时序数据库集群,以使所述虚拟节点替代发生故障的所述数据节点提供数据服务。
[0034]第五方面,本申请提供了一种时序数据库集群的操作装置,应用于第三方面任一项所述的时序数据库集群,所述装置包括:
[0035]目标确定模块,用于当接收到数据操作请求时,从所述时序数据库集群中确定待操作的目标数据节点;
[0036]第一获取模块,用于从所述元数据中获取所述目标数据节点的主机名;
[0037]第二获取模块,用于从所述主机名映射文件中确定与获取到的所述主机名对应的目标IP地址;
[0038]数据操作模块,用于基于所述目标IP地址,在所述目标数据节点上对待操作的目标时序数据执行与所述数据操作请求对应的数据操作。
[0039]第六方面,本申请提供了一种电子设备,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
[0040]存储器,用于存放计算机程序;
[0041]处理器,用于执行存储器上所存放的程序时,实现第一方面任一项所述的方法的步骤。
[0042]第七方面,本申请提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现第一方面任一项所述的方法的步骤。
[0043]本申请实施例提供的上述技术方案与现有技术相比具有如下优点:
[00本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种时序数据库集群的故障处理方法,其特征在于,所述时序数据库集群包括:至少一个元数据节点、多个数据节点;所述数据节点用于存储时序数据,且多个所述数据节点互为副本;所述元数据节点用于存储所述时序数据库集群的元数据,所述元数据至少包括每一个所述数据节点的主机名;所述方法包括:当检测到任一所述数据节点发生故障时,新建虚拟节点;将发生故障的所述数据节点的配置文件拷贝至所述虚拟节点,并将发生故障的所述数据节点的数据盘挂载至所述虚拟节点;在所述时序数据库集群的主机名映射文件中,将目标映射关系中的IP地址更新为所述虚拟节点的IP地址,所述目标映射关系指发生故障的所述数据节点对应的映射关系;重启所述时序数据库集群,以使所述虚拟节点替代发生故障的所述数据节点提供数据服务。2.根据权利要求1所述的方法,其特征在于,所述时序数据库集群还包括探活组件,所述探活组件用于周期性地向各所述数据节点发送探活报文;所述检测到任一所述数据节点发生故障,包括:针对每一所述数据节点,若在当前的超时时间内,未接收到所述数据节点基于所述探活报文返回的应答报文,则确定所述数据节点故障,所述当前的超时时间指:以所述探活组件最近一次发送所述探活报文的时间为起始时刻,以设定时长为时长的时间段;或者,针对每一所述数据节点,若在设定周期到达时,未接收到所述数据节点发送的心跳报文,则确定所述数据节点故障。3.一种时序数据库集群的操作方法,其特征在于,应用于权利要求1~2任一项所述的时序数据库集群,所述方法包括:当接收到数据操作请求时,从所述时序数据库集群中确定待操作的目标数据节点;从所述元数据中获取所述目标数据节点的主机名;从所述主机名映射文件中确定与获取到的所述主机名对应的目标IP地址;基于所述目标IP地址,在所述目标数据节点上对待操作的目标时序数据执行与所述数据操作请求对应的数据操作。4.根据权利要求3所述的方法,其特征在于,所述从所述时序数据库集群中确定待操作的目标数据节点,包括:基于所述目标时序数据的时间戳,确定所述目标时序数据所属的目标shardgroup,其中,所述时间戳位于所述目标shardgroup的起始时间和结束时间组成的时间范围内;确定所述目标shardgroup包含的所有shard;将与所述shard绑定的所述数据节点确定为待操作的数据节点。5.一种时序数据库集群,其特征在于,所述时序数据库集群至少包括:至少一个元数据节点、多个数据节点、探活组件以及虚拟节点创建组件;所述数据节点,用于存储时序数据,且多个所述数据节点互为副本;所述元数据节点,用于存储所述时序数据库集群的元数据,所述元数据至少包括每一个所述数据节点...

【专利技术属性】
技术研发人员:杨冠飞
申请(专利权)人:北京金山云网络技术有限公司
类型:发明
国别省市:

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

1