历史数据自动归档方法、装置、计算机设备和存储介质制造方法及图纸

技术编号:36537989 阅读:20 留言:0更新日期:2023-02-01 16:27
本申请涉及一种历史数据自动归档方法、装置、计算机设备、存储介质和计算机程序产品。方法包括:获取所需归档的历史数据表,提取所需归档的历史数据表的归档时间字段;根据所需归档的历史数据表,以归档时间字段进行分区,建立目标端的Hive数据表结构;调用Sqoop命令将所需归档的历史数据表中的历史数据抽取、并加载至Hive数据表结构,得到Hive数据表;当Hive数据表与所需归档的历史数据表一致时,获取所需归档的历史数据表中主键值、并确定每批次删除行数;基于主键值以及每批次删除行数删除所需归档的历史数据表中的历史数据。采用本方法能够满足大数据归档的需求。能够满足大数据归档的需求。能够满足大数据归档的需求。

【技术实现步骤摘要】
历史数据自动归档方法、装置、计算机设备和存储介质


[0001]本申请涉及数据归档
,特别是涉及一种历史数据自动归档方法、装置、计算机设备、存储介质和计算机程序产品。

技术介绍

[0002]随着业务量与客户数的日益增长,各个系统的历史数据越来越多,因此,对历史数据进行处理已经成为了一个热门的话题。
[0003]目前对历史数据进行处理是通过数据库管理员人工每月或每季度运用开源工具,如pt

archiver,将数据备份后在业务低峰期进行数据归档。
[0004]但随着涉及的数据量越来越大,即使是业务低峰期也仍然有很大的数据量,仅靠人工固定时间来操作的开源工具来进行归档越来越无法适应现在大数据归档的需求,这大大影响了对历史大数据进行归档的性能,使查询速度变慢,备份时间更长。

技术实现思路

