数据表存储周期确定方法、装置、设备及存储介质制造方法及图纸

技术编号:38711009 阅读:8 留言:0更新日期:2023-09-08 14:53
本申请提供一种数据表存储周期确定方法、装置、设备及存储介质。涉及大数据数据处理技术领域。该方法包括:从数据库的元数据表获取目标数据表多个子分区的开始日期和结束日期,基于分区时间升序依次确定第一子分区,并从第一子分区的第一结束日期向第一开始日期对第一子分区的数据进行探查,直至确定最后一条数据的最小存储日期,并基于分区时间降序依次确定第二子分区,并从第二子分区的第二开始日期向第二结束日期对第二子分区的数据进行探查,直至确定最后一条数据的最大存储日期,以及将最小存储日期至最大存储日期作为目标数据表的实际存储周期,能够避免对大量的数据文件进行全扫描,从而使用较少的计算资源即可得到存储周期。储周期。储周期。

【技术实现步骤摘要】
数据表存储周期确定方法、装置、设备及存储介质


[0001]本申请涉及大数据数据处理
,尤其涉及一种数据表存储周期确定方法、装置、设备及存储介质。

技术介绍

[0002]现有数据中台中大量数据通常进行分层计算和存储,需要对表的存储周期进行管理。目前针对大数据表的存储周期的采集方法,如果有些数据表可能目前只有部分日期的数据,无法直接提供准确的日期数据信息,则需要对原始数据表进行探查。相关技术中通常利用数据库的count()函数,针对表的日期字段进行分组统计,计算得到表内有数据的日期。对于数据量大的表,采用这种方式需要扫描大量的数据文件,从而消耗大量的计算资源,甚至由于资源不足难以得到计算结果。

技术实现思路

