基于希尔伯特曲线的非全字段数据同步方法及其相关设备技术

技术编号:36983811 阅读:25 留言:0更新日期:2023-03-25 18:02
本申请公开了一种基于希尔伯特曲线的非全字段数据同步方法及其相关设备,属于大数据技术领域。本申请通过获取非全字段数据的主键信息;对主键信息进行哈希散列运算,获取主键信息对应的哈希值;将哈希值映射到全量数据的希尔伯特曲线所在的二维空间上;获取哈希值在希尔伯特曲线上的坐标数据;将坐标数据输入到预设的希尔伯特空间曲线算法模型,得到非全字段数据的位置信息;获取非全字段数据对应的同步方式,并基于同步方式和位置信息对非全字段数据进行同步。此外,本申请还涉及区块链技术领域,非全字段数据可以存储在区块链网络的节点上。本申请可以实现非全字段的快速查询和定位,快速完成非全字段的同步,提升数据同步的效率。效率。效率。

【技术实现步骤摘要】
基于希尔伯特曲线的非全字段数据同步方法及其相关设备


[0001]本申请属于大数据
,具体涉及一种基于希尔伯特曲线的非全字段数据同步方法及其相关设备。

技术介绍

[0002]数据湖是大数据领域中一种企业级的数据基础架构,其核心思想是以数据为导向,实现任意来源、任意规模、任意类型的数据采集和存储。海量数据的采集是所有大数据任务分析处理的前提与基础,数据湖存在各式各样的海量数据采集的途径与手段,其中在业界难度较大的数据采集场景是基于非全字段更新的场景,其形式如下:
[0003]数据湖抽取源端数据库的全量数据,完成一次数据的初始化工作,对于后续数据的插入、更新、删除等变更动作,考虑的数据采集的成本与资源消耗等方面的因素,包括网络带宽的消耗、对于数据源头的服务器性能压力,数据源的DBA(Database Admi n i strator)数据库管理员通常仅允许数据湖采集变更的数据范围,其表现形式即为非全字段,即通过唯一标识标记一条发生变更的字段的主键信息。
[0004]然而数据湖根据非全字段信息完成数据同步的难度和代价极高,因为获取到信息是不全的,通常需要在已经完成同步的基础数据上对数据进行补全,但是对于非全字段的数据而言,是很难定位到其基础数据其所在的物理存储位置的,因为通过唯一标识标记一条发生变更的字段的主键信息,并非都是具有规律的自增字段,大部分场景都是随机且唯一的信息,例如通用唯一标识码UU I D(Un i versa l l y Un i que I dent i f i er),因此很难根据主键信息对数据进行有意义的分段处理。
[0005]在业界使用一种妥协的方案完成非全字段数据的同步,利用对某个业务字段分区、对主键分桶的方式,将非全字段的基础数据物理存储位置进行限定,缩小其可能出现的范围。例如数据源端此次更新了数据的分区字段,则其所对应的非全字段信息包含了主键及分区信息,那么数据湖即可将基础数据搜索范围限定在指定的分区分桶下;但是如果数据源端此次更新未更新数据的分区字段,那么数据湖需要在全表数据范围内根据主键信息对基础数据进行搜索,其资源消耗及任务耗时可能提高成百上千倍,因此设计一种有效解决非全字段数据同步场景的方案势在必行。

技术实现思路

[0006]本申请实施例的目的在于提出一种基于希尔伯特曲线的非全字段数据同步方法、装置、计算机设备及存储介质,以解决现有非全字段数据同步方案存在的计算资源消耗较大、耗时较长的技术问题。
[0007]为了解决上述技术问题,本申请实施例提供一种基于希尔伯特曲线的非全字段数据同步方法,采用了如下所述的技术方案:
[0008]一种基于希尔伯特曲线的非全字段数据同步方法,包括:
[0009]获取待同步的非全字段数据的主键信息;
[0010]对所述主键信息进行哈希散列运算,获取所述主键信息对应的哈希值;
[0011]将所述主键信息对应的哈希值映射到预设全量数据的希尔伯特曲线所在的二维空间上;
[0012]获取所述主键信息对应的哈希值在所述希尔伯特曲线上的坐标数据;
[0013]将所述坐标数据输入到预设的希尔伯特空间曲线算法模型,得到所述非全字段数据的位置信息;
[0014]获取所述非全字段数据对应的同步方式,并基于所述同步方式和所述位置信息对所述非全字段数据进行同步。
[0015]进一步地,在所述获取待同步的非全字段数据的主键信息之前,还包括:
[0016]获取全量数据,并将所述全量数据按照标准希尔伯特曲线进行排序;
[0017]在预设一维空间中构建所述全量数据与希尔伯特曲线的映射关系,得到所述一维空间中所述全量数据的希尔伯特曲线;
[0018]按照预设的拆解规则对一维空间中的所述全量数据的希尔伯特曲线进行拆解;
[0019]在二维空间对拆解后的所述全量数据的希尔伯特曲线进行重构。
[0020]进一步地,所述在预设一维空间中构建所述全量数据与希尔伯特曲线的映射关系,得到所述一维空间中所述全量数据的希尔伯特曲线之后,还包括:
[0021]获取待同步数据文件,基于所述待同步数据文件确定待同步的非全字段数据;
[0022]获取在所述一维空间中构建所述全量数据与希尔伯特曲线的映射关系时生成的一维序列值;
[0023]获取所述非全字段数据对应的唯一标识码,并对所述一维序列值和所述唯一标识码进行拼接,生成所述非全字段数据的主键信息。
[0024]进一步地,所述将所述主键信息对应的哈希值映射到预设全量数据的希尔伯特曲线所在的二维空间上,具体包括:
[0025]按照预设的划分规则对所述主键信息对应的哈希值进行划分,得到第一哈希值集合和第二哈希值集合,其中,所述划分规则与所述拆解规则相互对应;
[0026]将所述第一哈希值集合映射到所述全量数据的希尔伯特曲线所在二维空间的X平面;以及
[0027]将所述第二哈希值集合映射到所述全量数据的希尔伯特曲线所在二维空间的Y平面。
[0028]进一步地,将所述坐标数据输入到预设的希尔伯特空间曲线算法模型,得到所述非全字段数据的位置信息,具体包括:
[0029]获取所述全量数据的希尔伯特曲线对应的阶数信息;
[0030]将所述阶数信息和所述位置信息输入到所述希尔伯特空间曲线算法模型中;
[0031]基于所述希尔伯特空间曲线算法模型中的递归算法计算所述非全字段数据的位置信息。
[0032]进一步地,所述基于所述希尔伯特空间曲线算法模型中的递归算法计算所述非全字段数据的位置信息,具体包括:
[0033]基于所述根据希尔伯特曲线阶数计算中间状态值;
[0034]基于所述中间状态值利用所述递归算法计算所述非全字段数据的位置信息。
[0035]进一步地,所述基于所述中间状态值利用所述递归算法计算所述非全字段数据的位置信息,具体包括:
[0036]判断所述位置信息中X坐标与中间状态值的大小关系,以及判断所述位置信息中Y坐标与中间状态值的大小关系;
[0037]若X坐标小于或等于中间状态值,且Y坐标也小于或等于中间状态值,则将希尔伯特曲线阶数减去1,并将X坐标和Y坐标的值互换后进行递归计算,并返回计算得到的位置信息;
[0038]若X坐标大于中间状态值,且Y坐标小于或等于中间状态值,则将希尔伯特曲线阶数减去1,并将中间状态值减去Y坐标后加1作为递归的X值,以及将中间状态值乘2减去X坐标后加1作为递归的Y值进行递归计算,将计算得到的递归值加上3并乘以中间状态值的平方,并返回计算得到的位置信息;
[0039]若X坐标小于或等于中间状态值,且Y坐标大于中间状态值,则将希尔伯特曲线阶数N减去1,并将X坐标作为递归的X值,将Y坐标值减去中间状态值作为递归的Y值进行递归计算,将计算得到的递归值加上中间状态值的平方,并返回计算得到的位置信息值;
[0040]若X坐标大于中间状态值,且Y坐标大于中间状态值,则将希尔本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于希尔伯特曲线的非全字段数据同步方法,其特征在于,包括:获取待同步的非全字段数据的主键信息;对所述主键信息进行哈希散列运算,获取所述主键信息对应的哈希值;将所述主键信息对应的哈希值映射到预设全量数据的希尔伯特曲线所在的二维空间上;获取所述主键信息对应的哈希值在所述希尔伯特曲线上的坐标数据;将所述坐标数据输入到预设的希尔伯特空间曲线算法模型,得到所述非全字段数据的位置信息;获取所述非全字段数据对应的同步方式,并基于所述同步方式和所述位置信息对所述非全字段数据进行同步。2.如权利要求1所述的基于希尔伯特曲线的非全字段数据同步方法,其特征在于,在所述获取待同步的非全字段数据的主键信息之前,还包括:获取全量数据,并将所述全量数据按照标准希尔伯特曲线进行排序;在预设一维空间中构建所述全量数据与希尔伯特曲线的映射关系,得到所述一维空间中所述全量数据的希尔伯特曲线;按照预设的拆解规则对一维空间中的所述全量数据的希尔伯特曲线进行拆解;在二维空间对拆解后的所述全量数据的希尔伯特曲线进行重构。3.如权利要求2所述的基于希尔伯特曲线的非全字段数据同步方法,其特征在于,所述在预设一维空间中构建所述全量数据与希尔伯特曲线的映射关系,得到所述一维空间中所述全量数据的希尔伯特曲线之后,还包括:获取待同步数据文件,基于所述待同步数据文件确定待同步的非全字段数据;获取在所述一维空间中构建所述全量数据与希尔伯特曲线的映射关系时生成的一维序列值;获取所述非全字段数据对应的唯一标识码,并对所述一维序列值和所述唯一标识码进行拼接,生成所述非全字段数据的主键信息。4.如权利要求2所述的基于希尔伯特曲线的非全字段数据同步方法,其特征在于,所述将所述主键信息对应的哈希值映射到预设全量数据的希尔伯特曲线所在的二维空间上,具体包括:按照预设的划分规则对所述主键信息对应的哈希值进行划分,得到第一哈希值集合和第二哈希值集合,其中,所述划分规则与所述拆解规则相互对应;将所述第一哈希值集合映射到所述全量数据的希尔伯特曲线所在二维空间的X平面;以及将所述第二哈希值集合映射到所述全量数据的希尔伯特曲线所在二维空间的Y平面。5.如权利要求1所述的基于希尔伯特曲线的非全字段数据同步方法,其特征在于,将所述坐标数据输入到预设的希尔伯特空间曲线算法模型,得到所述非全字段数据的位置信息,具体包括:获取所述全量数据的希尔伯特曲线对应的阶数信息;将所述阶数信息和所述位置信息输入到所述希尔伯特空间曲线算法模型中;基于所述希尔伯特空间曲线算法模型中的递归算法计算所述非全字段数据的位置信
息。6.如权利要求5所述的基于希尔伯特曲线的非全字段数据同步方法,其特征在于,所述基于所述希尔伯特空间曲线算法模型中的递归算法计算所述非全字段数据的位置...

【专利技术属性】
技术研发人员:易晓博
申请(专利权)人:中国平安财产保险股份有限公司
类型:发明
国别省市:

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

1