元数据同步方法、分布式数据库系统和存储介质技术方案

技术编号:37819522 阅读:7 留言:0更新日期:2023-06-09 09:52
本发明专利技术公开了一种元数据同步方法、分布式数据库系统和存储介质。所述方法应用于分布式数据库系统,所述分布式数据库系统包括第一层元数据节点和第二层元数据节点;所述第一层元数据节点保存业务节点和所述第二层元数据节点的匹配关系;所述第二层元数据节点保存元数据信息;在接收到业务节点发送的元数据更新指令时,所述第一层元数据节点根据所述匹配关系,通知所述第二层元数据节点进行修改和同步。本发明专利技术提供的方案能加快元数据同步速度,提高分布式数据库系统性能。提高分布式数据库系统性能。提高分布式数据库系统性能。

【技术实现步骤摘要】
元数据同步方法、分布式数据库系统和存储介质


[0001]本专利技术涉及数据库
,尤其涉及一种元数据同步方法、分布式数据库系统和存储介质。

技术介绍

[0002]数据库为金融业务系统的底层核心组件。在大规模分布式数据库产品中,元数据MetaData包含各个表的数据字典、分发规则、系统配置信息等等,记录分布式数据库集群下有多少个存储节点,对应IP、端口等元数据信息。
[0003]当分布式数据库收到sql请求后,先访问元数据,获取所有集群信息,才能正确进行SQL的解析和路由等工作。几乎每次客户端的请求都必须查询一次相关元数据信息。元数据统一由元数据管理节点MetaDataServer提供服务,简称MDS。当系统规模较大时,单节点元数据服务不能提供高并发请求的服务。需要扩充到多个MDS分发副本节点。
[0004]而当元数据变更后,多个分发副本节点会产生数据一致性问题,且现有的串行化同步逻辑会减低性能指标,因此,现有的分布式数据库元数据同步过程存在缺陷。

技术实现思路

