拉链表的数据处理方法和装置制造方法及图纸

技术编号:39651377 阅读:11 留言:0更新日期:2023-12-09 11:19
本申请实施例提供了一种拉链表的数据处理方法,该拉链表的数据处理方法包括:获取初始

【技术实现步骤摘要】
拉链表的数据处理方法和装置


[0001]本申请实施例涉及数据处理
,尤其涉及一种拉链表的数据处理方法

装置

计算机设备

计算机可读存储介质


技术介绍

[0002]数据仓库是用于集成

存储和管理大量数据的数据库系统,具有面向主题

集成性

非易失

可反应历史变化等优点,可以用做支持用户决策的数据集合

数据仓库可以长期或永久存储对业务有价值的数据,以便于数据分析

决策支持

数据挖掘等工作

为了生成和使用方便,可以通过拉链表的形式对数据进行存储

[0003]然而,由于拉链表的业务逻辑复杂

拗口,无法自动生成用于拉链表的生产逻辑,导致拉链表的开发过程比较复杂,存在开发难度大

开发时的人为失误概率高

开发成本高等问题

[0004]需要说明的是,上述内容并不必然是现有技术,也不用于限制本申请的专利保护范围


技术实现思路

[0005]本申请实施例提供一种拉链表的数据处理方法

装置

计算机设备

计算机可读存储介质,以解决或缓解上面提出的一项或更多项技术问题

[0006]本申请实施例的一个方面提供了一种拉链表的数据处理方法,所述方法包括:
[0007]获取初始
SQL
语句,所述初始
SQL
语句用于将增量表中的增量数据更新到拉链表中;
[0008]根据所述初始
SQL
语句,获取拉链表信息和增量信息;
[0009]根据所述拉链表信息获取拉链表表名;
[0010]根据所述增量信息获取增量表表名;
[0011]根据所述拉链表表名和所述增量表表名,生成第一查询语句,所述第一查询语句用于查询所述拉链表的目标存量数据;
[0012]根据所述拉链表信息

第一查询语句及增量信息,生成目标
SQL
语句;
[0013]其中,所述目标
SQL
语句用于:将所述增量数据添加到所述拉链表中,并对所述目标存量数据的结束日期进行更新以记录历史数据变化

[0014]可选地,根据所述初始语句获取拉链表信息和增量信息,包括:
[0015]解析所述初始
SQL
语句,获取抽象语法树,所述抽象语法树包括目录表节点和查询节点;
[0016]根据所述目录表节点的内容,确定所述拉链表信息;
[0017]根据所述查询节点的内容,确定所述增量信息

[0018]可选地,根据所述拉链表信息

第一查询语句及增量信息,生成目标
SQL
语句,包括:
[0019]对所述第一查询语句和所述增量信息进行合并,以得到第二查询语句;
[0020]对所述拉链表信息和所述第二查询语句合并,以得到所述目标
SQL
语句

[0021]可选地,根据所述拉链表表名和所述增量表表名,生成第一查询语句,包括:
[0022]根据所述拉链表表名

增量表表名及预先规范的拉链表存量数据查询逻辑,生成所述第一查询语句,所述第一查询语句包括查询条件和更新规则;
[0023]其中,所述查询条件用于:查找所述拉链表中的目标存量数据;
[0024]所述更新规则用于:在所述目标存量数据存在的情形下,对所述目标存量数据进行更新

[0025]可选地,所述查询条件包括第一查询条件和第二查询条件;
[0026]对应地,所述查找所述拉链表中的目标存量数据,包括:
[0027]根据第一查询条件,确定所述拉链表中的最新历史数据;
[0028]在所述最新历史数据存在的情形下,根据第二查询条件确定所述目标存量数据

[0029]可选地,在所述最新历史数据存在的情形下,根据第二查询条件确定所述目标存量数据,包括:
[0030]根据所述第二查询条件,查询所述增量表;其中,所述第二查询条件用于判断所述增量表中是否存在和所述拉链表对应的增量数据;
[0031]在所述增量表中存在和所述拉链表对应的增量数据的情形下,将所述最新历史数据确定为所述目标存量数据