[0005]基于此,有必要针对上述技术问题,提供一种能够对满足大数据归档需求的历史数据自动归档方法、装置、计算机设备、计算机可读存储介质和计算机程序产品。
[0006]第一方面,本申请提供了一种历史数据自动归档方法。所述方法包括:
[0007]获取所需归档的历史数据表,提取所述所需归档的历史数据表的归档时间字段;
[0008]根据所述所需归档的历史数据表,以归档时间字段进行分区,建立目标端的Hive数据表结构;
[0009]调用Sqoop命令将所述所需归档的历史数据表中的历史数据抽取、并加载至Hive数据表结构,得到Hive数据表;
[0010]当所述Hive数据表与所述所需归档的历史数据表一致时,获取所述所需归档的历史数据表中主键值、并确定每批次删除行数;
[0011]基于所述主键值以及所述每批次删除行数删除所述所需归档的历史数据表中的历史数据。
[0012]在其中一个实施例中,所述方法还包括:
[0013]根据所述归档时间字段查询所需归档行数,基于所述所需归档行数与历史数据总表总行数之比、及所述历史数据总表占历史数据总表空间的大小,预测所需归档的历史数据表占历史数据总表空间的大小;
[0014]根据所述所需归档的历史数据表占历史数据总表空间的大小,对所需归档的历史数据表进行备份。
[0015]在其中一个实施例中,所述根据所述所需归档的历史数据表占据历史数据总表空间的大小,对所需归档的历史数据表进行备份包括:
[0016]当所述预测所需归档的历史数据表占历史数据总表空间的大小未超过预设空间阈值时,对所述所需归档的历史数据表进行逻辑备份;
[0017]当所述预测所需归档的历史数据表占历史数据总表空间的大小超过预设空间阈值时,对所述所需归档的历史数据表进行物理备份。
[0018]在其中一个实施例中,调用Sqoop命令将所述所需归档的历史数据表中的历史数据抽取、并加载至Hive数据表结构,得到Hive数据表包括:
[0019]调用Sqoop命令将所述历史数据抽取至大数据HDFS层,并将所述大数据HDFS层的历史数据加载至大数据ODS层的Buf临时表;
[0020]将已加载数据的Buf临时表中历史数据融合至Hive数据表结构,得到Hive数据表。
[0021]在其中一个实施例中,所述当所述Hive数据表与所述所需归档的历史数据表一致时,获取所述所需归档的历史数据表中主键值、并确定每批次删除行数包括:
[0022]当所述Hive数据表与所述所需归档的历史数据表一致时,获取所述所需归档的历史数据表中主键值的最大值和最小值、以及内存刷新脏页阈值;
[0023]根据所述所需归档行数以及所需归档的历史数据表所占历史数据总表空间的实际大小,得到所需归档的历史数据表的平均行长度;
[0024]根据所述平均行长度以及所述内存刷新脏页阈值,确定每批次删除行数。
[0025]在其中一个实施例中,所述基于所述主键值以及所述每批次删除行数删除所述所需归档的历史数据表中的历史数据之后,还包括:
[0026]分析删除数据后历史数据表空间的碎片率,回收所述表空间的碎片率超过预设碎片率阈值的表空间。
[0027]第二方面,本申请还提供了一种历史数据自动归档装置。所述装置包括:
[0028]数据表获取模块,用于获取所需归档的历史数据表,提取所述所需归档的历史数据表的归档时间字段;
[0029]建表模块,用于根据所述所需归档的历史数据表,以归档时间字段进行分区,建立目标端的Hive数据表结构;
[0030]数据加载模块,用于调用Sqoop命令将所述所需归档的历史数据表中的历史数据抽取、并加载至Hive数据表结构,得到Hive数据表;
[0031]参数获取模块,当所述Hive数据表与所述所需归档的历史数据表一致时,获取所述所需归档的历史数据表中主键值、并确定每批次删除行数;
[0032]数据删除模块,基于所述主键值以及所述每批次删除行数删除所述所需归档的历史数据表中的历史数据。
[0033]第三方面,本申请还提供了一种计算机设备。所述计算机设备包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现以下步骤:
[0034]获取所需归档的历史数据表,提取所述所需归档的历史数据表的归档时间字段;
[0035]根据所述所需归档的历史数据表,以归档时间字段进行分区,建立目标端的Hive数据表结构;
[0036]调用Sqoop命令将所述所需归档的历史数据表中的历史数据抽取、并加载至Hive数据表结构,得到Hive数据表;
[0037]当所述Hive数据表与所述所需归档的历史数据表一致时,获取所述所需归档的历史数据表中主键值、并确定每批次删除行数;
[0038]基于所述主键值以及所述每批次删除行数删除所述所需归档的历史数据表中的
历史数据。
[0039]第四方面,本申请还提供了一种计算机可读存储介质。所述计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:
[0040]获取所需归档的历史数据表,提取所述所需归档的历史数据表的归档时间字段;
[0041]根据所述所需归档的历史数据表,以归档时间字段进行分区,建立目标端的Hive数据表结构;
[0042]调用Sqoop命令将所述所需归档的历史数据表中的历史数据抽取、并加载至Hive数据表结构,得到Hive数据表;
[0043]当所述Hive数据表与所述所需归档的历史数据表一致时,获取所述所需归档的历史数据表中主键值、并确定每批次删除行数;
[0044]基于所述主键值以及所述每批次删除行数删除所述所需归档的历史数据表中的历史数据。
[0045]第五方面,本申请还提供了一种计算机程序产品。所述计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现以下步骤:
[0046]获取所需归档的历史数据表,提取所述所需归档的历史数据表的归档时间字段本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种历史数据自动归档方法,其特征在于,所述方法包括:获取所需归档的历史数据表,提取所述所需归档的历史数据表的归档时间字段;根据所述所需归档的历史数据表,以归档时间字段进行分区,建立目标端的Hive数据表结构;调用Sqoop命令将所述所需归档的历史数据表中的历史数据抽取、并加载至Hive数据表结构,得到Hive数据表;当所述Hive数据表与所述所需归档的历史数据表一致时,获取所述所需归档的历史数据表中主键值、并确定每批次删除行数;基于所述主键值以及所述每批次删除行数删除所述所需归档的历史数据表中的历史数据。2.根据权利要求1所述的方法,其特征在于,所述方法还包括:根据所述归档时间字段查询所需归档行数,基于所述所需归档行数与历史数据总表总行数之比、及所述历史数据总表占历史数据总表空间的大小,预测所需归档的历史数据表占历史数据总表空间的大小;根据所述所需归档的历史数据表占历史数据总表空间的大小,对所需归档的历史数据表进行备份。3.根据权利要求2所述的方法,其特征在于,所述根据所述所需归档的历史数据表占据历史数据总表空间的大小,对所需归档的历史数据表进行备份包括:当所述预测所需归档的历史数据表占历史数据总表空间的大小未超过预设空间阈值时,对所述所需归档的历史数据表进行逻辑备份;当所述预测所需归档的历史数据表占历史数据总表空间的大小超过预设空间阈值时,对所述所需归档的历史数据表进行物理备份。4.根据权利要求1所述的方法,其特征在于,所述调用Sqoop命令将所述所需归档的历史数据表中的历史数据抽取、并加载至Hive数据表结构,得到Hive数据表包括:调用Sqoop命令将所述历史数据抽取至大数据HDFS层,并将所述大数据HDFS层的历史数据加载至大数据ODS层的Buf临时表;将已加载数据的Buf临时表中历史数据融合至Hive数据表结构,得到Hive数据表。5.根据权利要求1所述的方法,其特征在于,所述当所述Hive数据表与所述所需归档...

【专利技术属性】
技术研发人员:谭磊刘志超
申请(专利权)人:湖南长银五八消费金融股份有限公司
类型:发明
国别省市:

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

1