[0005]为解决现有的元数据同步过程,在满足强一致性的同时,系统性能较低的技术问题,本专利技术实施例提供一种元数据同步方法、分布式数据库系统和存储介质。
[0006]本专利技术实施例的技术方案是这样实现的:
[0007]本专利技术实施例提供了一种元数据同步方法,应用于分布式数据库系统,所述分布式数据库系统包括第一层元数据节点和第二层元数据节点;所述第一层元数据节点保存业务节点和所述第二层元数据节点的匹配关系;所述第二层元数据节点保存元数据信息;方法包括:在接收到业务节点发送的元数据更新指令时,所述第一层元数据节点根据所述匹配关系,通知所述第二层元数据节点进行修改和同步。
[0008]在一实施例中,所述第一层元数据节点包括第一层主节点和第一层备节点,在所述第一层主节点出现故障的情况下,进行主备切换。
[0009]在一实施例中,所述在接收到业务节点发送的元数据更新指令时,所述第一层元数据节点根据所述匹配关系,通知所述第二层元数据节点进行修改和同步,包括:
[0010]通过所述第一层元数据节点查询所述业务节点和所述第二层元数据节点的匹配关系,修改对应的第二层元数据节点中的元数据信息,并构造指针路由信息,通过所述指针路由信息同步其他第二层元数据节点中的元数据信息。
[0011]在一实施例中,所述构造指针路由信息,通过所述指针路由信息同步其他第二层元数据节点中的元数据信息,包括:
[0012]启动进程将指针路由信息异步修改为具体的数据;
[0013]在同步其他第二层元数据节点中的元数据信息时,根据所述指针路由信息同步所述具体的数据。
[0014]在一实施例中,所述在接收到业务节点发送的元数据更新指令时,所述第一层元数据节点根据所述匹配关系,通知所述第二层元数据节点进行修改和同步,包括:
[0015]在准备阶段,所述第一层元数据节点向所述业务节点对应的第二层元数据节点发送事务预处理请求;对应的所述第二层元数据节点新增一个副本节点,更新新增副本节点的建表语句,执行完后不提交,向所述第一层元数据节点发送成功响应;其他第二层元数据节点更新指针路由信息,指向对应的第二层元数据节点中的原副本节点,其他第二层元数据节点新增副本节点,将新增副本节点信息同步替换为指针路由信息;其他第二层元数据节点执行完后不提交事务,向协调者发送成功响应;
[0016]在提交阶段,所述第一层元数据节点接收到所有第二层元数据节点返回的成功响应后,通知所有第二层元数据节点提交事务。
[0017]在一实施例中,所述更新指针路由信息,包括:
[0018]获取副本的指针路由地址;
[0019]根据指针的内容定位到最新修改的副本节点;
[0020]读取所述副本节点数据,将读取到的具体数据赋给指针。
[0021]在一实施例中,所述在提交阶段,所述第一层元数据节点接收到所有第二层元数据节点返回的成功响应后,通知所有第二层元数据节点提交事务,包括:
[0022]对应的第二层元数据节点收到提交事务请求后,新副本节点覆盖原副本节点的内容,完成建表语句的更新,完成事务提交;
[0023]监测到指针路由指向的副本信息发生变化后,开启异步任务进行数据替换修改指针路由信息;
[0024]其他第二层元数据节点的新增副本信息也同步变更,覆盖原副本节点的内容,完成建表语句的更新,完成事务提交。
[0025]在一实施例中,所述完成事务提交之后,所述方法还包括:
[0026]释放整个事务执行期间占用的事务资源。
[0027]本专利技术实施例还提供了一种分布式数据库系统,所述分布式数据库系统包括第一层元数据节点和第二层元数据节点;所述第一层元数据节点保存业务节点和所述第二层元数据节点的匹配关系;所述第二层元数据节点保存元数据信息;所述分布式数据库系统执行上述任一方法的步骤。
[0028]本专利技术实施例还提供了一种存储介质,存储介质中存储有计算机程序,计算机程序被处理器执行时,实现上述任一方法的步骤。
[0029]本专利技术实施例提供的元数据同步方法、分布式数据库系统和存储介质,所述方法应用于分布式数据库系统,所述分布式数据库系统包括第一层元数据节点和第二层元数据节点;所述第一层元数据节点保存业务节点和所述第二层元数据节点的匹配关系;所述第二层元数据节点保存元数据信息;所述方法包括:在接收到业务节点发送的元数据更新指令时,所述第一层元数据节点根据所述匹配关系,通知所述第二层元数据节点进行修改和同步。本专利技术提供的方案能加快元数据同步速度,提高分布式数据库系统性能。
附图说明
[0030]图1为本专利技术实施例分布式数据库系统的结构示意图;
[0031]图2为本专利技术实施例同步准备阶段的流程示意图;
[0032]图3为本专利技术实施例后台同步路由信息的流程示意图;
[0033]图4为本专利技术实施例后台替换同步元数据的流程示意图;
[0034]图5为本专利技术实施例同步提交阶段的流程示意图;
[0035]图6为本专利技术实施例实时增加mds节点同步数据的流程示意图;
[0036]图7为本专利技术实施例计算机设备的内部结构图。
具体实施方式
[0037]下面将结合附图及实施例对本专利技术作进一步详细的描述。
[0038]本专利技术实施例提供了一种元数据同步方法,应用于如图1所示的分布式数据库系统,所述分布式数据库系统包括第一层元数据节点和第二层元数据节点;所述第一层元数据节点保存业务节点和所述第二层元数据节点的匹配关系;所述第二层元数据节点保存元数据信息;该方法包括:
[0039]在接收到业务节点发送的元数据更新指令时,所述第一层元数据节点根据所述匹配关系,通知所述第二层元数据节点进行修改和同步。
[0040]本实施例中的元数据节点分为2层,第一层元数据节点和第二层元数据节点。第一层元数据节点可采用HA高可用性模式,本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种元数据同步方法,其特征在于,应用于分布式数据库系统,所述分布式数据库系统包括第一层元数据节点和第二层元数据节点;所述第一层元数据节点保存业务节点和所述第二层元数据节点的匹配关系;所述第二层元数据节点保存元数据信息;所述方法包括:在接收到业务节点发送的元数据更新指令时,所述第一层元数据节点根据所述匹配关系,通知所述第二层元数据节点进行修改和同步。2.根据权利要求1所述的方法,其特征在于,所述第一层元数据节点包括第一层主节点和第一层备节点,在所述第一层主节点出现故障的情况下,进行主备切换。3.根据权利要求1所述的方法,其特征在于,所述在接收到业务节点发送的元数据更新指令时,所述第一层元数据节点根据所述匹配关系,通知所述第二层元数据节点进行修改和同步,包括:通过所述第一层元数据节点查询所述业务节点和所述第二层元数据节点的匹配关系,修改对应的第二层元数据节点中的元数据信息,并构造指针路由信息,通过所述指针路由信息同步其他第二层元数据节点中的元数据信息。4.根据权利要求3所述的方法,其特征在于,所述构造指针路由信息,通过所述指针路由信息同步其他第二层元数据节点中的元数据信息,包括:启动进程将指针路由信息异步修改为具体的数据;在同步其他第二层元数据节点中的元数据信息时,根据所述指针路由信息同步所述具体的数据。5.根据权利要求1所述的方法,其特征在于,所述在接收到业务节点发送的元数据更新指令时,所述第一层元数据节点根据所述匹配关系,通知所述第二层元数据节点进行修改和同步,包括:在准备阶段,所述第一层元数据节点向所述业务节点对应的第二层元数据节点发送事务预处理请求;对应的所述第二层元数据节点新增一个副本节点,更新新增副本节点的建表语句,执行完后不提交,向所述第一层元数据节点发送成功响应;...

【专利技术属性】
技术研发人员:于涛俞新程
申请(专利权)人:金篆信科有限责任公司
类型:发明
国别省市:

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

1