数据版本号更新方法、装置、电子设备及计算机存储介质制造方法及图纸

技术编号:33033123 阅读:12 留言:0更新日期:2022-04-15 09:10
本发明专利技术实施例公开了一种数据版本号更新方法、装置、电子设备及计算机存储介质,其中,该方法包括根据待更新数据的字段值,确定所述待更新数据的存储区间;根据所述待更新数据的所述字段值查询所述存储区间,获得所述待更新数据的历史数据;以及根据指定更新类型、所述待更新数据和所述历史数据,执行所述待更新数据的数据更新和版本号更新。借此,本发明专利技术可根据不同的指定更新类型,执行待更新数据的数据更新及版本号更新,从而满足多场景的使用需求,并具有维护成本低、更新操作稳定高效的优点。点。点。

【技术实现步骤摘要】
数据版本号更新方法、装置、电子设备及计算机存储介质


[0001]本专利技术涉及数据处理
,尤其涉及一种数据版本号更新方法、装置、电子设备及计算机存储介质。

技术介绍

[0002]传统的历史数据记录方式大都采用关系型数据库,通过增加版本号数据字段来记录每一行数据对应的版本号,由于所记录的版本号单一且有限,导致此类数据库仅适用于少量场景。
[0003]有鉴于此,可通过采用多维度方式记录数据的版本号,以满足多场景的应用需求。然而,若采用传统的数据记录方式针对数据库中的每个字段的数据均记录相应的版本号,则会导致表结构极为复杂,且还会产生大量的数据冗余,同时,也无法满足联合查询的业务使用需求。此外,传统的历史数据记录方式亦无法满足列表版本号(亦即,针对一批数据记录一个统一版本号)的更新需求。
[0004]因此,亟需一种可满足多场景应用需求且开发维护成本低廉的数据更新技术。

技术实现思路