[0003]本申请提供一种数据表存储周期确定方法、装置、设备及存储介质,旨在至少在一定程度上解决相关技术中的技术问题之一。
[0004]第一方面,本申请提供一种数据表存储周期确定方法,包括:从数据库的元数据表获取目标数据表多个子分区的开始日期和结束日期;基于分区时间升序依次确定第一子分区,并从第一子分区的第一结束日期向第一开始日期对第一子分区的数据进行探查,直至确定最后一条数据的最小存储日期;基于分区时间降序依次确定第二子分区,并从第二子分区的第二开始日期向第二结束日期对第二子分区的数据进行探查,直至确定最后一条数据的最大存储日期;以及将最小存储日期至最大存储日期作为目标数据表的实际存储周期。
[0005]第二方面,本申请提供一种数据表存储周期确定装置,包括:获取模块,用于从数据库的元数据表获取目标数据表多个子分区的开始日期和结束日期;第一探查模块,用于基于分区时间升序依次确定第一子分区,并从第一子分区的第一结束日期向第一开始日期对第一子分区的数据进行探查,直至确定最后一条数据的最小存储日期;第二探查模块,用于基于分区时间降序依次确定第二子分区,并从第二子分区的第二开始日期向第二结束日期对第二子分区的数据进行探查,直至确定最后一条数据的最大存储日期;以及第一确定模块,用于将最小存储日期至最大存储日期作为目标数据表的实际存储周期。
[0006]第三方面,本申请提供一种电子设备,包括:处理器;用于存储处理器可执行指令的存储器;其中,处理器被配置为执行指令,以实现数据表存储周期确定方法。
[0007]第四方面,本申请提供一种计算机可读存储介质,当计算机可读存储介质中的指令由电子设备的处理器执行时,使得电子设备能够执行数据表存储周期确定方法。
[0008]第五方面,本申请提供一种计算机程序产品,包括计算机程序,计算机程序被处理器执行数据表存储周期确定方法。
[0009]本申请提供的数据表存储周期确定方法、装置、设备及存储介质,通过从数据库的
元数据表获取目标数据表多个子分区的开始日期和结束日期,基于分区时间升序依次确定第一子分区,并从第一子分区的第一结束日期向第一开始日期对第一子分区的数据进行探查,直至确定最后一条数据的最小存储日期,并基于分区时间降序依次确定第二子分区,并从第二子分区的第二开始日期向第二结束日期对第二子分区的数据进行探查,直至确定最后一条数据的最大存储日期,以及将最小存储日期至最大存储日期作为目标数据表的实际存储周期,能够基于数据库元数据中记录的信息探查数据表的存储周期,避免对大量的数据文件进行全扫描,从而使用较少的计算资源即可得到存储周期。
附图说明
[0010]此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本申请的实施例,并与说明书一起用于解释本申请的原理。
[0011]图1是根据本申请第一实施例示出的数据表存储周期确定方法的流程示意图;
[0012]图2是根据本申请第二实施例示出的数据表存储周期确定方法的流程示意图;
[0013]图3是根据本申请第三实施例示出的数据表存储周期确定方法的流程示意图;
[0014]图4是根据本申请示出的一种数据表存储周期确定装置的框图;
[0015]图5示出了适于用来实现本申请实施方式的示例性电子设备的框图。
[0016]通过上述附图,已示出本申请明确的实施例,后文中将有更详细的描述。这些附图和文字描述并不是为了通过任何方式限制本申请构思的范围,而是通过参考特定实施例为本领域技术人员说明本申请的概念。
具体实施方式
[0017]下面详细描述本申请的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本申请,而不能理解为对本申请的限制。相反,本申请的实施例包括落入所附加权利要求书的精神和内涵范围内的所有变化、修改和等同物。
[0018]其中,需要说明的是,本实施例的数据表存储周期确定方法的执行主体可以为数据表存储周期确定装置,该装置可以由软件和/或硬件的方式实现,该装置可以配置在电子设备中,电子设备可以包括但不限于终端、服务器端等。
[0019]图1是根据本申请第一实施例示出的数据表存储周期确定方法的流程示意图,该方法例如可以由工作流引擎执行,如图1所示,该方法包括:
[0020]S101:从数据库的元数据表获取目标数据表多个子分区的开始日期和结束日期。
[0021]其中,需要计算数据存储周期的大数据表可以被称为目标数据表,目标数据表可以存储任意可能的大数据场景下一段时间内产生的数据,例如,大量的商品交易数据、大量的网页浏览数据等,对此不作限制。在实际应用中,目标数据表通常采用分区存储,使用数据日期作为分区键,即:根据日期将目标数据表划分为多个子分区,其中,每个子分区包含连续的1~N个日期的数据。
[0022]而元数据表,用于记录数据库中每个数据表的基础信息,例如,数据表分区信息,分区信息例如包括分区存储数据的开始日期、结束日期等,对此不作限制。
[0023]而本公开实施例,首先从元数据表获取目标数据表多个子分区的分区信息,即:每个子分区的开始日期(START)和结束日期(END)。
[0024]举例而言,以Greenplum数据库为例,Greenplum数据库中的目标数据表的分区信息形式示例如下:
[0025]PARTITION分区名1START('2022

03

01'::date)END('2022

04

01'::date);
[0026]PARTITION分区名2START('2022

04

01'::date)END('2022

05

01'::date);
[0027]PARTITION分区名3START('2022

05

01'::date)END('2022

06

01'::date);
本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种数据表存储周期确定方法,其特征在于,包括:从数据库的元数据表获取目标数据表多个子分区的开始日期和结束日期;基于分区时间升序依次确定第一子分区,并从所述第一子分区的第一结束日期向第一开始日期对所述第一子分区的数据进行探查,直至确定最后一条数据的最小存储日期;基于分区时间降序依次确定第二子分区,并从所述第二子分区的第二开始日期向第二结束日期对所述第二子分区的数据进行探查,直至确定最后一条数据的最大存储日期;以及将所述最小存储日期至所述最大存储日期作为所述目标数据表的实际存储周期。2.根据权利要求1所述的方法,其特征在于,所述将所述最小存储日期至所述最大存储日期作为所述目标数据表的实际存储周期之后,还包括:确定需求存储周期的需求开始日期和需求结束日期;以及响应于所述最小存储日期小于需求开始日期,和/或所述最大存储日期大于所述需求结束日期,将所述目标数据表中最小存储日期至需求开始日期,和/或需求结束日期至最大存储日期的数据进行清理。3.根据权利要求1所述的方法,其特征在于,所述将所述最小存储日期至所述最大存储日期作为所述目标数据表的实际存储周期之后,还包括:响应于当前时间达到更新时间、且所述最小存储日期没有数据,对所述最小存储日期进行更新;和/或响应于当前时间达到更新时间、且所述最大存储日期的下一个日期有数据,对所述最大存储日期进行更新。4.根据权利要求3所述的方法,其特征在于,所述对所述最小存储日期进行更新,包括:响应于包含所述最小存储日期的第一子分区存在,从所述最小存储日期向所述第一结束日期对所述第一子分区的数据进行探查,直至确定第一条数据的存储日期作为更新后的所述最小存储日期;或者响应于包含所述最小存储日期的第一子分区不存在,基于当前分区时间升序依次确定第三子分区,并从所述第三子分区的第三结束日期向第三开始日期对所述第三子分区的数据进行探查,直至确定最后一条数据的存储日期作为更新后的所述最小存储日期。5.根据权利要求3所述的方法,其特征在于,所述对所述最大存储日期进行更新,包括:在所述第二结束日期没有数据的情况下,从所述最大存储日期的下一个日期开始向所述第二结束日期对所述第二子分区的数据进行探查,直至确定最后一条数据的存储日期作为更新后的所述最大存储日期;在所述第二结束日期有数据的情况下,基于当前分区时间降序依次确定第四子分区,并从所述第四子分区的第四开始日期向第四结束日期对所述第四子分区的数据进行探查,直至确定最后一条数据的存储日期作为更新后的所述最大存储日期。6.根据权利要求2所述的方法,其特征在于,所述确定需求存储周期的需求开始日期和需求结束日期,包括:获取所述需求开始日期和至少一个周期编码,其中,每个所述周期编码包括:1位数据保存期限标识,分为永久保存标识或非永久保存标识;2位度量标识,首位分为以下任一项:年标识、季标识、月标识、旬标识、周标识、日标识,
次位分为以下任一项:初标识、末标识、工作日标识、周末标识、指定日期标识、整标识;4位计量标识,取值为0000~9999的数字;以及基于所述需求开始日期和所述周期编码,确定所述需求结束日期。7.一种数据表存储周期确定装置,其特征在于,包括:获取模块,用于从数据库的元数据表获取目标数据表多个子分区的开始日期和结束日期;第一探查模块,用于基于分区时间升序依次确定第一子分区,并从所述第一子分区的第一结束日期向第一开始日期对所述第一子分区的数据进行探查,直至确定...

【专利技术属性】
技术研发人员:杨辰凯
申请(专利权)人:建信金融科技有限责任公司
类型:发明
国别省市:

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

1