数据处理方法及设备技术

技术编号:32784401 阅读:9 留言:0更新日期:2022-03-23 19:43
本申请实施例提供一种数据处理方法及设备,可以应用于数据访问领域,包括:接收用户输入的目标处理时刻,根据从Hive中读取到的存量拉链数据、全量原始业务数据和增量原始业务数据,确定目标处理时刻的变动业务数据;根据存量拉链数据与该变动业务数据,确定目标处理时刻的未变动拉链、变动拉链及新增业务数据;分别对该未变动拉链、变动拉链及新增业务数据进行预处理,得到目标拉链,并根据该目标拉链与上述变动拉链,确定出全量拉链数据;利用全量拉链数据覆盖上述存量拉链数据。本申请实施例可以根据任意处理时刻的全量原始业务数据和增量原始业务数据进行拉链数据的补充和修复,提高了海量数据下拉链表的维护效率。提高了海量数据下拉链表的维护效率。提高了海量数据下拉链表的维护效率。

【技术实现步骤摘要】
数据处理方法及设备


[0001]本申请实施例涉及数据访问
,尤其涉及一种数据处理方法及设备。

技术介绍

[0002]在企业级数据仓库中,需要维护大量拉链表,这些拉链表记录着对应业务数据全生命周期的变化,并可以随时还原出业务数据在某一个时点的切面,对数据统计、数据分析十分有利。
[0003]随着大数据时代的到来,对海量数据存储和处理的诉求使得Hadoop生态圈的相关组件得到大规模应用,Hive通常被用作数据仓库,提供基于Hadoop的数据存储功能,而由于Hive无法对内部表数据直接进行更新操作,从而导致使用Hive维护拉链表难度较高。

技术实现思路