[0005]有鉴于此,本专利技术实施例所解决的技术问题之一在于提供一种数据版本号更新方法、装置、电子设备及计算机存储介质,可提供多种数据更新类型,并以多维度方式记录更新数据的版本号,以满足多场景的使用需求。
[0006]根据本专利技术的第一方面,提供了一种数据版本号更新方法,其包括:根据所述待更新数据的字段值,确定所述待更新数据的存储区间;根据所述待更新数据的所述字段值查询所述存储区间,获得所述待更新数据的历史数据;以及根据指定更新类型和所述历史数据,执行所述待更新数据的数据更新和版本号更新。/>[0007]可选地,所述根据所述待更新数据中的字段值,确定所述待更新数据的存储空间具体包括:根据所述待更新数据的关键字段的所述字段值,计算所述待更新数据的存储区间值;根据所述存储区间值、预设数据库存储规则,确定所述待更新数据的所述存储区间;其中,所述预设数据库存储规则用于定义各所述存储区间值与各所述存储区间之间的对应关系。
[0008]可选地,所述方法还包括:根据所述待更新数据的存储引擎,获取所述存储引擎支持的各预设更新类型;择取一个所述预设更新类型,以确定为所述待更新数据的所述指定更新类型。
[0009]可选地,所述查询所述存储区间,获得所述待更新数据的历史数据具体包括:查询所述存储区间,获得所述存储区间中存储有或未存储有所述待更新数据的候选数据的查询结果;响应所述存储区间中存储有所述待更新数据的所述候选数据的查询结果,查询所述候选数据的版本号数量;若所述存储区间中存储有一个版本号的所述候选数据,将所述候选数据确定为所述待更新数据的所述历史数据;若所述存储区间中存储有多个版本号的所
述候选数据,根据各所述候选数据对应的各版本号,将最新版本号的所述候选数据确定为所述待更新数据的所述历史数据。
[0010]可选地,所述方法还包括:响应所述存储区间中未存储有所述待更新数据的所述候选数据的查询结果,生成所述待更新数据的初始版本号,并将所述待更新数据、所述待更新数据的所述初始版本号存储至所述存储区间中。
[0011]可选地,所述指定更新类型为整体更新;其中,所述根据指定更新类型和所述历史数据,执行所述待更新数据的数据更新和版本号更新,具体包括:匹配所述待更新数据中的各待更新字段值与所述历史数据中的各历史字段值,若各所述待更新字段值与各所述历史字段值不完全匹配,基于所述历史数据的历史版本号,更新所述待更新数据中各所述待更新字段值对应的各字段版本号;以及将所述待更新数据中的各所述待更新字段值、各所述待更新字段值对应的版本号存储至所述存储区间内。
[0012]可选地,所述将所述待更新数据中的各所述待更新字段值、各所述待更新字段值对应的版本号存储至所述存储区间内具体包括:在所述存储区间内生成相邻于所述历史数据的存储行,将所述待更新数据中的各所述待更新字段值、各所述待更新字段值对应的版本号存储至所述存储行。
[0013]可选地,所述指定更新类型为局部更新;其中,所述根据指定更新类型和所述历史数据,执行所述待更新数据的数据更新和版本号更新具体包括:匹配所述待更新数据中的各待更新字段值与所述历史数据中的各历史字段值,若所述比对结果为各所述待更新字段值与各所述历史字段值不完全匹配,获取不匹配的所述待更新字段值以作为目标更新字段值;基于所述历史数据的历史版本号,更新所述目标更新字段值的字段版本号;以及存储所述目标更新字段值、所述目标更新字段值的所述字段版本号至所述存储区间内。
[0014]可选地,所述存储所述目标更新字段值、所述目标更新字段值的所述字段版本号至所述存储区间内具体包括:根据所述目标更新字段值的字段名、所述历史数据中各所述历史字段值对应的各字段名,确定与所述目标更新字段值匹配的所述历史字段值;于所述历史字段值的存储单元中生成存储子单元,并将所述目标更新字段值、所述目标更新字段值的所述字段版本号存储至所述存储子单元。
[0015]可选地,所述待更新数据包括关联数据,所述指定更新类型为列表更新;其中,所述根据指定更新类型和所述历史数据,执行所述待更新数据的数据更新和版本号更新具体包括:匹配所述待更新数据中的各待更新字段值与所述历史数据中的各历史字段值,若各所述待更新字段值与各所述历史字段值不完全匹配,基于所述历史数据的历史版本号,更新所述待更新数据中各所述待更新字段值对应的各字段版本号和所述关联数据的关联版本号;以及将所述待更新数据中的各所述待更新字段值、各所述待更新字段值对应的版本号、所述关联数据、所述关联数据的所述关联版本号存储至所述存储区间内。
[0016]可选地,所述将所述待更新数据中的各所述待更新字段值、各所述待更新字段值对应的版本号、所述关联数据、所述关联数据的所述关联版本号存储至所述存储区域内具体包括:在所述存储区间内生成存储列表,以将所述待更新数据中的各所述待更新字段值、各所述待更新字段值对应的版本号、所述关联数据、所述关联数据的所述关联版本号存储至所述存储列表中。
[0017]可选地,所述指定更新类型为覆盖更新;其中,所述根据指定更新类型和所述历史
数据,执行所述待更新数据的数据更新和版本号更新具体包括:匹配所述待更新数据中的各待更新字段值与所述历史数据中的各历史字段值,若各所述待更新字段值与各所述历史字段值不完全匹配,利用所述待更新数据覆盖所述存储区间内的所述历史数据,并维持所述历史数据当前的版本号。
[0018]根据本专利技术的第二方面,提供了一种数据版本号更新装置,其包括:历史数据获取模块,用于根据所述待更新数据的字段值,确定所述待更新数据的存储区间,并根据所述待更新数据的所述字段值查询所述存储区间,获得所述待更新数据的历史数据;更新模块,用于根据指定更新类型和所述历史数据,执行所述待更新数据的数据更新和版本号更新。
[0019]根据本专利技术的第三方面,提供了一种电子设备,其包括:存储器,用于存储计算机程序;处理器,用于执行所述存储器中存储的计算机程序,且所述计算机程序被执行时,实现上述第一方面所述的方法。
[0020]根据本本文档来自技高网...

