数据更新方法及装置制造方法及图纸

技术编号:37427448 阅读:8 留言:0更新日期:2023-04-30 09:48
本发明专利技术提供一种数据更新方法及装置,其中方法包括:获取目标数据的变更数据;基于变更数据,在目标数据的更新信息字段中存储字段更新信息,并在目标数据的操作类型字段中存储数据变更类型信息;基于更新信息字段以及操作类型字段,确定待更新字段的更新方式;基于更新方式以及变更数据,对目标数据在数据库中对应存储的历史数据进行更新,并对更新后的历史数据进行列存储。本发明专利技术提供的数据更新方法及装置,通过对Hudi架构中目标数据的字段进行扩展,用于辅助目标数据中变更数据的更新过程,实现了字段更新的必要的信息的存储,使得能基于扩充字段中存储的更新信息,准确实现对Hudi架构中字段的更新,提升了数据更新的准确性。提升了数据更新的准确性。提升了数据更新的准确性。

【技术实现步骤摘要】
数据更新方法及装置


[0001]本专利技术涉及计算机
,尤其涉及一种数据更新方法及装置。

技术介绍

[0002]Hudi是一款开源的用于对基于Hadoop生态搭建的数据湖/数据仓库上的数据进行快速更新存储的架构。
[0003]现有的Hudi针对非全字段形式的数据更新时,由于Hudi使用的输入输出组件能力有限,无法明确的分辨出待更新数据中某个字段是NULL值还是不更新值,因此只能笼统的挑选最新的更新字段,并把不更新的字段都当做NULL值处理。导致Hudi在处理非全字段更新时,把不更新的字段舍弃,导致更新数据不准确。

技术实现思路

