拉链表处理方法、装置、电子设备及存储介质制造方法及图纸

技术编号:36466228 阅读:8 留言:0更新日期:2023-01-25 23:07
本发明专利技术涉及数据处理技术领域,提供了一种拉链表处理方法、装置、电子设备及存储介质,所述方法包括:获取当前数据表、拉链表及辅助表,所述当前数据表存储有预设账期内待更新至所述拉链表中的数据,所述拉链表最近一次更新是基于最近待更新数据更新的,所述辅助表包括所述最近待更新数据中未发生变化的数据;将所述当前数据表中的数据、所述拉链表中除与所述预设账期相同的数据之外的数据及所述辅助表中除与所述预设账期相同的数据之外的数据进行合并,得到临时表;根据所述临时表更新所述拉链表。本发明专利技术能够提高拉链表重跑的处理效率。本发明专利技术能够提高拉链表重跑的处理效率。本发明专利技术能够提高拉链表重跑的处理效率。

【技术实现步骤摘要】
拉链表处理方法、装置、电子设备及存储介质


[0001]本专利技术涉及数据处理
,具体而言,涉及一种拉链表处理方法、装置、电子设备及存储介质。

技术介绍

[0002]拉链表,记录每条信息的声明周期,一旦一条记录的生命周期结束,就重新开始一条新的记录,并把当前日期作为生效开始日期。拉链表适用于大部分数据不发生变化的应用场景,若小部分数据发生变化时,需要对拉链表进行重跑,目前的重跑方式从数据变化的日期起到拉链表中最新日期之间的所有数据需要利用游标循环重跑多次,才能得到更新后的拉链表,因此,拉链表重跑时的更新效率较低。

技术实现思路

[0003]本专利技术的目的在于提供了一种拉链表处理方法、装置、电子设备及存储介质,其能够提高拉链表重跑时的更新效率。
[0004]为了实现上述目的,本专利技术采用的技术方案如下:
[0005]第一方面,本专利技术提供一种拉链表处理方法,所述方法包括:
[0006]获取当前数据表、拉链表及辅助表,所述当前数据表存储有预设账期内待更新至所述拉链表中的数据,所述拉链表最近一次更新是基于最近待更新数据更新的,所述辅助表包括所述最近待更新数据中未发生变化的数据;
[0007]将所述当前数据表中的数据、所述拉链表中除与所述预设账期相同的数据之外的数据及所述辅助表中除与所述预设账期相同的数据之外的数据进行合并,得到临时表;
[0008]根据所述临时表更新所述拉链表。
[0009]可选地,所述临时表中包括多条记录,每一所述记录包括当前账期,所述根据所述临时表更新所述拉链表的步骤包括:
[0010]将所述临时表中的所有记录按照当前账期进行升序排序;
[0011]根据所述临时表中每一记录的上个账期及记录值,确定所述每一记录是否发生变化,所述每一记录的上个账期为与所述每一记录的上一条记录的当前账期;
[0012]根据所有发生变化的记录更新所述拉链表。
[0013]可选地,所述根据所述临时表中每一记录的上个账期及记录值,确定所述每一记录是否发生变化的步骤包括:
[0014]对于所述临时表中的任一目标记录,若所述目标记录的上个账期不为预设空值、且所述目标记录的记录值与所述目标记录的前一个记录的记录值相同,则判定所述目标记录未发生变化,否则,判定所述目标记录发生变化,最终确定所述每一记录是否发生变化。
[0015]可选地,所述根据所有发生变化的记录更新所述拉链表的步骤包括:
[0016]将所有发生变化的记录按照当前账期的升序排序,得到记录序列;
[0017]确定所述记录序列中每一记录的开始账期和结束账期;
[0018]清空所述拉链表;
[0019]将所述记录序列中每一记录的当前账期、开始账期、结束账期及记录值更新至所述拉链表。
[0020]可选地,所述确定所述记录序列中每一记录的开始账期和结束账期的步骤包括:
[0021]获取所述每一记录的下个账期,所述每一记录的下个账期为所述每一记录的下一条记录的当前账期;
[0022]将所述每一记录的开始账期设置为所述每一记录的当前账期;
[0023]若所述每一记录的下个账期不为无效值,则根据所述每一记录的下个账期及预设粒度确定所述每一记录的结束账期;
[0024]若所述每一记录的下个账期为无效值,则将所述每一记录的结束账期设置为预设最大值。
[0025]可选地,所述根据所述每一记录的下个账期及预设粒度确定所述每一记录的结束账期的步骤包括:
[0026]获取所述预设粒度包括的预设天数;
[0027]根据所述每一记录的下个账期及所述预设天数,得到所述每一记录的结束账期,所述每一记录的结束账期在所述每一记录的下个账期之前、且与所述预设天数间隔所述预设天数。
[0028]可选地,所述方法还包括:
[0029]清空所述辅助表;
[0030]将所有未发生变化的记录更新至所述辅助表中。
[0031]第二方面,本专利技术提供一种拉链表处理装置,所述装置包括:
[0032]获取模块,用于获取当前数据表、拉链表及辅助表,所述当前数据表存储有预设账期内待更新至所述拉链表中的数据,所述拉链表最近一次更新是基于最近待更新数据更新的,所述辅助表包括所述最近待更新数据中未发生变化的数据;
[0033]合并模块,用于将所述当前数据表中的数据、所述拉链表中除与所述预设账期相同的数据之外的数据及所述辅助表中除与所述预设账期相同的数据之外的数据进行合并,得到临时表;
[0034]更新模块,用于根据所述临时表更新所述拉链表。
[0035]第三方面,本专利技术提供一种电子设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现如上述的拉链表处理方法。
[0036]第四方面,本专利技术提供一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如上述的拉链表处理方法。
[0037]与现有技术相比,本专利技术通过包括用于最近一次更新拉链表的最近待更新数据中未变化的数据的辅助表,根据当前数据表中的数据、拉链表中除与预设账期相同的数据之外的数据、及辅助表中除与预设账期相同的数据之外的数据进行合并得到的临时表,更新拉链表,使得拉链表只需要重跑一次,极大地提高了拉链表重跑时的更新效率。
附图说明
[0038]为了更清楚地说明本专利技术实施例的技术方案,下面将对实施例中所需要使用的附
图作简单地介绍,应当理解,以下附图仅示出了本专利技术的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
[0039]图1为本专利技术实施例提供的拉链表处理方法的流程示例图一。
[0040]图2为本专利技术实施例提供的拉链表处理方法的流程示例图二。
[0041]图3为专利技术实施例提供的拉链表处理方法的流程示例图三。
[0042]图4为本专利技术实施例提供的拉链表处理装置的方框示意图。
[0043]图5为本专利技术实施例提供的电子设备的方框示意图。
[0044]图标:10

