数据库事务处理方法、装置及服务器制造方法及图纸

技术编号:24938022 阅读:30 留言:0更新日期:2020-07-17 20:56
本申请公开了一种数据库事务处理方法、装置及服务器,涉及数据库技术领域。分布式数据库系统的工作节点在开启目标事务时,获取目标事务的事务时间戳及当前的全局最新版本信息,其中目标事务包括针对目标数据对象的至少一个操作语句,全局最新版本信息是分布式数据库系统存储的所有元数据中最新生成的元数据的版本信息;根据当前的全局最新版本信息确定目标数据对象的最新版本的元数据,以及根据事务时间戳确定目标事务的待访问用户数据;基于目标数据对象的最新版本的元数据对待访问用户数据执行目标事务中的操作语句。如此,可以确保在目标事务开启之前变更的元数据能够及时地被需要使用该元数据的工作节点获知。

【技术实现步骤摘要】
数据库事务处理方法、装置及服务器
本申请涉及数据库
,更具体地,涉及一种数据库事务处理方法、装置及服务器。
技术介绍
元数据(metadata)是用于描述数据的数据,例如,用于描述数据库中数据对象的组织和结构的数据可以视为一种元数据。分布式数据库系统包括全局元数据存储和多个工作节点。全局元数据存储中维护有全局元数据信息,其包括系统中的所有元数据。每个工作节点的本地缓存中存储有部分或全量的全局元数据信息。工作节点在执行针对数据对象的事务或操作语句之前,通常需要基于该数据对象的元数据进行一些处理。而工作节点首先会从本地缓存获取该元数据,在获取失败的情况下再从全局元数据存储中获取。因此,确保各工作节点缓存的元数据的一致性非常重要。然而,一些情况下,当某一工作节点对数据对象的元数据进行变更后,其他工作节点难以及时获知该元数据的变更,容易导致各工作节点在处理事务时使用的元数据不一致,从而出现事务处理异常。
技术实现思路
本申请提出了一种数据库事务处理方法、装置及服务器,可以改善上述问题。>一方面,本申请实施本文档来自技高网...

【技术保护点】
1.一种数据库事务处理方法,其特征在于,应用于分布式数据库系统的工作节点,所述方法包括:/n在开启目标事务时,获取所述目标事务的事务时间戳及所述分布式数据库系统当前的全局最新版本信息,其中,所述目标事务包括针对目标数据对象的至少一个操作语句,所述全局最新版本信息是所述分布式数据库系统存储的所有元数据中最新生成的元数据的版本信息;/n根据所述当前的全局最新版本信息确定所述目标数据对象的最新版本的元数据,以及根据所述事务时间戳确定所述目标事务的待访问用户数据;/n基于所述目标数据对象的最新版本的元数据对所述待访问用户数据执行所述目标事务中的操作语句。/n

【技术特征摘要】
1.一种数据库事务处理方法,其特征在于,应用于分布式数据库系统的工作节点,所述方法包括:
在开启目标事务时,获取所述目标事务的事务时间戳及所述分布式数据库系统当前的全局最新版本信息,其中,所述目标事务包括针对目标数据对象的至少一个操作语句,所述全局最新版本信息是所述分布式数据库系统存储的所有元数据中最新生成的元数据的版本信息;
根据所述当前的全局最新版本信息确定所述目标数据对象的最新版本的元数据,以及根据所述事务时间戳确定所述目标事务的待访问用户数据;
基于所述目标数据对象的最新版本的元数据对所述待访问用户数据执行所述目标事务中的操作语句。


2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
接收针对任一数据对象的元数据的变更指令,根据所述变更指令生成该数据对象的变更后的元数据;
向全局元数据存储提交所述变更后的元数据;
当所述变更后的元数据成功提交时,将所述全局最新版本信息更新为所述变更后的元数据的版本信息。


3.根据权利要求2所述的方法,其特征在于,在所述向全局元数据存储提交所述变更后的元数据之前,所述方法还包括:
当生成所述变更后的元数据时,向全局时间戳管理器发送第一时间戳分配请求;
接收所述全局时间戳管理器基于所述第一时间戳分配请求返回的时间戳,并将该时间戳确定为所述变更后的元数据的版本信息。


4.根据权利要求2所述的方法,其特征在于,所述全局最新版本信息存储于全局时间戳管理器中,所述将所述全局最新版本信息更新为所述变更后的元数据的版本信息,包括:
向所述全局时间戳管理器发送提交成功通知,使所述全局时间戳管理器根据所述提交成功通知将存储的所述全局最新版本信息更新为所述变更后的元数据的版本信息。


5.根据权利要求2-4中任意一项所述的方法,其特征在于,所述工作节点的本地缓存存储有数据对象的本地最新元数据的版本信息,所述方法还包括:
当所述变更后的元数据被成功提交时,将所述变更后的元数据写入本地缓存;
在所述本地缓存中,将元数据发生变更的数据对象的本地最新元数据的版本信息更新为所述变更后的元数据的版本信息。


6.根据权利要求1-4中任意一项所述的方法,其特征在于,所述根据所述当前的全局最新版本信息确定所述目标数据对象的最新版本的元数据,包括:
从本地缓存中获取所述目标数据对象的本地最新元数据的版本信息;
对比所述目标数据对象的本地最新元数据的版本信息与所述当前的全局最新版本信息是否相同;
若相同,从所述本地缓存存储的元数据中,获取所述目标数据对象的本地最新元数据作为所述目标数据对象的最新版本的元数据。


7.根据权利要求6所述的方法,其特征在于,所述根据所述当前的全局最新版本信息确定所述目标数据对象的最新版本的元数据,还包括:
若所述目标数据对象的本地最新元数据的版本信息与所述当前的全局最新版本信息不相同,从所述本地缓存和全局元数据存储中存储的所述目标数据对象的各版本的元数据中,查找是否存在目标元数据,所述目标元数据是版本信息比所述目标数据对象的本地最新元数据的版本信息新、...

【专利技术属性】
技术研发人员:卞昊穹叶盛雷海林孙康李海翔潘安群
申请(专利权)人:腾讯科技深圳有限公司
类型:发明
国别省市:广东;44

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

1