[0032]可选地,在所述目标存量数据存在的情形下,对所述目标存量数据进行更新,包括:
[0033]根据所述更新规则,对所述目标存量数据的结束日期进行更新;
[0034]其中,所述更新规则是根据所述增量数据的开始日期设置的

[0035]本申请实施例的另一个方面提供了一种拉链表的数据处理装置,所述装置包括:
[0036]第一获取模块,用于获取初始
SQL
语句,所述初始
SQL
语句用于将增量表中的增量数据更新到拉链表中;
[0037]第二获取模块,用于根据所述初始
SQL
语句,获取拉链表信息和增量信息;
[0038]第三获取模块,用于根据所述拉链表信息获取拉链表表名;
[0039]第四获取模块,用于根据所述增量信息获取增量表表名;
[0040]第一生成模块,用于根据所述拉链表表名和所述增量表表名,生成第一查询语句,所述第一查询语句用于查询所述拉链表的目标存量数据;
[0041]第二生成模块,用于根据所述拉链表信息

第一查询语句及增量信息,生成目标
SQL
语句;
[0042]其中,所述目标
SQL
语句用于:将所述增量数据添加到所述拉链表中,并对所述目标存量数据的结束日期进行更新以记录历史数据变化

[0043]本申请实施例的另一个方面提供了一种计算机设备,包括:
[0044]至少一个处理器;及
[0045]与所述至少一个处理器通信连接的存储器;
[0046]其中:所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行如上所述的方法

[0047]本申请实施例的另一个方面提供了一种计算机可读存储介质,所述计算机可读存储介质内存储有计算机指令,所述计算机指令被处理器执行时实现如上所述的方法

[0048]本申请实施例采用上述技术方案可以包括如下优势:
[0049]先获取初始
SQL
语句,其中,初始
SQL
语句仅包含用于实现拉链表增量更新的逻辑

然后,根据该初始本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.
一种拉链表的数据处理方法,其特征在于,所述方法包括:获取初始
SQL
语句,所述初始
SQL
语句用于将增量表中的增量数据更新到拉链表中;根据所述初始
SQL
语句,获取拉链表信息和增量信息;根据所述拉链表信息获取拉链表表名;根据所述增量信息获取增量表表名;根据所述拉链表表名和所述增量表表名,生成第一查询语句,所述第一查询语句用于查询所述拉链表的目标存量数据;根据所述拉链表信息

第一查询语句及增量信息,生成目标
SQL
语句;其中,所述目标
SQL
语句用于:将所述增量数据添加到所述拉链表中,并对所述目标存量数据的结束日期进行更新以记录历史数据变化
。2.
根据权利要求1所述的方法,其特征在于,根据所述初始语句获取拉链表信息和增量信息,包括:解析所述初始
SQL
语句,获取抽象语法树,所述抽象语法树包括目录表节点和查询节点;根据所述目录表节点的内容,确定所述拉链表信息;根据所述查询节点的内容,确定所述增量信息
。3.
根据权利要求1所述的方法,其特征在于,根据所述拉链表信息

第一查询语句及增量信息,生成目标
SQL
语句,包括:对所述第一查询语句和所述增量信息进行合并,以得到第二查询语句;对所述拉链表信息和所述第二查询语句合并,以得到所述目标
SQL
语句
。4.
根据权利要求1~3任意一项所述的方法,其特征在于,根据所述拉链表表名和所述增量表表名,生成第一查询语句,包括:根据所述拉链表表名

增量表表名及预先规范的拉链表存量数据查询逻辑,生成所述第一查询语句,所述第一查询语句包括查询条件和更新规则;其中,所述查询条件用于:查找所述拉链表中的目标存量数据;所述更新规则用于:在所述目标存量数据存在的情形下,对所述目标存量数据进行更新
。5.
根据权利要求4所述的方法,其特征在于,所述查询条件包括第一查询条件和第二查询条件;对应地,所述查找所述拉链表中的目标存量数据,包括:根据第一查询条件,确定所述拉链表中的最新...

【专利技术属性】
技术研发人员:董子平吴剑雄
申请(专利权)人:上海哔哩哔哩科技有限公司
类型:发明
国别省市:

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

1