CN113111055A - 一种数据表的数据清理方法及装置 - Google Patents
一种数据表的数据清理方法及装置 Download PDFInfo
- Publication number
- CN113111055A CN113111055A CN202110416841.0A CN202110416841A CN113111055A CN 113111055 A CN113111055 A CN 113111055A CN 202110416841 A CN202110416841 A CN 202110416841A CN 113111055 A CN113111055 A CN 113111055A
- Authority
- CN
- China
- Prior art keywords
- data
- list
- cleaning
- sub
- data table
- 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
- 238000004140 cleaning Methods 0.000 title claims abstract description 212
- 238000000034 method Methods 0.000 title claims abstract description 52
- 238000005192 partition Methods 0.000 claims abstract description 128
- 238000013515 script Methods 0.000 claims abstract description 64
- 238000012216 screening Methods 0.000 claims abstract description 20
- 238000004590 computer program Methods 0.000 claims description 18
- 230000014759 maintenance of location Effects 0.000 claims description 12
- 238000003860 storage Methods 0.000 claims description 12
- 238000001914 filtration Methods 0.000 claims 1
- 238000010586 diagram Methods 0.000 description 14
- 238000004891 communication Methods 0.000 description 6
- 230000006870 function Effects 0.000 description 5
- 238000012163 sequencing technique Methods 0.000 description 4
- 230000000717 retained effect Effects 0.000 description 3
- 238000009826 distribution Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000007405 data analysis Methods 0.000 description 1
- 238000007418 data mining Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/21—Design, administration or maintenance of databases
- G06F16/215—Improving data quality; Data cleansing, e.g. de-duplication, removing invalid entries or correcting typographical errors
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/22—Indexing; Data structures therefor; Storage structures
- G06F16/2282—Tablespace storage structures; Management thereof
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/23—Updating
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Quality & Reliability (AREA)
- Software Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明提供一种数据表的数据清理方法及装置,涉及大数据技术领域。所述方法包括:建立待清理数据表清单;根据表清单拆分规则,将所述待清理数据表清单拆分为多个子清单;其中,所述表清单拆分规则是预设的;遍历各个子清单,基于数据清理规则对每个数据表的分区进行筛选,获得分区清单;其中,所述数据清理规则是预设的;基于所述分区清单生成清理脚本,并执行所述清理脚本完成数据清理。所述装置用于执行上述方法。发明实施例提供的数据表的数据清理方法及装置,提高了数据清理的效率。
Description
技术领域
本发明涉及大数据技术领域,具体涉及一种数据表的数据清理方法及装置。
背景技术
目前,随着大数据的时代来临,以Hadoop技术为基础的分布式系统广泛的应用在各个领域。Hive表作为分布式系统中的重要组件,也得到了广泛的应用。
在大数据时代,数据的规模急剧膨胀,存储空间随之增加。由于数据体量大、存储成本高等原因限制,企业在完成数据分析和挖掘之后,都会定期对数据进行清理。现有技术中,主要采用人工的方式对数据进行清理,但由于数据体量庞大,以人工的方式对数据进行清理成本高且效率低。而且,由于后期项目的考虑,在清理数据的同时,还需要从庞大的清理数据中保留部分数据,人工筛选保留数据效率也很低。因此,如何提出一种数据清理方法,能够快速对Hive表数据进行清理,本领域需要解决的重要课题。
发明内容
针对现有技术中的问题,本发明实施例提供一种数据表的数据清理方法及装置,能够至少部分地解决现有技术中存在的问题。
一方面,本发明提出一种数据表的数据清理方法,包括:
建立待清理数据表清单;
根据表清单拆分规则,将所述待清理数据表清单拆分为多个子清单;其中,所述表清单拆分规则是预设的;
遍历各个子清单,基于数据清理规则对每个数据表的分区进行筛选,获得分区清单;其中,所述数据清理规则是预设的;
基于所述分区清单生成清理脚本,并执行所述清理脚本完成数据清理。
另一方面,本发明提供一种数据表的数据清理装置,包括:
建立模块,用于建立待清理数据表清单;
拆分模块,用于根据表清单拆分规则,将所述待清理数据表清单拆分为多个子清单;其中,所述表清单拆分规则是预设的;
遍历模块,用于遍历各个子清单,基于数据清理规则对每个数据表的分区进行筛选,获得分区清单;其中,所述数据清理规则是预设的;
清理模块,用于基于所述分区清单生成清理脚本,并执行所述清理脚本完成数据清理。
再一方面,本发明提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上述任一实施例所述数据表的数据清理方法的步骤。
又一方面,本发明提供一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现上述任一实施例所述数据表的数据清理方法的步骤。
发明实施例提供的数据表的数据清理方法及装置,能够建立待清理数据表清单,根据表清单拆分规则,将待清理数据表清单拆分为多个子清单,遍历各个子清单,基于数据清理规则对每个数据表的分区进行筛选,获得分区清单,基于分区清单生成清理脚本,并执行清理脚本完成数据清理,提高了数据清理的效率。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。在附图中:
图1是本发明一实施例提供的数据表的数据清理方法的流程示意图。
图2是本发明另一实施例提供的数据表的数据清理方法的流程示意图。
图3是本发明又一实施例提供的数据表的数据清理方法的流程示意图。
图4是本发明一实施例提供的数据表的数据清理装置的结构示意图。
图5是本发明另一实施例提供的数据表的数据清理装置的结构示意图。
图6是本发明一实施例提供的电子设备的实体结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚明白,下面结合附图对本发明实施例做进一步详细说明。在此,本发明的示意性实施例及其说明用于解释本发明,但并不作为对本发明的限定。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互任意组合。
为了便于理解本申请提供的技术方案,下面先对本申请技术方案的相关内容进行说明。本发明提供一种数据表的数据清理方法,通过获取待清理的表清单,同时多并发遍历Hadoop集群中所有的分区,筛选出符合清理范围的数据生成清理清单,从清理清单中筛除保留的数据之后,生成对应的清理脚本,能够并发执行清理脚本,完成数据清理,提高了企业数据清理的效率并降低了数据清理的成本。本发明实施例提供的数据表的数据清理方法可以应用于以Hadoop技术为基础的分布式系统,针对Hive表数据进行清理。
下面以清理服务器作为执行主体为例来说明本发明实施例提供的数据表的数据清理方法的实现过程。可理解的是,本发明实施例提供的数据表的数据清理方法的执行主体包括但不限于清理服务器。
图1是本发明一实施例提供的数据表的数据清理方法的流程示意图,如图1所示,本发明实施例提供的数据表的数据清理方法,包括:
S101、建立待清理数据表清单;
具体地,清理服务器可以访问数据库或者Hadoop集群,获取所有的数据表的相关信息建立待清理数据表清单。其中,所述待清理数据表清单可以包括数据表名称、数据表大小、数据表的分区等信息,根据实际需要进行设置,本发明实施例不做限定。
S102、根据表清单拆分规则,将所述待清理数据表清单拆分为多个子清单;其中,所述表清单拆分规则是预设的;
具体地,由于数据量很大,为了方便后续筛选需要清理的数据,所述清理服务器可以根据表清单拆分规则,将所述待清理数据表清单拆分为多个子清单。
例如,所述表清单拆分规则为:将待清理数据表清单拆分为m个子清单,每个子清单对应的数据表的数量不超过n张。所述清理服务器可以统计待清理数据表清单对应的数据表的总数量,然后除以m,获得商值k,如果商值k为整数,那么将可以将商值k作为每个子清单对应的数据表的数量;如果商值k不是整数,那么可以对商值k进行向上取整获得p,将p作为m-1个子清单对应的数据表的数量,剩余一个子清单对应剩余数量的数据表。其中,m和n根据实际情况进行设置,本发明实施例不做限定。
例如,所述表清单拆分规则为:将待清理数据表清单拆分为m个子清单,每个子清单对应的数据表的数量不超过n张,每个子清单对应的数据表的大小之和不超过预设值。所述清理服务器可以将待清理数据表清单对应的各张数据表,按照数据表的大小由大到小进行排列,获得排序结果,然后根据排序结果将数据表分配到m个子清单中,使每个数据表对应的数据表的大小之和尽可能一致,第一个子清单可以对应排序结果中序号为1、2m、2m+1、4m、4m+1、6m+1、8m……的数据表,第二个子清单可以对应排序结果中序号为2、2m-1、2m+2、4m-1、6m+2、8m-1……的数据表,第三个子清单可以对应排序结果中序号为3、2m-2、2m+3、4m-2、6m+3、8m-2……的数据表,第四个子清单可以对应排序结果中序号为4、2m-3、2m+4、4m-3、6m+4、8m-1……的数据表,以此类推。
S103、遍历各个子清单,基于数据清理规则对每个数据表的分区进行筛选,获得分区清单;其中,所述数据清理规则是预设的;
具体地,所述清理服务器在拆分出多个子清单之后,遍历各个子清单根据数据清理规则对每个数据表的分区进行筛选,筛选出每个子清单对应的每个数据表需要进行清理的分区,再将各个数据表需要进行清理的分区进行合并,获得分区清单。分区清单中包括需要清理的数据表的分区范围。其中,所述数据清理规则是预设的,设置了哪些分区需要进行数据清理。
例如,在遍历各个子清单时,可以逐一地进行遍历;但为了提高效率,可以同时遍历多个子清单,即并发地对各个子清单进行遍历。
在遍历每个子清单时,从子清单中依次获取数据表名称,根据数据表名称获取对应的数据表包括的所有分区,判断哪些分区满足数据清理规则,将满足数据清理规则的分区作为需要清理的分区。
S104、基于所述分区清单生成清理脚本,并执行所述清理脚本完成数据清理。
具体地,所述清理服务器在获得分区清单之后,可以基于所述分区清单生成清理脚本,然后执行所述清理脚本将需要清理的数据从对应的数据表中删除,以完成数据清理。
本发明实施例提供的数据表的数据清理方法,能够建立待清理数据表清单,根据表清单拆分规则,将待清理数据表清单拆分为多个子清单,遍历各个子清单,基于数据清理规则对每个数据表的分区进行筛选,获得分区清单,基于分区清单生成清理脚本,并执行清理脚本完成数据清理,提高了数据清理的效率。
在上述各实施例的基础上,进一步地,所述表清单拆分规则包括:
基于所述待清理数据表清单对应的数据表的总数量和预设子清单数量对所述待清理数据表清单按照所述预设子清单数量进行均匀拆分;或者
基于所述待清理数据表清单对应的数据表的总数量和各个数据表的大小对所述待清理数据表清单进行综合拆分,使每个子清单对应的数据表的数量小于第一阈值且每个子清单对应的数据表的总大小小于第二阈值。
具体地,所述清理服务器可以根据所述待清理数据表清单包括的数据表名称的数量,获得所述待清理数据表清单对应的数据表的总数量Q,预设子清单数量为m,那么计算k=Q/m,如果k值为整数,那么每个子清单对应k个数据表;如果k值为小数,那么可以对k进行向上取整获得p,如果每个子清单对应p个数据表,那么会缺少mp-Q个数据表,可以让mp-Q个子清单对应p-1个数据表,其余m-(mp-Q)个子清单对应p个数据表。也可以对k进行向下取整获得s,如果每个子清单对应s个数据表,那么会多出Q-ms个数据表,可以让Q-ms个子清单对应s+1个数据表,其余m-(ms-Q)个子清单对应s个数据表。上述过程实现了对所述待清理数据表清单的均匀拆分。
所述清理服务器可以根据所述待清理数据表清单包括的数据表名称的数量,获得所述待清理数据表清单对应的数据表的总数量Q,还可以通过所述待清理数据表清单获得每个数据表的大小。所述清理服务器对所述待清理数据表清单对应的各个数据表,按照数据表的大小由大到小进行排序,获得排序结果。所述清理服务器根据所述排序结果和预设子清单数量为m依次分配每个子清单对应的数据表。第一个子清单对应排序结果中序号为1、2m、2m+1、4m、4m+1、6m+1、8m……的数据表,第二个子清单对应排序结果中序号为2、2m-1、2m+2、4m-1、6m+2、8m-1……的数据表,第三个子清单对应排序结果中序号为3、2m-2、2m+3、4m-2、6m+3、8m-2……的数据表,第四个子清单对应排序结果中序号为4、2m-3、2m+4、4m-3、6m+4、8m-1……的数据表,以此类推,第m个子清单对应排序结果中序号为m、m+1、3m、3m+1、7m、7m+1……的数据表。
所述清理服务器可以根据所述待清理数据表清单对应的数据表的总数量Q和预设子清单数量为m,计算k=Q/m,如果k为整数,那么每个子清单对应k个数据表,k小于第一阈值,并且各个子清单对应的数据表的大小之和小于第二阈值。
如果k值为小数,那么可以对k进行向上取整获得p,如果每个子清单对应p个数据表,那么会缺少mp-Q个数据表,最终有mp-Q个子清单对应p-1个数据表,其余m-(mp-Q)个子清单对应p个数据表,p小于第一阈值,并且各个子清单对应的数据表的大小之和小于第二阈值。
如果k值为小数,也可以对k进行向下取整获得s,如果每个子清单对应s个数据表,那么会多出Q-ms个数据表,最终有Q-ms个子清单对应s+1个数据表,其余m-(ms-Q)个子清单对应s个数据表,s小于第一阈值,并且各个子清单对应的数据表的大小之和小于第二阈值。
例如,假设待清理数据表清单对应9张数据表:数据表A、数据表B、数据表C、数据表D、数据表E、数据表F、数据表G、数据表H和数据表I。上述9张数据表按照数量的大小,排序如表1所示。
表1
排序序号 | 数据表 |
1 | 数据表A |
2 | 数据表B |
3 | 数据表C |
4 | 数据表D |
5 | 数据表E |
6 | 数据表F |
7 | 数据表G |
8 | 数据表H |
9 | 数据表I |
预设子清单数量为3,将三个子清单分别命名为n1、n2、n3,为了尽可能的保证每个子清单的数据量大小一致,清理服务器根据表1中的排序结果和预设子清单数量3依次分配每个子清单对应的数据表过程如下:第一轮分配,将序号1对应的数据表A分配子清单n1中,序号2对应的数据表B分配到子清单n2中,序号3对应的数据表C分配到子清单n3中;第二轮分配,将序号6对应的数据表F分配到子清单n1中,序号5对应的数据表E分配到子清单n2中,序号4对应的数据表D分配到子清单n3中;第三轮分配,将序号7对应的数据表G分配到子清单n1中,序号8对应的数据表H分配到子清单n2中,序号9对应的数据表I分配到子清单n3中。
对上述待清理数据表清单拆分完成之后,最终的拆分结果为:子清单n1包括数据表A、数据数据表F和数据表G;子清单n2包括数据表B、数据数据表E和数据表H;子清单n3包括数据表C、数据数据表D和数据表I。
在上述各实施例的基础上,进一步地,所述遍历各个子清单,基于数据清理规则对每个数据表的分区进行筛选包括:
并发遍历各个子清单,基于数据清理规则对每个数据表的分区进行筛选。
具体地,为了提高对各个子清单的筛选效率,可以并发遍历各个子清单,基于数据清理规则对每个数据表的分区进行筛选,获得每个子清单对应的每个数据表需要进行数据清理的分区。
例如,子清单有20个,可以启动5个线程并发遍历各个子清单,每个线程处理4个子清单。
在上述各实施例的基础上,进一步地,所述数据清理规则包括:
对预设分区段内的数据进行清理。
具体地,所述数据清理规则包括对预设分区段内的数据进行清理,所述分区段可以通过分区标识表示。其中,所述预设分区段根据实际需要进行设置,本发明实施例不做限定。
例如,分区可以采用时间进行标识,比如某个分区为2020-01-01。所述预设分区段为2020-01-01至2020-06-30,即清理数据表中分区标识2020-01-01至分区标识2020-06-30对应的数据。
图2是本发明另一实施例提供的数据表的数据清理方法的流程示意图,如图2所示,在上述各实施例的基础上,进一步地,所述基于所述分区清单生成清理脚本包括:
S201、根据数据保留条件更新所述分区清单;其中,所述保留条件是预设的;
具体地,所述保留条件是预设的,设定了哪些数据表不能删除数据或者哪些表的哪些分区不能删除数据。所述清理服务器可以根据数据保留条件从所述分区清单中剔除不能删除数据的数据表或者不能删除数据的数据表的分区,对所述分区清单进行更新,获得更新后的分区清单。
例如,数据保留条件包括需要保留的数据表的清单,即保留表清单。所述清理服务器从保留表清单中读取数据表名称,从分区清单中剔除对应的数据表。
例如,数据保留条件包括需要保留的数据表的分区的清单,即保留分区清单。所述清理服务器从保留分区清单中读取数据表名称和对应的分区标识,从分区清单中根据表数据表名称和对应的分区标识,剔除对应的数据表的对应分区。
S202、根据更新后的分区清单生成清理脚本。
具体地,所述清理服务器在获得更新后的分区清单之后,针对更新后的区清单中包括的数据表以及数据表的分区,生成对应的清理语句,生成的各条清理语句构成清理脚本。
例如,分区清单包括数据表名称ecs.dcm_ecs_tb2020_s和对应的分区标识2020-01-01,那么生成的清理语句为:alter table ecs.dcm_ecs_tb2020_s drop partition(pt_dt=’2020-01-01’),表示从数据表ecs.dcm_ecs_tb2020_s中删除分区标识2020-01-01对应的数据。
在上述各实施例的基础上,进一步地,所述基于所述分区清单生成清理脚本包括:
根据所述分区清单生成多个清理子脚本,每个子脚本包括不超过预设数量条清理语句。
具体地,所述清理服务器可以根据所述分区清单生成多个清理子脚本,每个清理子脚本包括不超过预设数量条清理语句。其中,所述预设数量根据实际需要进行设置,本发明实施例不做限定。
例如,所述预设数量为20000,所述清理服务器在根据所述分区清单生成清理语句的过程中,每生成20000条清理语句,将生成的20000条清理语句组成一个清理子脚本,直到所述分区清单不能再生成清理语句。
在上述各实施例的基础上,进一步地,所述执行所述清理脚本完成数据清理包括:
并发执行各个清理子脚本完成数据清理。
具体地,为了提高清理脚本的执行效率,所述清理服务器可以并发执行各个清理子脚本完成数据清理。并发执行各个清理子脚本,能够提高数据清理的效率。
例如,有50个清理子脚本,由10个线程并行执行,每个线程执行5个清理子脚本。
图3是本发明又一实施例提供的数据表的数据清理方法的流程示意图,如图3所示,本发明实施例提供的数据表的数据清理方法的具体实现流程如下:
第一步、建立待清理数据表清单。清理服务器Hadoop集群获取所有的数据表的表名称和数据表的大小建立待清理数据表清单。
第二步、拆分待清理数据表清单。清理服务器基于所述待清理数据表清单对应的数据表的总数量和各个数据表的大小对所述待清理数据表清单进行综合拆分使每个子清单对应的数据表的数量小于第一阈值且每个子清单对应的数据表的总大小小于第二阈值,获得N个子清单。
第三步、并发遍历各个子清单。清理服务器并发遍历N个子清单,基于数据清理规则对每个子清单的数据表的分区进行筛选,获得每个子清单需要进行数据清理的分区,获得每个子清单的清理分区清单。清理分区清单包括数据表需要清理的分区。
第四步、合并获得分区清单。清理服务器将各个子清单的清理分区清单进行合并,获得分区清单。
第五步、筛除保留数据。清理服务器根据数据保留条件更新所述分区清单,获得更新后的分区清单。
第六步、生成多个清理子脚本。清理服务器根据分区清单生成多个清理子脚本。
第七步、并发执行多个清理子脚本。清理服务器并发执行各个清理子脚本,完成数据清理。
本发明实施例提供的数据表的数据清理方法,可以通过设置清理分区的范围和保留的表和分区,并发遍历子清单和并发地执行清理子脚本,提高数据表的数据清理效率并降低了数据的清理成本。
图4是本发明一实施例提供的数据表的数据清理装置的结构示意图,如图4所示,本发明实施例提供的数据表的数据清理装置包括建立模块401、拆分模块402、遍历模块403和清理模块404,其中:
建立模块401用于建立待清理数据表清单;拆分模块402用于根据表清单拆分规则,将所述待清理数据表清单拆分为多个子清单;其中,所述表清单拆分规则是预设的;遍历模块403用于遍历各个子清单,基于数据清理规则对每个数据表的分区进行筛选,获得分区清单;其中,所述数据清理规则是预设的;清理模块404用于基于所述分区清单生成清理脚本,并执行所述清理脚本完成数据清理。
具体地,建立模块401可以访问数据库或者Hadoop集群,获取所有的数据表的相关信息建立待清理数据表清单。其中,所述待清理数据表清单可以包括数据表名称、数据表大小、数据表的分区等信息,根据实际需要进行设置,本发明实施例不做限定。
由于数据量很大,为了方便后续筛选需要清理的数据,拆分模块402可以根据表清单拆分规则,将所述待清理数据表清单拆分为多个子清单。
在拆分出多个子清单之后,遍历模块403遍历各个子清单根据数据清理规则对每个数据表的分区进行筛选,筛选出每个子清单对应的每个数据表需要进行清理的分区,再将各个数据表需要进行清理的分区进行合并,获得分区清单。分区清单中包括需要清理的数据表的分区范围。其中,所述数据清理规则是预设的,设置了哪些分区需要进行数据清理。
在获得分区清单之后,清理模块404可以基于所述分区清单生成清理脚本,然后执行所述清理脚本将需要清理的数据从对应的数据表中删除,以完成数据清理。
本发明实施例提供的数据表的数据清理装置,能够建立待清理数据表清单,根据表清单拆分规则,将待清理数据表清单拆分为多个子清单,遍历各个子清单,基于数据清理规则对每个数据表的分区进行筛选,获得分区清单,基于分区清单生成清理脚本,并执行清理脚本完成数据清理,提高了数据清理的效率。
在上述各实施例的基础上,进一步地,所述表清单拆分规则包括:
基于所述待清理数据表清单对应的数据表的总数量和预设子清单数量对所述待清理数据表清单按照所述预设子清单数量进行均匀拆分;或者
基于所述待清理数据表清单对应的数据表的总数量和各个数据表的大小对所述待清理数据表清单进行综合拆分,使每个子清单对应的数据表的数量小于第一阈值且每个子清单对应的数据表的总大小小于第二阈值。
在上述各实施例的基础上,进一步地,遍历模块403具体用于:
并发遍历各个子清单,基于数据清理规则对每个数据表的分区进行筛选。
在上述各实施例的基础上,进一步地,所述数据清理规则包括:
对预设分区段内的数据进行清理。
图5是本发明另一实施例提供的数据表的数据清理装置的结构示意图,如图5所示,在上述各实施例的基础上,进一步地,清理模块404包括更新单元4041和生成单元4042,其中:
更新单元4041用于根据数据保留条件更新所述分区清单;其中,所述保留条件是预设的;生成单元4042用于根据更新后的分区清单生成清理脚本。
在上述各实施例的基础上,进一步地,清理模块404具体用于:
根据所述分区清单生成多个清理子脚本,每个子脚本包括不超过预设数量条清理语句。
在上述各实施例的基础上,进一步地,清理模块404还用于:
并发执行各个清理子脚本完成数据清理。
本发明实施例提供的装置的实施例具体可以用于执行上述各方法实施例的处理流程,其功能在此不再赘述,可以参照上述方法实施例的详细描述。
需要说明的是,本发明实施例提供的数据表的数据清理方法及装置可用于金融领域,也可用于除金融领域之外的任意技术领域,本发明实施例对数据表的数据清理方法及装置的应用领域不做限定。
图6是本发明一实施例提供的电子设备的实体结构示意图,如图6所示,该电子设备可以包括:处理器(processor)601、通信接口(Communications Interface)602、存储器(memory)603和通信总线604,其中,处理器601,通信接口602,存储器603通过通信总线604完成相互间的通信。处理器601可以调用存储器603中的逻辑指令,以执行如下方法:建立待清理数据表清单;根据表清单拆分规则,将所述待清理数据表清单拆分为多个子清单;其中,所述表清单拆分规则是预设的;遍历各个子清单,基于数据清理规则对每个数据表的分区进行筛选,获得分区清单;其中,所述数据清理规则是预设的;基于所述分区清单生成清理脚本,并执行所述清理脚本完成数据清理。
此外,上述的存储器603中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
本实施例公开一种计算机程序产品,所述计算机程序产品包括存储在非暂态计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,计算机能够执行上述各方法实施例所提供的方法,例如包括:建立待清理数据表清单;根据表清单拆分规则,将所述待清理数据表清单拆分为多个子清单;其中,所述表清单拆分规则是预设的;遍历各个子清单,基于数据清理规则对每个数据表的分区进行筛选,获得分区清单;其中,所述数据清理规则是预设的;基于所述分区清单生成清理脚本,并执行所述清理脚本完成数据清理。
本实施例提供一种计算机可读存储介质,所述计算机可读存储介质存储计算机程序,所述计算机程序使所述计算机执行上述各方法实施例所提供的方法,例如包括:建立待清理数据表清单;根据表清单拆分规则,将所述待清理数据表清单拆分为多个子清单;其中,所述表清单拆分规则是预设的;遍历各个子清单,基于数据清理规则对每个数据表的分区进行筛选,获得分区清单;其中,所述数据清理规则是预设的;基于所述分区清单生成清理脚本,并执行所述清理脚本完成数据清理。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
Claims (10)
1.一种数据表的数据清理方法,其特征在于,包括:
建立待清理数据表清单;
根据表清单拆分规则,将所述待清理数据表清单拆分为多个子清单;其中,所述表清单拆分规则是预设的;
遍历各个子清单,基于数据清理规则对每个数据表的分区进行筛选,获得分区清单;其中,所述数据清理规则是预设的;
基于所述分区清单生成清理脚本,并执行所述清理脚本完成数据清理。
2.根据权利要求1所述的方法,其特征在于,所述表清单拆分规则包括:
基于所述待清理数据表清单对应的数据表的总数量和预设子清单数量对所述待清理数据表清单按照所述预设子清单数量进行均匀拆分;或者
基于所述待清理数据表清单对应的数据表的总数量和各个数据表的大小对所述待清理数据表清单进行综合拆分,使每个子清单对应的数据表的数量小于第一阈值且每个子清单对应的数据表的总大小小于第二阈值。
3.根据权利要求1所述的方法,其特征在于,所述遍历各个子清单,基于数据清理规则对每个数据表的分区进行筛选包括:
并发遍历各个子清单,基于数据清理规则对每个数据表的分区进行筛选。
4.根据权利要求1所述的方法,其特征在于,所述数据清理规则包括:
对预设分区段内的数据进行清理。
5.根据权利要求1所述的方法,其特征在于,所述基于所述分区清单生成清理脚本包括:
根据数据保留条件更新所述分区清单;其中,所述保留条件是预设的;
根据更新后的分区清单生成清理脚本。
6.根据权利要求1至5任一项所述的方法,其特征在于,所述基于所述分区清单生成清理脚本包括:
根据所述分区清单生成多个清理子脚本,每个子脚本包括不超过预设数量条清理语句。
7.根据权利要求6所述的方法,其特征在于,所述执行所述清理脚本完成数据清理包括:
并发执行各个清理子脚本完成数据清理。
8.一种数据表的数据清理装置,其特征在于,包括:
建立模块,用于建立待清理数据表清单;
拆分模块,用于根据表清单拆分规则,将所述待清理数据表清单拆分为多个子清单;其中,所述表清单拆分规则是预设的;
遍历模块,用于遍历各个子清单,基于数据清理规则对每个数据表的分区进行筛选,获得分区清单;其中,所述数据清理规则是预设的;
清理模块,用于基于所述分区清单生成清理脚本,并执行所述清理脚本完成数据清理。
9.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至7任一项所述方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至7任一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110416841.0A CN113111055A (zh) | 2021-04-19 | 2021-04-19 | 一种数据表的数据清理方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110416841.0A CN113111055A (zh) | 2021-04-19 | 2021-04-19 | 一种数据表的数据清理方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113111055A true CN113111055A (zh) | 2021-07-13 |
Family
ID=76718251
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110416841.0A Pending CN113111055A (zh) | 2021-04-19 | 2021-04-19 | 一种数据表的数据清理方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113111055A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113485999A (zh) * | 2021-08-04 | 2021-10-08 | 中国工商银行股份有限公司 | 数据清理方法、装置和服务器 |
CN116795831A (zh) * | 2022-12-26 | 2023-09-22 | 慧之安信息技术股份有限公司 | 一种时序数据条目的数量维护方法及系统 |
CN117112550A (zh) * | 2023-10-24 | 2023-11-24 | 广东中思拓大数据研究院有限公司 | 数据清洗方法、数据清洗装置、计算机设备和存储介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106570005A (zh) * | 2015-10-08 | 2017-04-19 | 阿里巴巴集团控股有限公司 | 清理数据库的方法和装置 |
CN108829782A (zh) * | 2018-05-31 | 2018-11-16 | 平安科技(深圳)有限公司 | 数据表清理方法、服务器及计算机可读存储介质 |
CN109885565A (zh) * | 2019-02-14 | 2019-06-14 | 中国银行股份有限公司 | 一种数据表清理方法和装置 |
CN110222039A (zh) * | 2019-05-07 | 2019-09-10 | 平安科技(深圳)有限公司 | 数据存储及垃圾数据清理方法、装置、设备及存储介质 |
CN110705884A (zh) * | 2019-10-08 | 2020-01-17 | 中国建设银行股份有限公司 | 清单处理方法、装置、设备及存储介质 |
CN111400012A (zh) * | 2020-03-20 | 2020-07-10 | 中国建设银行股份有限公司 | 数据并行处理方法、装置、设备及存储介质 |
-
2021
- 2021-04-19 CN CN202110416841.0A patent/CN113111055A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106570005A (zh) * | 2015-10-08 | 2017-04-19 | 阿里巴巴集团控股有限公司 | 清理数据库的方法和装置 |
CN108829782A (zh) * | 2018-05-31 | 2018-11-16 | 平安科技(深圳)有限公司 | 数据表清理方法、服务器及计算机可读存储介质 |
CN109885565A (zh) * | 2019-02-14 | 2019-06-14 | 中国银行股份有限公司 | 一种数据表清理方法和装置 |
CN110222039A (zh) * | 2019-05-07 | 2019-09-10 | 平安科技(深圳)有限公司 | 数据存储及垃圾数据清理方法、装置、设备及存储介质 |
CN110705884A (zh) * | 2019-10-08 | 2020-01-17 | 中国建设银行股份有限公司 | 清单处理方法、装置、设备及存储介质 |
CN111400012A (zh) * | 2020-03-20 | 2020-07-10 | 中国建设银行股份有限公司 | 数据并行处理方法、装置、设备及存储介质 |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113485999A (zh) * | 2021-08-04 | 2021-10-08 | 中国工商银行股份有限公司 | 数据清理方法、装置和服务器 |
CN116795831A (zh) * | 2022-12-26 | 2023-09-22 | 慧之安信息技术股份有限公司 | 一种时序数据条目的数量维护方法及系统 |
CN116795831B (zh) * | 2022-12-26 | 2024-06-28 | 慧之安信息技术股份有限公司 | 一种时序数据条目的数量维护方法及系统 |
CN117112550A (zh) * | 2023-10-24 | 2023-11-24 | 广东中思拓大数据研究院有限公司 | 数据清洗方法、数据清洗装置、计算机设备和存储介质 |
CN117112550B (zh) * | 2023-10-24 | 2024-02-27 | 广东中思拓大数据研究院有限公司 | 数据清洗方法、数据清洗装置、计算机设备和存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113111055A (zh) | 一种数据表的数据清理方法及装置 | |
CN108959292B (zh) | 一种数据上传方法、系统和计算机可读存储介质 | |
CN108595268B (zh) | 一种基于MapReduce的数据分配方法、装置及计算机可读存储介质 | |
CN106339802A (zh) | 任务分配的方法和装置、电子设备 | |
CN108415912B (zh) | 基于MapReduce模型的数据处理方法和设备 | |
CN112561051A (zh) | 一种对深度学习模型进行并行处理的方法及装置 | |
CN112199407B (zh) | 一种数据分组排序方法、装置、设备及存储介质 | |
CN106649385B (zh) | 基于HBase数据库的数据排序方法和装置 | |
CN112150035A (zh) | 数据处理方法和装置 | |
CN109636097B (zh) | 一种产品设计任务的分配方法及装置 | |
CN107104829B (zh) | 一种基于网络拓扑数据的物理设备匹配分配方法及装置 | |
CN114936543A (zh) | 数据项批量落标方法及装置 | |
CN106777262B (zh) | 高通量测序数据质量过滤方法和过滤装置 | |
CN110825528B (zh) | 资源管理方法、装置及设备 | |
CN111858610B (zh) | 数据行号分配方法和装置、存储介质、电子设备 | |
CN114741173A (zh) | Dag任务编排的方法、装置、电子设备和存储介质 | |
CN110442619B (zh) | 搜索结果排序方法、装置、电子设备及存储介质 | |
Mykhailenko et al. | Which metrics for vertex-cut partitioning? | |
CN114077947A (zh) | 配送调度方法、装置、电子设备及存储介质 | |
Cinel et al. | A distributed heuristic algorithm for the rectilinear steiner minimal tree problem | |
CN113114709B (zh) | 自定义url过滤分类的应用方法、装置、服务器及存储设备 | |
CN118260244B (zh) | 一种分布式小文件的治理方法、装置、设备及存储介质 | |
CN117891584B (zh) | 基于dag分组的任务并行度调度方法、介质和设备 | |
CN112380205B (zh) | 一种分布式架构的特征自动生成方法和系统 | |
CN115543344A (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 |