[0004]本申请实施例提供一种数据处理方法及设备,可以解决现有技术中使用Hive维护拉链表的难度较高的技术问题。
[0005]第一方面,本申请实施例提供了一种数据处理方法,该方法包括:
[0006]接收用户输入的目标处理时刻,根据从Hive中读取到的存量拉链数据、全量原始业务数据和增量原始业务数据,确定所述目标处理时刻的变动业务数据;
[0007]根据所述存量拉链数据与所述变动业务数据,确定所述目标处理时刻的未变动拉链、变动拉链及新增业务数据;
[0008]分别对所述未变动拉链、所述变动拉链及所述新增业务数据进行预处理,得到目标拉链,并根据所述目标拉链与所述变动拉链,确定出全量拉链数据;
[0009]利用所述全量拉链数据覆盖所述存量拉链数据,得到更新后的存量拉链数据。
[0010]在一种可行的实施方式中,所述根据从Hive中读取到的存量拉链数据、全量原始业务数据和增量原始业务数据,确定在所述目标处理时刻的变动业务数据,包括:
[0011]根据所述存量拉链数据还原第一处理时刻的全量业务数据,所述第一时刻处于所述目标处理时刻之前;
[0012]根据所述第一处理时刻的全量业务数据、所述目标处理时刻的全量原始业务数据,以及所述目标处理时刻的增量原始业务数据,确定所述目标处理时刻的变动业务数据。
[0013]在一种可行的实施方式中,所述根据所述第一处理时刻的全量业务数据、所述目标处理时刻的全量原始业务数据,以及所述目标处理时刻的增量原始业务数据,确定所述目标处理时刻的变动业务数据,包括:
[0014]将在所述第一处理时刻的全量业务数据与在所述目标处理时刻的全量原始业务数据进行全连接FULL JOIN比对;
[0015]根据比对结果和所述目标处理时刻的增量原始业务数据,确定所述目标处理时刻的变动业务数据。
[0016]在一种可行的实施方式中,所述分别对所述未变动拉链、所述变动拉链及所述新
增业务数据进行预处理,得到目标拉链,包括:
[0017]保持所述未变动拉链不变;
[0018]对所述变动拉链进行预设的闭链与开链处理;
[0019]对所述新增业务数据建立新链条;
[0020]合并所述未变动拉链、经过闭链与开链处理后的所述变动拉链,以及建立的所述新链条,得到所述目标拉链。
[0021]在一种可行的实施方式中,对所述变动拉链进行预设的闭链与开链处理,包括:
[0022]当所述目标处理时刻等于所述变动拉链的开链时间时,保持所述变动拉链的链条不变,更新所述变动拉链的拉链数据;
[0023]或者,当所述目标处理时刻位于所述变动拉链的开链时间和闭链时间之间时,对所述变动拉链的链条进行拆分,得到原有拉链数据闭合链条和新数据新开链条;
[0024]或者,当所述目标处理时刻位于所述变动拉链的开链时间和闭链时间之外时,对所述变动拉链的链条进行补充,得到新的链条。
[0025]在一种可行的实施方式中,所述对所述变动拉链的链条进行补充,得到新的链条,包括:
[0026]当所述目标处理时刻T大于所述变动拉链中最大的闭链时间时,新增链条[T,9999

12

31);
[0027]当所述目标处理时刻T小于所述变动拉链中最小的开链时间MinTs时,新增链条[T,MinTs);
[0028]当所述目标处理时刻T小于或等于所述变动拉链中最大的闭链时间,且大于或等于所述变动拉链中最小的开链时间MinTs时,新增链条[T,MinGTs);其中,MinGTs表示所述变动拉链中大于目标处理时刻T,且距离所述目标处理时刻T最近的开链时间。
[0029]在一种可行的实施方式中,所述根据所述目标拉链与所述变动拉链,确定出全量拉链数据,包括:
[0030]对所述目标拉链与所述变动拉链进行左反连接LEFT ANTI JOIN操作,得到第一目标拉链;
[0031]对所述目标拉链与所述第一目标拉链进行联合所有UNION ALL操作,得到所述全量拉链数据。
[0032]第二方面,本申请实施例提供了一种数据处理装置,该装置包括:
[0033]第一处理模块,用于接收用户输入的目标处理时刻,根据从数据仓库工具Hive中读取到的存量拉链数据、全量原始业务数据和增量原始业务数据,确定所述目标处理时刻的变动业务数据;
[0034]第二处理模块,用于根据所述存量拉链数据与所述变动业务数据,确定所述目标处理时刻的未变动拉链、变动拉链及新增业务数据;
[0035]拉链处理模块,用于分别对所述未变动拉链、所述变动拉链及所述新增业务数据进行预处理,得到目标拉链,并根据所述目标拉链与所述变动拉链,确定出全量拉链数据;
[0036]更新模块,用于利用所述全量拉链数据覆盖所述存量拉链数据,得到更新后的存量拉链数据。
[0037]第三方面,本申请实施例提供了一种电子设备,包括:至少一个处理器和存储器;
[0038]所述存储器存储计算机执行指令;
[0039]所述至少一个处理器执行所述存储器存储的计算机执行指令,使得所述至少一个处理器执行如第一方面提供的数据处理方法。
[0040]第四方面,本申请实施例提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机执行指令,当处理器执行所述计算机执行指令时,实现如第一方面提供的数据处理方法。
[0041]第五方面,本申请实施例提供了一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时,实现如第一方面提供的数据处理方法。
[0042]本申请实施例所提供的数据处理方法及设备,可以应用于数据访问领域,包括:接收用户输入的目标处理时刻,根据从Hive中读取到的存量拉链数据、全量原始业务数据和增量原始业务数据,确定目标处理时刻的变动业务数据;根据存量拉链数据与该变动业务数据,确定目标处理时刻的未变动拉链、变动拉链及新增业务数据;分别对该未变动拉链、变动拉链及新增业务数据进行预处理,得到目标拉链,并根据该目标拉链与上述变动拉链,确定出全量拉链数据;利用全量拉链数据覆盖上述存量拉链数据。本申请实施例可以在用户输入任意处理时刻后,根据该处理时刻的全量原始业务数据和增量原始业务数据进本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种数据处理方法,其特征在于,所述方法包括:接收用户输入的目标处理时刻,根据从数据仓库工具Hive中读取到的存量拉链数据、全量原始业务数据和增量原始业务数据,确定所述目标处理时刻的变动业务数据;根据所述存量拉链数据与所述变动业务数据,确定所述目标处理时刻的未变动拉链、变动拉链及新增业务数据;分别对所述未变动拉链、所述变动拉链及所述新增业务数据进行预处理,得到目标拉链,并根据所述目标拉链与所述变动拉链,确定出全量拉链数据;利用所述全量拉链数据覆盖所述存量拉链数据,得到更新后的存量拉链数据。2.根据权利要求1所述的方法,其特征在于,所述根据从Hive中读取到的存量拉链数据、全量原始业务数据和增量原始业务数据,确定在所述目标处理时刻的变动业务数据,包括:根据所述存量拉链数据还原第一处理时刻的全量业务数据,所述第一时刻处于所述目标处理时刻之前;根据所述第一处理时刻的全量业务数据、所述目标处理时刻的全量原始业务数据,以及所述目标处理时刻的增量原始业务数据,确定所述目标处理时刻的变动业务数据。3.根据权利要求2所述的方法,其特征在于,所述根据所述第一处理时刻的全量业务数据、所述目标处理时刻的全量原始业务数据,以及所述目标处理时刻的增量原始业务数据,确定所述目标处理时刻的变动业务数据,包括:将在所述第一处理时刻的全量业务数据与在所述目标处理时刻的全量原始业务数据进行全连接FULL JOIN比对;根据比对结果和所述目标处理时刻的增量原始业务数据,确定所述目标处理时刻的变动业务数据。4.根据权利要求1所述的方法,其特征在于,所述分别对所述未变动拉链、所述变动拉链及所述新增业务数据进行预处理,得到目标拉链,包括:保持所述未变动拉链不变;对所述变动拉链进行预设的闭链与开链处理;对所述新增业务数据建立新链条;合并所述未变动拉链、经过闭链与开链处理后的所述变动拉链,以及建立的所述新链条,得到所述目标拉链。5.根据权利要求4所述的方法,其特征在于,对所述变动拉链进行预设的闭链与开链处理,包括:当所述目标处理时刻等于所述变动拉链的开链时间时,保持所述变动拉链的链条不变,更新所述变动拉链的拉链数据;或者,当所述目标处理时刻位于所述变动拉链的开链时间和闭链时间之间时,对所述变动拉链的链条进行拆分,得到原有拉链数据闭合链条和新数据新开链条;或者,当所述目标处理时刻位于所述变动拉链的开链时间和闭链时间之外时...

【专利技术属性】
技术研发人员:游屹戢涛李斌程强
申请(专利权)人:中国建设银行股份有限公司
类型:发明
国别省市:

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

1