[0004]本专利技术提供一种数据更新方法及装置,用以解决现有技术Hudi在处理非全字段更新时,把不更新的字段舍弃,导致更新数据不准确的技术问题。
[0005]本专利技术提供一种数据更新方法,包括:
[0006]获取数据存储架构Hudi中目标数据的变更数据;
[0007]基于所述变更数据,在所述目标数据的更新信息字段中存储所述变更数据的字段更新信息,并在所述目标数据的操作类型字段中存储所述变更数据的数据变更类型信息;
[0008]基于所述更新信息字段,确定所述目标数据中的待更新字段,并基于所述操作类型字段,确定所述待更新字段的更新方式;
[0009]基于所述更新方式以及所述变更数据,对所述目标数据在数据库中对应存储的历史数据进行更新,得到更新后的历史数据,并对所述更新后的历史数据进行列存储。
[0010]根据本专利技术提供的一种数据更新方法,基于所述更新信息字段,确定所述目标数据中的待更新字段,包括:
[0011]基于所述更新信息字段,确定所述目标数据中的空字段以及所述目标数据中不更新的字段;
[0012]基于所述空字段以及所述不更新的字段,确定所述目标数据中的待更新字段。
[0013]根据本专利技术提供的一种数据更新方法,基于所述更新方式以及所述变更数据,对所述目标数据在数据库中对应存储的历史数据进行更新,得到更新后的历史数据,并对所述更新后的历史数据进行列存储,包括:
[0014]将所述更新方式以及所述变更数据进行行存储,得到行存储数据;
[0015]基于行存储数据中的更新方式以及行存储数据中的变更数据,对所述目标数据在数据库中对应存储的历史数据进行更新,得到更新后的历史数据,并对所述更新后的历史数据进行列存储。
[0016]根据本专利技术提供的一种数据更新方法,获取数据存储架构Hudi中目标数据的变更数据之后,还包括:
[0017]对所述Hudi中的系统预留字段进行扩展,得到所述目标数据的键值字段以及所述目标数据的交换数据字段;
[0018]在所述变更数据对应的变更字段为所述目标数据中的唯一键字段的情况下,基于所述变更数据,确定所述目标数据的唯一键变更值,并将所述唯一键变更值发送至目标地址的Http服务器,以使所述Http服务器存储所述唯一键变更值;
[0019]在所述目标数据的键值字段中存储所述目标数据的历史唯一键值,并在所述目标数据的交换数据字段中存储所述目标地址。
[0020]根据本专利技术提供的一种数据更新方法,在所述目标数据的交换数据字段中存储所述目标地址之后,还包括:
[0021]从所述交换数据字段中获取所述目标地址,并从所述Http服务器中获取所述唯一键变更值;
[0022]基于所述唯一键变更值以及所述键值字段中的历史唯一键值,更新所述目标数据的唯一键值,并将更新后的目标数据写入列存格式的数据文件中,得到所述目标数据的列存储数据;
[0023]基于所述列存储数据,替换所述目标数据在数据库中对应存储的历史数据。
[0024]根据本专利技术提供的一种数据更新方法,基于所述变更数据,在所述目标数据的更新信息字段中存储所述变更数据的字段更新信息之前,还包括:
[0025]对所述Hudi中的系统预留字段进行扩展,得到所述目标数据的更新信息字段以及所述目标数据的操作类型字段。
[0026]本专利技术还提供一种数据更新装置,包括:
[0027]获取模块,用于获取数据存储架构Hudi中目标数据的变更数据;
[0028]变更数据处理模块,用于基于所述变更数据,在所述目标数据的更新信息字段中存储所述变更数据的字段更新信息,并在所述目标数据的操作类型字段中存储所述变更数据的数据变更类型信息;
[0029]更新方式确定模块,用于基于所述更新信息字段,确定所述目标数据中的待更新字段,并基于所述操作类型字段,确定所述待更新字段的更新方式;
[0030]存储更新模块,用于基于所述更新方式以及所述变更数据,对所述目标数据在数据库中对应存储的历史数据进行更新,得到更新后的历史数据,并对所述更新后的历史数据进行列存储。
[0031]本专利技术还提供一种电子设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如上述任一种所述数据更新方法。
[0032]本专利技术还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如上述任一种数据更新方法。
[0033]本专利技术还提供一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现如上述任一种所述数据更新方法。
[0034]本专利技术提供的数据更新方法及装置,通过对Hudi架构中目标数据的字段进行扩展,将目标数据的变更信息存储在扩展的更新信息字段以及操作类型字段中,用于辅助目标数据中变更数据的更新过程,实现了字段更新的必要的信息的存储。对于目标数据中非
全字段更新的情况,能基于扩充字段中存储的更新信息,准确实现对Hudi架构中字段的更新,提升了数据更新的准确性。
附图说明
[0035]为了更清楚地说明本专利技术或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图简要地说明,显而易见地,下面描述中的附图是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0036]图1是本专利技术提供的数据更新方法的流程示意图;
[0037]图2是本专利技术提供的Hudi基本架构示意图;
[0038]图3是本专利技术提供的替换组件结构示意图;
[0039]图4是本专利技术提供的Key更新架构示意图;
[0040]图5是本专利技术提供的组件变更内部结构示意图;
[0041]图6是本专利技术提供的数据更新装置的结构示意图;
[0042]图7是本专利技术提供的电子设备的结构示意图。
具体实施方式
[0043]为使本专利技术的目的、技术方案和优点更加清楚,下面将结合本专利技术中的附图,对本专利技术中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种数据更新方法,其特征在于,所述方法包括:获取数据存储架构Hudi中目标数据的变更数据;基于所述变更数据,在所述目标数据的更新信息字段中存储所述变更数据的字段更新信息,并在所述目标数据的操作类型字段中存储所述变更数据的数据变更类型信息;基于所述更新信息字段,确定所述目标数据中的待更新字段,并基于所述操作类型字段,确定所述待更新字段的更新方式;基于所述更新方式以及所述变更数据,对所述目标数据在数据库中对应存储的历史数据进行更新,得到更新后的历史数据,并对所述更新后的历史数据进行列存储。2.根据权利要求1所述的数据更新方法,其特征在于,所述基于所述更新信息字段,确定所述目标数据中的待更新字段,包括:基于所述更新信息字段,确定所述目标数据中的空字段以及所述目标数据中不更新的字段;基于所述空字段以及所述不更新的字段,确定所述目标数据中的待更新字段。3.根据权利要求1所述的数据更新方法,其特征在于,所述基于所述更新方式以及所述变更数据,对所述目标数据在数据库中对应存储的历史数据进行更新,得到更新后的历史数据,并对所述更新后的历史数据进行列存储,包括:将所述更新方式以及所述变更数据进行行存储,得到行存储数据;基于所述行存储数据中的更新方式以及所述行存储数据中的变更数据,对所述目标数据在数据库中对应存储的历史数据进行更新,得到更新后的历史数据,并对所述更新后的历史数据进行列存储。4.根据权利要求1所述的数据更新方法,其特征在于,所述获取数据存储架构Hudi中目标数据的变更数据之后,还包括:对所述Hudi中的系统预留字段进行扩展,得到所述目标数据的键值字段以及所述目标数据的交换数据字段;在所述变更数据对应的变更字段为所述目标数据中的唯一键字段的情况下,基于所述变更数据,确定所述目标数据的唯一键变更值,并将所述唯一键变更值发送至目标地址的Http服务器,以使所述Http服务器存储所述唯一键变更值;在所述目标数据的键值字段中存储所述目标数据的历史唯一键值,并在所述目标数据的交换数据字段中存储所述目...

【专利技术属性】
技术研发人员:冀家玮孙旭辉董隆超潘彦也吕恩强
申请(专利权)人:北京东方国信科技股份有限公司
类型:发明
国别省市:

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

1