电子设备;11

处理器;12

存储器;13

总线;100

拉链表处理装置;110

获取模块;120

合并模块;130

更新模块。
具体实施方式
[0045]为使本专利技术实施例的目的、技术方案和优点更加清楚,下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本专利技术一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本专利技术实施例的组件可以以各种不同的配置来布置和设计。
[0046]因此,以下对在附图中提供的本专利技术的实施例的详细描述并非旨在限制要求保本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种拉链表处理方法,其特征在于,所述方法包括:获取当前数据表、拉链表及辅助表,所述当前数据表存储有预设账期内待更新至所述拉链表中的数据,所述拉链表最近一次更新是基于最近待更新数据更新的,所述辅助表包括所述最近待更新数据中未发生变化的数据;将所述当前数据表中的数据、所述拉链表中除与所述预设账期相同的数据之外的数据及所述辅助表中除与所述预设账期相同的数据之外的数据进行合并,得到临时表;根据所述临时表更新所述拉链表。2.如权利要求1所述的拉链表处理方法,其特征在于,所述临时表中包括多条记录,每一所述记录包括当前账期,所述根据所述临时表更新所述拉链表的步骤包括:将所述临时表中的所有记录按照当前账期进行升序排序;根据所述临时表中每一记录的上个账期及记录值,确定所述每一记录是否发生变化,所述每一记录的上个账期为与所述每一记录的上一条记录的当前账期;根据所有发生变化的记录更新所述拉链表。3.如权利要求2所述的拉链表处理方法,其特征在于,所述根据所述临时表中每一记录的上个账期及记录值,确定所述每一记录是否发生变化的步骤包括:对于所述临时表中的任一目标记录,若所述目标记录的上个账期不为预设空值、且所述目标记录的记录值与所述目标记录的前一个记录的记录值相同,则判定所述目标记录未发生变化,否则,判定所述目标记录发生变化,最终确定所述每一记录是否发生变化。4.如权利要求2所述的拉链表处理方法,其特征在于,所述根据所有发生变化的记录更新所述拉链表的步骤包括:将所有发生变化的记录按照当前账期的升序排序,得到记录序列;确定所述记录序列中每一记录的开始账期和结束账期;清空所述拉链表;将所述记录序列中每一记录的当前账期、开始账期、结束账期及记录值更新至所述拉链表。5.如权利要求4所述的拉链表处理方法,其特征在于,所述确定所述记录序列中每一记录的开始账期和结束账期的步骤包括:获取所述每一记...

【专利技术属性】
技术研发人员:范东朱潇邢建兵赵华陈亚乐胡立轩
申请(专利权)人:中国联合网络通信集团有限公司
类型:发明
国别省市:

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

1