【技术保护点】

【技术特征摘要】
1.一种数据更新版本号确定方法,其特征在于,包括:根据待更新数据的字段值,确定所述待更新数据的存储区间;根据所述待更新数据的所述字段值查询所述存储区间,获得所述待更新数据的历史数据;以及根据指定更新类型、所述待更新数据和所述历史数据,执行所述待更新数据的数据更新和版本号更新。2.根据权利要求1所述的数据版本号更新方法,其特征在于,所述根据所述待更新数据的字段值,确定所述待更新数据的存储空间具体包括:根据所述待更新数据的关键字段的所述字段值,计算所述待更新数据的存储区间值;根据所述存储区间值和预设数据库存储规则,确定所述待更新数据的所述存储区间;其中,所述预设数据库存储规则用于定义各所述存储区间值与各所述存储区间之间的对应关系。3.根据权利要求1至2中任一项所述的数据版本号更新方法,其特征在于,所述方法还包括:根据所述待更新数据的存储引擎,获取所述存储引擎支持的各预设更新类型;择取一个所述预设更新类型,以确定为所述待更新数据的所述指定更新类型。4.根据权利要求1至3中任一项所述的数据版本号更新方法,其特征在于,所述根据所述待更新数据的所述字段值查询所述存储区间,获得所述待更新数据的历史数据具体包括:查询所述存储区间,获得所述存储区间中存储有或未存储有所述待更新数据的候选数据的查询结果;响应所述存储区间中存储有所述待更新数据的所述候选数据的查询结果,查询所述候选数据的版本号数量;若所述存储区间中存储有一个版本号的所述候选数据,将所述候选数据确定为所述待更新数据的所述历史数据;若所述存储区间中存储有多个版本号的所述候选数据,根据各所述候选数据对应的各版本号,将最新版本号的所述候选数据确定为所述待更新数据的所述历史数据。5.根据权利要求4所述的数据版本号更新方法,其特征在于,所述方法还包括:响应所述存储区间中未存储有所述待更新数据的所述候选数据的查询结果,生成所述待更新数据的初始版本号,并将所述待更新数据、所述待更新数据的所述初始版本号存储至所述存储区间中。6.根据权利要求1至4中任一项所述的数据版本号更新方法,其特征在于,所述指定更新类型为整体更新;其中,所述根据指定更新类型和所述历史数据,执行所述待更新数据的数据更新和版本号更新具体包括:匹配所述待更新数据中的各待更新字段值与所述历史数据中的各历史字段值,若各所述待更新字段值与各所述历史字段值不完全匹配,基于所述历史数据的历史版本号,更新所述待更新数据中各所述待更新字段值对应的版本号;以及将所述待更新数据中的各所述待更新字段值、各所述待更新字段值对应的版本号存储
至所述存储区间内。7.根据权利要求6所述的数据版本号更新方法,其特征在于,所述将所述待更新数据中的各所述待更新字段值、各所述待更新字段值对应的版本号存储至所述存储区间内具体包括:在所述存储区间内生成相邻于所述历史数据的存储行,将所述待更新数据中的各所述待更新字段值、各所述待更新字段值对应的版本号存储至所述存储行。8.根据权利要求1至4中任一项所述的数据版本号更新方法,其特征在于,所述指定更新类型为局部更新;其中,所述根据指定更新类型和所述历史数据,执行所述待更新数据的数据更新和版本号更新具体包括:匹配所述待更新数据中的各待更新字段值与所述历史数...

【专利技术属性】
技术研发人员:王剑熊国昭
申请(专利权)人:北京金堤科技有限公司
类型:发明
国别省市:

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

1