CN116010340A - 一种数据表的管理方法及装置 - Google Patents
一种数据表的管理方法及装置 Download PDFInfo
- Publication number
- CN116010340A CN116010340A CN202211732116.5A CN202211732116A CN116010340A CN 116010340 A CN116010340 A CN 116010340A CN 202211732116 A CN202211732116 A CN 202211732116A CN 116010340 A CN116010340 A CN 116010340A
- Authority
- CN
- China
- Prior art keywords
- target
- data
- object table
- record
- historical
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明提供了一种数据表的管理方法及装置,其中,该方法包括:从操作数据集合中确定出待管理的多条目标操作记录;统计多条目标操作记录中包括的目标操作对象表对应的表参数信息,其中,表参数信息包括累计操作次数和历史操作时间,累计操作次数指示对应的目标操作对象表被执行历史数据操作的操作次数,历史操作时间指示对应的目标操作对象表上一次被执行历史数据操作的操作时间;将表参数信息满足筛选条件的目标操作对象表确定为冗余对象表,并从操作数据集合中删除冗余对象表对应的目标操作记录。通过本发明的上述方式,可以解决现有的数据管理效率低的技术问题。
Description
技术领域
本发明涉及数据处理领域,具体而言,涉及一种数据表的管理方法及装置。
背景技术
在实验室环境中,面向数据探索、分析、建模等场景的大数据环境,并非生产***。实验室环境下的数据产生较随意,生命周期管理策略不易人工判定,过期数据、无效数据较多,存储资源浪费严重,数据管理难度大。
针对上述问题,现有方式通常是依据简单的规则,如数据表的创建时长小于等于预设时长时,停止对数据表进行数据生命周期管理。但上述基于简单规则进行数据管理的方法,管理成本高,主要依赖人力,自动化程度不足。也就是说,现有的数据管理方式存在管理效率低的技术问题。
针对上述技术问题,尚未提出解决方案。
发明内容
本发明实施例提供了一种数据表的管理方法及装置,以至少解决现有的数据管理方式存在管理效率低的技术问题。
根据本发明的一个实施例,提供了一种数据表的管理方法,包括:
从操作数据集合中确定出待管理的多条目标操作记录,其中,上述操作数据集合中包括多条操作记录,上述操作记录中包括对操作对象表执行的历史数据操作,上述多条目标操作记录中包括的目标操作对象表所属的数据库为目标数据库;
统计上述多条目标操作记录中包括的目标操作对象表对应的表参数信息,其中,上述表参数信息包括累计操作次数和历史操作时间,上述累计操作次数指示对应的目标操作对象表被执行上述历史数据操作的操作次数,上述历史操作时间指示对应的目标操作对象表上一次被执行上述历史数据操作的操作时间;
将上述表参数信息满足筛选条件的目标操作对象表确定为冗余对象表,并从上述操作数据集合中删除上述冗余对象表对应的上述目标操作记录。
可选地,上述将上述表参数信息满足筛选条件的目标操作对象表确定为冗余对象表包括:
按照上述历史操作时间的先后顺序对上述多条目标操作记录中包括的多个目标操作对象表进行排序,确定目标表序列;
将上述目标表序列中处于目标次序之内,且对应的累计操作次数小于或等于目标阈值的目标操作对象表确定为上述冗余对象表。
可选地,上述将上述表参数信息满足筛选条件的目标操作对象表确定为冗余对象表包括:
在上述多个目标操作对象表中存在第一类操作对象表的情况下,按照上述历史操作时间的先后顺序对上述第一类操作对象表进行排序,确定第一类表序列,其中,上述第一类操作对象表中的数据为临时数据;将上述第一类表序列中处于第一目标次序之内,且累计操作次数小于或等于第一目标阈值的目标操作对象表确定为上述冗余对象表;
在上述多个目标操作对象表中存在第二类操作对象表的情况下,按照上述历史操作时间的先后顺序对上述第二类操作对象表进行排序,确定第二类表序列,其中,上述第二类操作对象表中的数据为常用数据;将上述第二类表序列中处于第二目标次序之内,且累计操作次数小于或等于第二目标阈值的目标操作对象表确定为候选冗余对象表;根据对上述候选冗余对象表的校验结果,从上述候选冗余对象表中确定出上述冗余对象表。
可选地,上述从操作数据集合中确定出待管理的多条目标操作记录包括:
从上述操作数据集合中获取第一类操作数据和第二类操作数据,其中,上述第一类操作数据中包括用户手动执行数据操作的操作记录,上述第二类操作数据中包括数据查询工具自动执行数据操作的操作记录;
对上述第一类操作数据和上述第二类操作数据进行预处理,得到上述多条目标操作记录。
可选地,上述对上述第一类操作数据和上述第二类操作数据进行预处理,得到上述多条目标操作记录包括:
遍历上述第一类操作数据和上述第二类操作数据,从中筛选出包含参考操作对象表的参考操作记录,其中,上述参考操作对象表的所属的数据库为上述目标数据库;
查找并删除上述参考操作记录中的冗余字符,其中,上述冗余字符包括换行符、注释符;
将处理后的上述参考操作记录确定为上述目标操作记录。
可选地,上述统计上述多条目标操作记录中包括的多个目标操作对象表的累计操作次数以及历史操作时间包括:
循环执行如下操作,直至遍历上述多条目标操作记录:
获取一条目标操作记录作为当前操作记录;
在上述当前操作记录中包括的历史数据操作的操作类型为目标操作类型的情况下,获取上述当前操作记录中历史数据操作对应的当前操作对象表;在统计列表中查找上述当前操作对象表成功的情况下,更新上述统计列表中的上述当前操作对象表的累计操作次数以及历史操作时间;在统计列表中查找上述当前操作对象表失败的情况下,在上述统计列表中新增上述当前操作对象表,以及对应的累计操作次数和历史操作时间;
在上述当前操作记录中包括的历史数据操作的操作类型并非目标操作类型的情况下,获取下一条目标操作记录。
根据本发明的另一个实施例,还提供了一种数据表的管理装置,包括:
第一确定单元,用于从操作数据集合中确定出待管理的多条目标操作记录,其中,上述操作数据集合中包括多条操作记录,上述操作记录中包括对操作对象表执行的历史数据操作,上述多条目标操作记录中包括的目标操作对象表所属的数据库为目标数据库;
统计单元,用于统计上述多条目标操作记录中包括的目标操作对象表对应的表参数信息,其中,上述表参数信息包括累计操作次数和历史操作时间,上述累计操作次数指示对应的目标操作对象表被执行上述历史数据操作的操作次数,上述历史操作时间指示对应的目标操作对象表上一次被执行上述历史数据操作的操作时间;
第二确定单元,用于将上述表参数信息满足筛选条件的目标操作对象表确定为冗余对象表,并从上述操作数据集合中删除上述冗余对象表对应的上述目标操作记录。
可选的,上述第二确定单元包括:
排序模块,用于按照上述历史操作时间的先后顺序对上述多条目标操作记录中包括的多个目标操作对象表进行排序,确定目标表序列;
确定模块,用于将上述目标表序列中处于目标次序之内,且对应的累计操作次数小于或等于目标阈值的目标操作对象表确定为上述冗余对象表。
可选地,第二确定单元包括:
第一排序模块,用于在上述多个目标操作对象表中存在第一类操作对象表的情况下,按照上述历史操作时间的先后顺序对上述第一类操作对象表进行排序,确定第一类表序列,其中,上述第一类操作对象表中的数据为临时数据;将上述第一类表序列中处于第一目标次序之内,且累计操作次数小于或等于第一目标阈值的目标操作对象表确定为上述冗余对象表;
第二排序模块,用于在上述多个目标操作对象表中存在第二类操作对象表的情况下,按照上述历史操作时间的先后顺序对上述第二类操作对象表进行排序,确定第二类表序列,其中,上述第二类操作对象表中的数据为常用数据;将上述第二类表序列中处于第二目标次序之内,且累计操作次数小于或等于第二目标阈值的目标操作对象表确定为候选冗余对象表;根据对上述候选冗余对象表的校验结果,从上述候选冗余对象表中确定出上述冗余对象表。
可选地,上述第一确定单元包括:
获取模块,用于从上述操作数据集合中获取第一类操作数据和第二类操作数据,其中,上述第一类操作数据中包括用户手动执行数据操作的操作记录,上述第二类操作数据中包括数据查询工具自动执行数据操作的操作记录;
预处理模块,用于对上述第一类操作数据和上述第二类操作数据进行预处理,得到上述多条目标操作记录。
可选地,上述预处理模块包括:
遍历子模块,用于遍历上述第一类操作数据和上述第二类操作数据,从中筛选出包含参考操作对象表的参考操作记录,其中,上述参考操作对象表的所属的数据库为上述目标数据库;
查找子模块,用于查找并删除上述参考操作记录中的冗余字符,其中,上述冗余字符包括换行符、注释符;
确定子模块,用于将处理后的上述参考操作记录确定为上述目标操作记录。
可选地,上述第二确定单元包括:
循环模块,用于循环执行如下操作,直至遍历上述多条目标操作记录:获取一条目标操作记录作为当前操作记录;在上述当前操作记录中包括的历史数据操作的操作类型为目标操作类型的情况下,获取上述当前操作记录中历史数据操作对应的当前操作对象表;在统计列表中查找上述当前操作对象表成功的情况下,更新上述统计列表中的上述当前操作对象表的累计操作次数以及历史操作时间;在统计列表中查找上述当前操作对象表失败的情况下,在上述统计列表中新增上述当前操作对象表,以及对应的累计操作次数和历史操作时间;在上述当前操作记录中包括的历史数据操作的操作类型并非目标操作类型的情况下,获取下一条目标操作记录。
根据本发明的又一个实施例,还提供了一种计算机可读的存储介质,上述存储介质中存储有计算机程序,其中,上述计算机程序被设置为运行时执行上述任一项方法实施例中的步骤。
根据本发明的又一个实施例,还提供了一种电子装置,包括存储器和处理器,上述存储器中存储有计算机程序,上述处理器被设置为运行上述计算机程序以执行上述任一项方法实施例中的步骤。
通过本发明,从操作数据集合中确定出待管理的多条目标操作记录;统计多条目标操作记录中包括的目标操作对象表对应的表参数信息,其中,表参数信息包括累计操作次数和历史操作时间,累计操作次数指示对应的目标操作对象表被执行历史数据操作的操作次数,历史操作时间指示对应的目标操作对象表上一次被执行历史数据操作的操作时间;将表参数信息满足筛选条件的目标操作对象表确定为冗余对象表,并从操作数据集合中删除冗余对象表对应的目标操作记录,从而根据操作数据集合中的目标操作记录记录的统计结果,将满足累计操作次数和历史操作时间条件的目标操作记录确定为冗余记录,进而实现对冗余记录的自动化删除,从而提高数据管理的管理效率,解决现有数据管理方式的管理效率低的技术问题。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是本发明实施例的数据表的管理方法的移动终端的硬件结构框图;
图2是根据本发明实施例的数据表的管理方法的流程图;
图3是根据本发明实施例的一种数据表的管理方法的实现方法示意图;
图4是根据本发明实施例的另一种数据表的管理方法的实现方法示意图;
图5是根据本发明实施例的又一种数据表的管理方法的实现方法示意图;
图6是根据本发明实施例的又一种数据表的管理方法的实现方法示意图;
图7是是根据本发明实施例的一种数据表的管理方法的示意图;
图8是根据本发明实施例的数据表的管理装置的框图。
具体实施方式
下文中将参考附图并结合实施例来详细说明本发明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。
实施例1
本申请实施例一所提供的方法实施例可以在移动终端、计算机终端或者类似的运算装置中执行。以运行在移动终端上为例,图1是本发明实施例的数据表的管理方法的移动终端的硬件结构框图,如图1所示,移动终端可以包括一个或多个(图1中仅示出一个)处理器102(处理器102可以包括但不限于微处理器MCU或可编程逻辑器件FPGA等的处理装置)和用于存储数据的存储器104,可选地,上述移动终端还可以包括用于通信功能的传输设备106以及输入输出设备108。本领域普通技术人员可以理解,图1所示的结构仅为示意,其并不对上述移动终端的结构造成限定。例如,移动终端还可包括比图1中所示更多或者更少的组件,或者具有与图1所示不同的配置。
存储器104可用于存储计算机程序,例如,应用软件的软件程序以及模块,如本发明实施例中的数据表的管理方法对应的计算机程序,处理器102通过运行存储在存储器104内的计算机程序,从而执行各种功能应用以及数据处理,即实现上述的方法。存储器104可包括高速随机存储器,还可包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器104可进一步包括相对于处理器102远程设置的存储器,这些远程存储器可以通过网络连接至移动终端。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
传输装置106用于经由一个网络接收或者发送数据。上述的网络具体实例可包括移动终端的通信供应商提供的无线网络。在一个实例中,传输装置106包括一个网络适配器(Network I nterface Contro l l er,简称为N I C),其可通过基站与其他网络设备相连从而可与互联网进行通讯。在一个实例中,传输装置106可以为射频(Rad i o Frequency,简称为RF)模块,其用于通过无线方式与互联网进行通讯。
首先,对本申请后续将出现的技术名词进行说明:
Hadoop集群:由Apache基金会所开发的分布式***架构。
H i ve:是基于Hadoop的一个数据仓库工具,用来进行数据提取、转化、加载,是一种可以存储、查询和分析存储在Hadoop中的大规模数据的机制,能将结构化的数据文件映射为一张数据库表,并提供SQL查询功能。
CDH:CDH是C l oudera公司的商业发行版Hadoop,专为满足企业需求而构建。
数据生命周期管理:数据生命周期管理是数据治理体系的重要组成部分,数据生命周期管理是一种基于策略的方法,用于管理数据在整个生命周期内的流动:从创建和初始存储,到最终过时被删除,即数据从产生或获取到销毁的过程。
实验室环境:面向数据探索、分析、建模等场景的大数据环境,并非生产***。
在本实施例中提供了一种运行于上述移动终端或网络架构的数据表的管理方法,图2是根据本发明实施例的数据表的管理方法的流程图,如图2所示,该流程包括如下步骤:
S202,从操作数据集合中确定出待管理的多条目标操作记录;
其中,操作数据集合中包括多条操作记录,操作记录中包括对操作对象表执行的历史数据操作,多条目标操作记录中包括的目标操作对象表所属的数据库为目标数据库;
S204,统计多条目标操作记录中包括的目标操作对象表对应的表参数信息,其中,表参数信息包括累计操作次数和历史操作时间,累计操作次数指示对应的目标操作对象表被执行历史数据操作的操作次数,历史操作时间指示对应的目标操作对象表上一次被执行历史数据操作的操作时间;
S206,将表参数信息满足筛选条件的目标操作对象表确定为冗余对象表,并从操作数据集合中删除冗余对象表对应的目标操作记录。
需要说明的是,在上述步骤S202中,上述操作数据集合可以具体为实验室环境中产生的操作数据,上述操作数据可以包括但不限于是对数据表的增、删、改、查等操作的操作记录。上述目标操作记录可以为当前执行的数据表管理任务所关心的数据库中包括的记录,换句话说,上述目标数据库可以是当前数据表管理任务所关心的目标数据库,上述目标操作数据为上述目标数据库中包括的对象表所对应的操作记录。
通过本申请的上述实施方式,从操作数据集合中确定出待管理的多条目标操作记录;统计多条目标操作记录中包括的目标操作对象表对应的表参数信息,其中,表参数信息包括累计操作次数和历史操作时间,累计操作次数指示对应的目标操作对象表被执行历史数据操作的操作次数,历史操作时间指示对应的目标操作对象表上一次被执行历史数据操作的操作时间;将表参数信息满足筛选条件的目标操作对象表确定为冗余对象表,并从操作数据集合中删除冗余对象表对应的目标操作记录,从而根据操作数据集合中的目标操作记录记录的统计结果,将满足累计操作次数和历史操作时间条件的目标操作记录确定为冗余记录,进而实现对冗余记录的自动化删除,从而提高数据管理的管理效率,解决现有数据管理方式的管理效率低的技术问题。
作为一种可选的实施方式,上述将表参数信息满足筛选条件的目标操作对象表确定为冗余对象表包括:
S1,按照历史操作时间的先后顺序对多条目标操作记录中包括的多个目标操作对象表进行排序,确定目标表序列;
S2,将目标表序列中处于目标次序之内,且对应的累计操作次数小于或等于目标阈值的目标操作对象表确定为冗余对象表。
可以理解的是,在本实施方式中,在统计出上述目标操作记录中包括的目标操作对象表对应的统计参数之后,可以根据其统计参数的情况从目标操作对象表中确定出冗余对象表,并将冗余对象表对应的操作记录从上述操作数据集中删除。
在本实施方式中,具体可以通过LRU算法结合实验室环境下的业务和技术规则,指定数据的清理策略。
例如,在本实施方式中,上述目标操作对象表对应的历史操作时间为该表上一次被执行相关数据操作的操作时间,例如,针对数据表1,根据其对应的历史操作记录确定出其被执行更新操作的操作时间:2022年10月1日00:00、2022年10月15日16:00、2022年11月1日12:18。假设当前管理时间为2022年12月1日,由于2022年11月1日12:18为上述三个操作时间中距离当前时间最短的时间,进而将上述时间2022年11月1日12:18确定为上述数据表1对应的历史操作时间;上述历史操作次数即根据上述三次更新操作确定出,上述数据表1的累计操作次数为3。
以下对上述实施方式进行进一步举例说明。假设数据表2的历史操作时间为2022年10月1日00:00,累计操作次数为5;数据表3的历史操作时间为2022年10月15日16:00,累计操作次数为1,进而可以根据上述三个数据表的历史操作时间将上述三个数据表排列为:数据表2、数据表3、数据表1。假设当前筛选条件为:目标次序条件为3,累计操作次数条件为1,进而将上述列表中排列第2,且累计操作次数为1的数据表3确定为上述冗余数据表。
作为一种可选的实施方式,上述筛选条件还可以进一步增加筛选周期条件,例如上述筛选条件可以进一步确定为:在距离当前管理时间3个月之内的,根据历史操作时间得到的数据表排列的排列次序在前10的,且累计操作次数小于或等于2次的数据表确定为上述冗余数据表。
上述筛选条件仅为一种示例,不对实际采用的筛选条件构成限定。
通过本申请的上述实施方式,以按照历史操作时间的先后顺序对多条目标操作记录中包括的多个目标操作对象表进行排序,确定目标表序列;将目标表序列中处于目标次序之内,且对应的累计操作次数小于或等于目标阈值的目标操作对象表确定为冗余对象表,从而将距离当前管理时间相对久远,且***作的操作次数较少的数据表确定为冗余数据表,进而实现有效清理冗余数据,并且能最大程度防范数据误删除的技术效果。
作为一种可选的实施方式,上述将表参数信息满足筛选条件的目标操作对象表确定为冗余对象表包括:
S1,在多个目标操作对象表中存在第一类操作对象表的情况下,按照历史操作时间的先后顺序对第一类操作对象表进行排序,确定第一类表序列,其中,第一类操作对象表中的数据为临时数据;将第一类表序列中处于第一目标次序之内,且累计操作次数小于或等于第一目标阈值的目标操作对象表确定为冗余对象表;
S2,在多个目标操作对象表中存在第二类操作对象表的情况下,按照历史操作时间的先后顺序对第二类操作对象表进行排序,确定第二类表序列,其中,第二类操作对象表中的数据为常用数据;将第二类表序列中处于第二目标次序之内,且累计操作次数小于或等于第二目标阈值的目标操作对象表确定为候选冗余对象表;根据对候选冗余对象表的校验结果,从候选冗余对象表中确定出冗余对象表。
需要说明的是,在本实施方式中,针对不同数据库中保存的数据表,可以细化出不同的清理策略。例如:上述步骤S1的策略可以是:在近3个月中,使用次数不到1次且所在库为dfxb_tmp_db或者dfxb_ceb_tmp_db的,予以删除销毁,完成表的生命周期,上述dfxb_tmp_db库或者dfxb_ceb_tmp_db库在本实施方式中主要用于保存临时数据。
上述步骤S2的策略可以是:在近一年中,使用次数不到1次且所在库为dfxb_tmp_db、dfxb_ceb_tmp_db、dfxb_pro_db库以外的其他库的,征求各项目组意见,予以删除销毁,完成表的生命周期。可以理解的是,上述dfxb_tmp_db、dfxb_ceb_tmp_db、dfxb_pro_db库以外的其他库可以是具体的开发项目组在执行常规任务的过程中,用于保存常用数据的数据库。
通过本申请的上述实施方式,以在多个目标操作对象表中存在第一类操作对象表的情况下,按照历史操作时间的先后顺序对第一类操作对象表进行排序,确定第一类表序列,其中,第一类操作对象表中的数据为临时数据;将第一类表序列中处于第一目标次序之内,且累计操作次数小于或等于第一目标阈值的目标操作对象表确定为冗余对象表;在多个目标操作对象表中存在第二类操作对象表的情况下,按照历史操作时间的先后顺序对第二类操作对象表进行排序,确定第二类表序列,其中,第二类操作对象表中的数据为常用数据;将第二类表序列中处于第二目标次序之内,且累计操作次数小于或等于第二目标阈值的目标操作对象表确定为候选冗余对象表;根据对候选冗余对象表的校验结果,从候选冗余对象表中确定出冗余对象表,从而针对不同的数据库中包括的数据表,制定不同的清理策略,从而使得大数据集群中表数据的生命周期管理策略更加自动和合理,能有效清理冗余数据,并且能最大程度防范数据误删除。
作为一种可选的实施方式,上述从操作数据集合中确定出待管理的多条目标操作记录包括:
S1,从操作数据集合中获取第一类操作数据和第二类操作数据,其中,第一类操作数据中包括用户手动执行数据操作的操作记录,第二类操作数据中包括数据查询工具自动执行数据操作的操作记录;
S2,对第一类操作数据和第二类操作数据进行预处理,得到多条目标操作记录。
需要说明的是,在本实施方式中,上述操作数据集合可以具体是一种Hadoop集群,上述第一类操作数据可以具体是HUE端操作元数据,上述第二类操作数据可以是作业元数据。具体地,HUE端操作元数据指的是用户通过HUE手动执行的查询情况;作业元数据是指自动化调度工具的作业调度情况。这二者结合起来,才是完整的h i ve作业的全域元数据。其中yarn ap i是自研的设计,具体是通过定时获取解析CDH提供的yarn API,解析接口返回信息,并获取h i ve的操作情况。
上述通过yarn ap i获取上述作业元数据的具体实现逻辑可以是如图3和图4所示:S1,定期抓取作业信息;S2,解析获得作业情况。其中,如图3所示,抓取可以是通过定期调用CDH提供的AP I接口获取其中包括的作业元数据;如图4所示,上述解析获得作业情况可以是通过获取作业元数据中包括的目标字段,以确定上述作业元数据中包括的内容为上述操作记录,具体,上述目标字段可以是“h i ve query str i ng”。
作为一种可选的实施方式,上述对第一类操作数据和第二类操作数据进行预处理,得到多条目标操作记录包括:
S1,遍历第一类操作数据和第二类操作数据,从中筛选出包含参考操作对象表的参考操作记录,其中,参考操作对象表的所属的数据库为目标数据库;
S2,查找并删除参考操作记录中的冗余字符,其中,冗余字符包括换行符、注释符;
S3,将处理后的参考操作记录确定为目标操作记录。
具体地,在本实施方式中,将作业元数据和HUE端操作元数据汇总后,通过自研的SQL解析处理引擎,自动获得数据的冷热度情况。解析引擎逻辑如下:
S1,引入外部依赖,并限定原数据中包括的数据表对应的数据库的库名;
S2,去掉通过上述筛选操作得到的数据中的换行符;
S3,去掉注释符、以及drop操作对应的操作记录;可以理解的是,drop操作对应的操作记录指示对应的操作对象表已经从上述操作数据集合中删除,因此可以在这一步将携带上述操作的操作记录直接进行筛选。
S4,合法的表名需要带有库名,需要做出判断;
需要说明的是,在本实施方式中,由于后续处理过程中需要依据库名进行进一步操作,因此需要筛选出携带有库名的合法表名对应的操作记录。
作为一种可选的实施方式,上述统计多条目标操作记录中包括的多个目标操作对象表的累计操作次数以及历史操作时间包括:
循环执行如下操作,直至遍历多条目标操作记录:
S1,获取一条目标操作记录作为当前操作记录;
S2,在当前操作记录中包括的历史数据操作的操作类型为目标操作类型的情况下,获取当前操作记录中历史数据操作对应的当前操作对象表;在统计列表中查找当前操作对象表成功的情况下,更新统计列表中的当前操作对象表的累计操作次数以及历史操作时间;在统计列表中查找当前操作对象表失败的情况下,在统计列表中新增当前操作对象表,以及对应的累计操作次数和历史操作时间;
S3,在当前操作记录中包括的历史数据操作的操作类型并非目标操作类型的情况下,获取下一条目标操作记录。
在本实施方式中,可以通过遍历每一行筛选后的目标操作记录,迭代获取create、i nsert、from、jo i n后面的表名;并除一些提取的表名中带有特殊字符等现象,进而通过如图5所示的方式进行热度统计。
通过本申请的上述实施方式,以在当前操作记录中包括的历史数据操作的操作类型为目标操作类型的情况下,获取当前操作记录中历史数据操作对应的当前操作对象表;在统计列表中查找当前操作对象表成功的情况下,更新统计列表中的当前操作对象表的累计操作次数以及历史操作时间;在统计列表中查找当前操作对象表失败的情况下,在统计列表中新增当前操作对象表,以及对应的累计操作次数和历史操作时间;在当前操作记录中包括的历史数据操作的操作类型并非目标操作类型的情况下,获取下一条目标操作记录,从而通过本申请的上述实施方式,获取和管理实验室环境下Hadoop大数据集群中的全部租户的作业,并通过上述方式从这些作业中解析出H i ve表名,从而得到H i ve表的冷热度情况,提高了H i ve表的冷热统计效率。
以下结合图7对本申请的一个完整实施方式进行说明。
如图7所示,在全域元数据获取阶段:通过读取HUE元数据库,获得HUE端操作元数据;通过yarn API,解析获得作业元数据。注:HUE端操作元数据指的是用户通过HUE手动执行的查询情况;作业元数据是指自动化调度工具的作业调度情况。这二者结合起来,才是完整的h i ve作业的全域元数据。其中yarn ap i是自研的设计,具体是通过定时获取解析CDH提供的yarn AP I,解析接口返回信息,并获取h i ve的操作情况。通过yarn AP I获取作业元数据数据可以包括如下步骤S1,定期抓取作业信息;S2,解析获得作业情况.
接着,在二者汇总后,用自研的SQL解析处理引擎,自动获得数据的冷热度情况。解析引擎逻辑如下:S1,引入外部依赖,并限定库名;S2,去掉一些换行符;S3,去掉注释符、drop操作;S4,合法的表名需要带有库名,需要做出判断;S5,遍历每一行,迭代获取create、i nsert、from、jo i n后面的表名;S6,去除一些提取的表名中带有特殊字符等现象;S7,生成热度统计;S8,排序并且打印;输出结果示例如图6所示。
最后,基于LRU算法,结合实验室环境下的业务和技术规则,制定数据的清理策略。具体规则如下:
规则1:近3个月中,使用次数不到1次且所在库为dfxb_tmp_db或者dfxb_ceb_tmp_db的,予以删除销毁,完成表的生+-命周期。
规则2:近1年中,使用次数不到1次且所在库为dfxb_tmp_db、dfxb_ceb_tmp_db、dfxb_pro_db库以外的其他库的,征求各项目组意见,予以删除销毁,完成表的生命周期。
通过本申请的上述实施方式,首先,获取和管理实验室环境下Hadoop大数据集群中的全部租户的作业,并通过上述解析方法从这些作业中解析出H i ve表名,从而得到H ive表的冷热度情况;接着是结合上述冷热度分析,并考虑集群业务实际,在LRU算法的基础上,提出一种数据归档和清理策略,在防止误删除数据的同时,减轻企业的存储成本压力。
实施例2
根据本发明的另一个实施例,还提供了一种数据表的管理装置,图8是根据本实施例的数据表的管理装置的框图,如图8所示,包括:
第一确定单元82,用于从操作数据集合中确定出待管理的多条目标操作记录,其中,上述操作数据集合中包括多条操作记录,上述操作记录中包括对操作对象表执行的历史数据操作,上述多条目标操作记录中包括的目标操作对象表所属的数据库为目标数据库;
统计单元84,用于统计上述多条目标操作记录中包括的目标操作对象表对应的表参数信息,其中,上述表参数信息包括累计操作次数和历史操作时间,上述累计操作次数指示对应的目标操作对象表被执行上述历史数据操作的操作次数,上述历史操作时间指示对应的目标操作对象表上一次被执行上述历史数据操作的操作时间;
第二确定单元86,,用于将上述表参数信息满足筛选条件的目标操作对象表确定为冗余对象表,并从上述操作数据集合中删除上述冗余对象表对应的上述目标操作记录。
可选的,上述第二确定单元包括:
排序模块,用于按照上述历史操作时间的先后顺序对上述多条目标操作记录中包括的多个目标操作对象表进行排序,确定目标表序列;
确定模块,用于将上述目标表序列中处于目标次序之内,且对应的累计操作次数小于或等于目标阈值的目标操作对象表确定为上述冗余对象表。
可选地,第二确定单元包括:
第一排序模块,用于在上述多个目标操作对象表中存在第一类操作对象表的情况下,按照上述历史操作时间的先后顺序对上述第一类操作对象表进行排序,确定第一类表序列,其中,上述第一类操作对象表中的数据为临时数据;将上述第一类表序列中处于第一目标次序之内,且累计操作次数小于或等于第一目标阈值的目标操作对象表确定为上述冗余对象表;
第二排序模块,用于在上述多个目标操作对象表中存在第二类操作对象表的情况下,按照上述历史操作时间的先后顺序对上述第二类操作对象表进行排序,确定第二类表序列,其中,上述第二类操作对象表中的数据为常用数据;将上述第二类表序列中处于第二目标次序之内,且累计操作次数小于或等于第二目标阈值的目标操作对象表确定为候选冗余对象表;根据对上述候选冗余对象表的校验结果,从上述候选冗余对象表中确定出上述冗余对象表。
可选地,上述第一确定单元包括:
获取模块,用于从上述操作数据集合中获取第一类操作数据和第二类操作数据,其中,上述第一类操作数据中包括用户手动执行数据操作的操作记录,上述第二类操作数据中包括数据查询工具自动执行数据操作的操作记录;
预处理模块,用于对上述第一类操作数据和上述第二类操作数据进行预处理,得到上述多条目标操作记录。
可选地,上述预处理模块包括:
遍历子模块,用于遍历上述第一类操作数据和上述第二类操作数据,从中筛选出包含参考操作对象表的参考操作记录,其中,上述参考操作对象表的所属的数据库为上述目标数据库;
查找子模块,用于查找并删除上述参考操作记录中的冗余字符,其中,上述冗余字符包括换行符、注释符;
确定子模块,用于将处理后的上述参考操作记录确定为上述目标操作记录。
可选地,上述第二确定单元包括:
循环模块,用于循环执行如下操作,直至遍历上述多条目标操作记录:获取一条目标操作记录作为当前操作记录;在上述当前操作记录中包括的历史数据操作的操作类型为目标操作类型的情况下,获取上述当前操作记录中历史数据操作对应的当前操作对象表;在统计列表中查找上述当前操作对象表成功的情况下,更新上述统计列表中的上述当前操作对象表的累计操作次数以及历史操作时间;在统计列表中查找上述当前操作对象表失败的情况下,在上述统计列表中新增上述当前操作对象表,以及对应的累计操作次数和历史操作时间;在上述当前操作记录中包括的历史数据操作的操作类型并非目标操作类型的情况下,获取下一条目标操作记录。
需要说明的是,上述各个模块是可以通过软件或硬件来实现的,对于后者,可以通过以下方式实现,但不限于此:上述模块均位于同一处理器中;或者,上述各个模块以任意组合的形式分别位于不同的处理器中。
实施例3
本发明的实施例还提供了一种计算机可读的存储介质,该存储介质中存储有计算机程序,其中,该计算机程序被设置为运行时执行上述任一项方法实施例中的步骤。
可选地,在本实施例中,上述存储介质可以被设置为存储用于执行以下步骤的计算机程序:
S11,从操作数据集合中确定出待管理的多条目标操作记录,其中,上述操作数据集合中包括多条操作记录,上述操作记录中包括对操作对象表执行的历史数据操作,上述多条目标操作记录中包括的目标操作对象表所属的数据库为目标数据库;
S12,统计上述多条目标操作记录中包括的目标操作对象表对应的表参数信息,其中,上述表参数信息包括累计操作次数和历史操作时间,上述累计操作次数指示对应的目标操作对象表被执行上述历史数据操作的操作次数,上述历史操作时间指示对应的目标操作对象表上一次被执行上述历史数据操作的操作时间;
S13,将上述表参数信息满足筛选条件的目标操作对象表确定为冗余对象表,并从上述操作数据集合中删除上述冗余对象表对应的上述目标操作记录。
可选地,在本实施例中,上述存储介质可以包括但不限于:U盘、只读存储器(Read-On l y Memory,简称为ROM)、随机存取存储器(Random Access Memory,简称为RAM)、移动硬盘、磁碟或者光盘等各种可以存储计算机程序的介质。
实施例4
本发明的实施例还提供了一种电子装置,包括存储器和处理器,该存储器中存储有计算机程序,该处理器被设置为运行计算机程序以执行上述任一项方法实施例中的步骤。
可选地,上述电子装置还可以包括传输设备以及输入输出设备,其中,该传输设备和上述处理器连接,该输入输出设备和上述处理器连接。
可选地,在本实施例中,上述处理器可以被设置为通过计算机程序执行以下步骤:
S11,从操作数据集合中确定出待管理的多条目标操作记录,其中,上述操作数据集合中包括多条操作记录,上述操作记录中包括对操作对象表执行的历史数据操作,上述多条目标操作记录中包括的目标操作对象表所属的数据库为目标数据库;
S12,统计上述多条目标操作记录中包括的目标操作对象表对应的表参数信息,其中,上述表参数信息包括累计操作次数和历史操作时间,上述累计操作次数指示对应的目标操作对象表被执行上述历史数据操作的操作次数,上述历史操作时间指示对应的目标操作对象表上一次被执行上述历史数据操作的操作时间;
S13,将上述表参数信息满足筛选条件的目标操作对象表确定为冗余对象表,并从上述操作数据集合中删除上述冗余对象表对应的上述目标操作记录。
可选地,本实施例中的具体示例可以参考上述实施例及可选实施方式中所描述的示例,本实施例在此不再赘述。
显然,本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (10)
1.一种数据表的管理方法,其特征在于,包括:
从操作数据集合中确定出待管理的多条目标操作记录,其中,所述操作数据集合中包括多条操作记录,所述操作记录中包括对操作对象表执行的历史数据操作,所述多条目标操作记录中包括的目标操作对象表所属的数据库为目标数据库;
统计所述多条目标操作记录中包括的目标操作对象表对应的表参数信息,其中,所述表参数信息包括累计操作次数和历史操作时间,所述累计操作次数指示对应的目标操作对象表被执行所述历史数据操作的操作次数,所述历史操作时间指示对应的目标操作对象表上一次被执行所述历史数据操作的操作时间;
将所述表参数信息满足筛选条件的目标操作对象表确定为冗余对象表,并从所述操作数据集合中删除所述冗余对象表对应的所述目标操作记录。
2.根据权利要求1所述的方法,其特征在于,所述将所述表参数信息满足筛选条件的目标操作对象表确定为冗余对象表包括:
按照所述历史操作时间的先后顺序对所述多条目标操作记录中包括的多个目标操作对象表进行排序,确定目标表序列;
将所述目标表序列中处于目标次序之内,且对应的累计操作次数小于或等于目标阈值的目标操作对象表确定为所述冗余对象表。
3.根据权利要求2所述的方法,其特征在于,所述将所述表参数信息满足筛选条件的目标操作对象表确定为冗余对象表包括:
在所述多个目标操作对象表中存在第一类操作对象表的情况下,按照所述历史操作时间的先后顺序对所述第一类操作对象表进行排序,确定第一类表序列,其中,所述第一类操作对象表中的数据为临时数据;将所述第一类表序列中处于第一目标次序之内,且累计操作次数小于或等于第一目标阈值的目标操作对象表确定为所述冗余对象表;
在所述多个目标操作对象表中存在第二类操作对象表的情况下,按照所述历史操作时间的先后顺序对所述第二类操作对象表进行排序,确定第二类表序列,其中,所述第二类操作对象表中的数据为常用数据;将所述第二类表序列中处于第二目标次序之内,且累计操作次数小于或等于第二目标阈值的目标操作对象表确定为候选冗余对象表;根据对所述候选冗余对象表的校验结果,从所述候选冗余对象表中确定出所述冗余对象表。
4.根据权利要求1所述的方法,其特征在于,所述从操作数据集合中确定出待管理的多条目标操作记录包括:
从所述操作数据集合中获取第一类操作数据和第二类操作数据,其中,所述第一类操作数据中包括用户手动执行数据操作的操作记录,所述第二类操作数据中包括数据查询工具自动执行数据操作的操作记录;
对所述第一类操作数据和所述第二类操作数据进行预处理,得到所述多条目标操作记录。
5.根据权利要求4所述的方法,其特征在于,所述对所述第一类操作数据和所述第二类操作数据进行预处理,得到所述多条目标操作记录包括:
遍历所述第一类操作数据和所述第二类操作数据,从中筛选出包含参考操作对象表的参考操作记录,其中,所述参考操作对象表的所属的数据库为所述目标数据库;
查找并删除所述参考操作记录中的冗余字符,其中,所述冗余字符包括换行符、注释符;
将处理后的所述参考操作记录确定为所述目标操作记录。
6.根据权利要求4所述的方法,其特征在于,所述统计所述多条目标操作记录中包括的多个目标操作对象表的累计操作次数以及历史操作时间包括:
循环执行如下操作,直至遍历所述多条目标操作记录:
获取一条目标操作记录作为当前操作记录;
在所述当前操作记录中包括的历史数据操作的操作类型为目标操作类型的情况下,获取所述当前操作记录中历史数据操作对应的当前操作对象表;在统计列表中查找所述当前操作对象表成功的情况下,更新所述统计列表中的所述当前操作对象表的累计操作次数以及历史操作时间;在统计列表中查找所述当前操作对象表失败的情况下,在所述统计列表中新增所述当前操作对象表,以及对应的累计操作次数和历史操作时间;
在所述当前操作记录中包括的历史数据操作的操作类型并非目标操作类型的情况下,获取下一条目标操作记录。
7.一种数据表的管理装置,其特征在于,包括:
第一确定单元,用于从操作数据集合中确定出待管理的多条目标操作记录,其中,所述操作数据集合中包括多条操作记录,所述操作记录中包括对操作对象表执行的历史数据操作,所述多条目标操作记录中包括的目标操作对象表所属的数据库为目标数据库;
统计单元,用于统计所述多条目标操作记录中包括的目标操作对象表对应的表参数信息,其中,所述表参数信息包括累计操作次数和历史操作时间,所述累计操作次数指示对应的目标操作对象表被执行所述历史数据操作的操作次数,所述历史操作时间指示对应的目标操作对象表上一次被执行所述历史数据操作的操作时间;
第二确定单元,用于将所述表参数信息满足筛选条件的目标操作对象表确定为冗余对象表,并从所述操作数据集合中删除所述冗余对象表对应的所述目标操作记录。
8.根据权利要求7所述的装置,其特征在于,所述第二确定单元包括:
排序模块,用于按照所述历史操作时间的先后顺序对所述多条目标操作记录中包括的多个目标操作对象表进行排序,确定目标表序列;
确定模块,用于将所述目标表序列中处于目标次序之内,且对应的累计操作次数小于或等于目标阈值的目标操作对象表确定为所述冗余对象表。
9.一种计算机可读的存储介质,其特征在于,所述存储介质中存储有计算机程序,其中,所述计算机程序被设置为运行时执行所述权利要求1至6任一项中所述的方法。
10.一种电子装置,包括存储器和处理器,其特征在于,所述存储器中存储有计算机程序,所述处理器被设置为运行所述计算机程序以执行所述权利要求1至6中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211732116.5A CN116010340A (zh) | 2022-12-30 | 2022-12-30 | 一种数据表的管理方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211732116.5A CN116010340A (zh) | 2022-12-30 | 2022-12-30 | 一种数据表的管理方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116010340A true CN116010340A (zh) | 2023-04-25 |
Family
ID=86035125
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211732116.5A Pending CN116010340A (zh) | 2022-12-30 | 2022-12-30 | 一种数据表的管理方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116010340A (zh) |
-
2022
- 2022-12-30 CN CN202211732116.5A patent/CN116010340A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3370391B1 (en) | System for data cleansing based aggregation and prioritization of it asset field values from real-time event logs and method thereof | |
US10929370B2 (en) | Index maintenance management of a relational database management system | |
CN109271435A (zh) | 一种支持断点续传的数据抽取方法及*** | |
EP3788505B1 (en) | Storing data items and identifying stored data items | |
CN108846121A (zh) | 一种数据搜索方法和装置 | |
CN109885642B (zh) | 面向全文检索的分级存储方法及装置 | |
CN111913860A (zh) | 一种操作行为分析方法及装置 | |
JP6642435B2 (ja) | データ処理装置、データ処理方法、及び、プログラム | |
CN106919566A (zh) | 一种基于海量数据的查询统计方法及*** | |
CN106815223A (zh) | 一种海量图片管理方法和装置 | |
CN110716938A (zh) | 数据的汇聚方法及装置、存储介质和电子装置 | |
CN110502529B (zh) | 数据处理方法、装置、服务器及存储介质 | |
CN116010340A (zh) | 一种数据表的管理方法及装置 | |
CN112685370B (zh) | 一种日志采集方法、装置、设备和介质 | |
CN110321358A (zh) | 一种用户数据整编的方法及装置 | |
CN114036104A (zh) | 基于分布式存储的重删数据的云归档方法、装置及*** | |
CN112835932A (zh) | 业务表的批量处理方法及装置、非易失性存储介质 | |
EP3436988B1 (en) | "methods and systems for database optimisation" | |
CN104951869A (zh) | 一种基于工作流的舆情监控方法及装置 | |
CN113434492A (zh) | 数据的检测方法、装置、存储介质和电子装置 | |
CN117725074A (zh) | 存储文件的数据库更新方法、装置、存储介质和电子设备 | |
CN112597233B (zh) | 数据指标的批量处理方法、装置、设备及存储介质 | |
CN111931502B (zh) | 一种分词处理方法及***、分词搜索方法 | |
CN117540151B (zh) | 一种数据推送***的数据预处理方法 | |
CN113553320B (zh) | 数据质量监控方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |