CN113485999A - 数据清理方法、装置和服务器 - Google Patents
数据清理方法、装置和服务器 Download PDFInfo
- Publication number
- CN113485999A CN113485999A CN202110890116.7A CN202110890116A CN113485999A CN 113485999 A CN113485999 A CN 113485999A CN 202110890116 A CN202110890116 A CN 202110890116A CN 113485999 A CN113485999 A CN 113485999A
- Authority
- CN
- China
- Prior art keywords
- target
- data
- cleaning
- backup
- program file
- 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 139
- 238000000034 method Methods 0.000 title claims abstract description 72
- 238000005192 partition Methods 0.000 claims description 48
- 238000012545 processing Methods 0.000 claims description 40
- 238000012795 verification Methods 0.000 claims description 17
- 230000002159 abnormal effect Effects 0.000 claims description 14
- 238000005201 scrubbing Methods 0.000 claims 1
- 238000004891 communication Methods 0.000 description 18
- 230000008569 process Effects 0.000 description 13
- 230000006870 function Effects 0.000 description 12
- 238000010586 diagram Methods 0.000 description 9
- 238000004590 computer program Methods 0.000 description 4
- 238000004458 analytical method Methods 0.000 description 3
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 230000003993 interaction Effects 0.000 description 3
- 230000001960 triggered effect Effects 0.000 description 3
- 230000003442 weekly effect Effects 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 2
- 238000012217 deletion Methods 0.000 description 2
- 230000037430 deletion Effects 0.000 description 2
- 230000014759 maintenance of location Effects 0.000 description 2
- 230000008520 organization Effects 0.000 description 2
- 238000005070 sampling Methods 0.000 description 2
- 108010001267 Protein Subunits Proteins 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000007405 data analysis Methods 0.000 description 1
- 238000013075 data extraction Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 238000011068 loading method Methods 0.000 description 1
- 230000005055 memory storage Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
- 238000012216 screening Methods 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
- 230000002194 synthesizing effect Effects 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/28—Databases characterised by their database models, e.g. relational or object models
- G06F16/283—Multi-dimensional databases or data warehouses, e.g. MOLAP or ROLAP
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Quality & Reliability (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本说明书提供了数据清理方法、装置和服务器。基于该方法,可以先获取用户基于预设的设置规则自定义的目标配置参数;根据目标配置参数,通过与目标数据库的连接,获取相应的元数据信息;根据预设的生成规则、目标配置参数和元数据信息,生成目标备份程序文件和目标清理程序文件;再根据预设的均衡拆分规则,先调用多个线程并行执行所述目标备份程序文件,以对所述目标数据进行磁带备份;进而根据预设的均衡拆分规则,调用多个线程并行执行所述目标清理程序文件,以删除清理目标数据库中的目标数据。通过引入并综合利用用户自定义目标配置参数和动态采集的元数据信息,能灵活、高效地实现针对Hive数据仓库中数据的自动备份和清理。
Description
技术领域
本说明书属于大数据处理技术领域,尤其涉及数据清理方法、装置和服务器。
背景技术
在大数据处理技术领域,为了能应对处理大规模的海量业务数据,通常会采用基于分布式系统的Hive数据仓库来代替传统的数据仓库,以对所接入的业务数据进行存储和管理。
其中,上述Hive数据仓库的底层大多是基于Hadoop分布式文件系统。而受限于Hadoop分布式文件系统的系统特性,基于现有的数据清理方法,往往无法灵活、高效地对数据仓库中数据自动进行较为精细的清理,导致用户往往需要耗费大量处理时间和处理资源来清理、维护数据仓库中存储的数据。
针对上述问题,目前尚未提出有效的解决方案。
发明内容
本说明书提供了一种数据清理方法、装置和服务器,能充分兼顾并利用Hive数据仓库的系统特性,灵活、高效地实现针对Hive数据仓库中数据的自动备份和清理。
本说明书实施例提供了一种数据清理方法,包括:
获取目标配置参数;其中,所述目标配置参数至少包含有与待清理的目标数据关联的目标数据库名、目标数据表名和目标字段;目标数据库包括基于Hadoop的Hive数据仓库;所述目标配置参数为基于预设的设置规则自定义的配置参数;
根据所述目标配置参数,通过与目标数据库的连接,获取相应的元数据信息;
根据预设的生成规则、所述目标配置参数和所述元数据信息,生成目标备份程序文件和目标清理程序文件;
根据预设的均衡拆分规则,调用多个线程并行执行所述目标备份程序文件,以对所述目标数据进行磁带备份;
根据预设的均衡拆分规则,调用多个线程并行执行所述目标清理程序文件,以删除所述目标数据库中的目标数据。
在一些实施例中,所述目标配置参数还包含有与目标数据相关的目标系统名、归档周期类型、频率类型、偏移量参数。
在一些实施例中,在获取目标配置参数之后,所述方法还包括:根据预设的校验规则,对目标配置参数进行预设的校验处理。
在一些实施例中,根据预设的生成规则、所述目标配置参数和所述元数据信息,生成目标备份程序文件和目标清理程序文件,包括:
获取并根据归档周期类型,确定所述目标数据是否属于分区数据;
在确定所述目标数据属于分区数据的情况下,根据元数据信息生成针对目标数据的备份语句和清理语句;
根据所述备份语句,生成目标备份程序文件;根据所述清理语句,生成目标清理程序文件。
在一些实施例中,在获取并根据归档周期类型,确定所述目标数据是否属于分区数据之前,所述方法还包括:
根据目标配置参数,检测当前的执行时间是否与频率类型、偏移量参数匹配;
在确定当前的执行时间与频率类型、偏移量参数匹配的情况下,根据目标配置参数和元数据信息,核对目标数据库、目标数据表,以及目标字段。
在一些实施例中,根据预设的均衡拆分规则,调用多个线程并行执行所述目标备份程序文件,包括:
根据元数据信息,确定各个分区的数据大小;
根据所述各个分区的数据大小,将目标备份程序文件所包含的备份语句拆分成多个备份任务;
将所述多个备份任务分配给多个线程;并调用多个线程并行执行所分配到的备份任务。
在一些实施例中,根据预设的均衡拆分规则,调用多个线程并行执行所述目标清理程序文件,包括:
根据元数据信息,确定各个分区的数据大小;
根据所述各个分区的数据大小,将目标清理程序文件所包含的清理语句拆分成多个清理任务;
将所述多个清理任务分配给多个线程;并调用多个线程并行执行所分配到的清理任务。
在一些实施例中,在将所述多个清理任务分配给多个线程;并调用多个线程并行执行所分配到的清理任务之后,所述方法还包括:
获取多个线程中的各个线程在执行所分配的清理任务时的清理执行日志;
根据所述清理执行日志,检测是否存在清理任务异常;
在检测到清理任务异常的情况下,生成异常提示信息。
本说明书实施例还提供了一种数据清理装置,包括:
第一获取模块,用于获取目标配置参数;其中,所述目标配置参数至少包含有与待清理的目标数据关联的目标数据库名、目标数据表名和目标字段;目标数据库包括基于Hadoop的Hive数据仓库;所述目标配置参数为基于预设的设置规则自定义的配置参数;
第二获取模块,用于根据所述目标配置参数,通过与目标数据库的连接,获取相应的元数据信息;
生成模块,用于根据预设的生成规则、所述目标配置参数和所述元数据信息,生成目标备份程序文件和目标清理程序文件;
第一执行模块,用于根据预设的均衡拆分规则,调用多个线程并行执行所述目标备份程序文件,以对所述目标数据进行磁带备份;
第二执行模块,用于根据预设的均衡拆分规则,调用多个线程并行执行所述目标清理程序文件,以删除所述目标数据库中的目标数据。
本说明书实施例还提供了一种服务器,包括处理器以及用于存储处理器可执行指令的存储器,所述处理器执行所述指令时实现以下步骤:获取目标配置参数;其中,所述目标配置参数至少包含有与待清理的目标数据关联的目标数据库名、目标数据表名和目标字段;目标数据库包括基于Hadoop的Hive数据仓库;所述目标配置参数为基于预设的设置规则自定义的配置参数;根据所述目标配置参数,通过与目标数据库的连接,获取相应的元数据信息;根据预设的生成规则、所述目标配置参数和所述元数据信息,生成目标备份程序文件和目标清理程序文件;根据预设的均衡拆分规则,调用多个线程并行执行所述目标备份程序文件,以对所述目标数据进行磁带备份;根据预设的均衡拆分规则,调用多个线程并行执行所述目标清理程序文件,以删除所述目标数据库中的目标数据。
本说明书实施例还提供了一种计算机可读存储介质,其上存储有计算机指令,所述指令被计算机设备执行时实现:获取目标配置参数;其中,所述目标配置参数至少包含有与待清理的目标数据关联的目标数据库名、目标数据表名和目标字段;目标数据库包括基于Hadoop的Hive数据仓库;所述目标配置参数为基于预设的设置规则自定义的配置参数;根据所述目标配置参数,通过与目标数据库的连接,获取相应的元数据信息;根据预设的生成规则、所述目标配置参数和所述元数据信息,生成目标备份程序文件和目标清理程序文件;根据预设的均衡拆分规则,调用多个线程并行执行所述目标备份程序文件,以对所述目标数据进行磁带备份;根据预设的均衡拆分规则,调用多个线程并行执行所述目标清理程序文件,以删除所述目标数据库中的目标数据。
本说明书提供的一种数据清理方法、装置和服务器,可以先获取用户基于预设的设置规则自定义的目标配置参数;根据目标配置参数,通过与目标数据库的连接,获取相应的动态的元数据信息;并根据预设的生成规则、目标配置参数和元数据信息,生成目标备份程序文件和目标清理程序文件;再根据预设的均衡拆分规则,调用多个线程并行执行所述目标备份程序文件,以对所述目标数据进行磁带备份;然后再根据预设的均衡拆分规则,调用多个线程并行执行所述目标清理程序文件,以删除所述目标数据库中的目标数据。通过引入并综合利用用户自定义目标配置参数和动态的元数据信息,能充分兼顾并利用Hive数据仓库的数据特性,灵活、高效地实现针对Hive数据仓库中数据的自动进行较为精细的备份和清理。
附图说明
为了更清楚地说明本说明书实施例,下面将对实施例中所需要使用的附图作简单地介绍,下面描述中的附图仅仅是本说明书中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本说明书的一个实施例提供的数据清理方法的流程示意图;
图2是本说明书的一个实施例提供的服务器的结构组成示意图;
图3是本说明书的一个实施例提供的数据清理装置的结构组成示意图;
图4是在一个场景示例中,应用本说明书实施例提供的数据清理方法的一种实施例的示意图;
图5是在一个场景示例中,应用本说明书实施例提供的数据清理方法的一种实施例的示意图;
图6是在一个场景示例中,应用本说明书实施例提供的数据清理方法的一种实施例的示意图;
图7是在一个场景示例中,应用本说明书实施例提供的数据清理方法的一种实施例的示意图;
图8是在一个场景示例中,应用本说明书实施例提供的数据清理方法的一种实施例的示意图;
图9是在一个场景示例中,应用本说明书实施例提供的数据清理方法的一种实施例的示意图。
具体实施方式
为了使本技术领域的人员更好地理解本说明书中的技术方案,下面将结合本说明书实施例中的附图,对本说明书实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本说明书一部分实施例,而不是全部的实施例。基于本说明书中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都应当属于本说明书保护的范围。
参阅图1所示,本说明书实施例提供了一种数据清理方法。其中,该方法具体应用于服务器一侧。具体实施时,该方法可以包括以下内容:
S101:获取目标配置参数;其中,所述目标配置参数至少包含有与待清理的目标数据关联的目标数据库名、目标数据表名和目标字段;目标数据库包括基于Hadoop的Hive数据仓库;所述目标配置参数为基于预设的设置规则自定义的配置参数;
S102:根据所述目标配置参数,通过与目标数据库的连接,获取相应的元数据信息;
S103:根据预设的生成规则、所述目标配置参数和所述元数据信息,生成目标备份程序文件和目标清理程序文件;
S104:根据预设的均衡拆分规则,调用多个线程并行执行所述目标备份程序文件,以对所述目标数据进行磁带备份;
S105:根据预设的均衡拆分规则,调用多个线程并行执行所述目标清理程序文件,以删除所述目标数据库中的目标数据。
通过上述实施例,具体实施前,可以支持用户根据具体情况和具体需求,基于预设的设置规则,灵活地自定义设置相应的目标配置参数;具体实施时,可以获取并根据上述用户自定义的目标配置参数,通过与目标数据库的连接,采集与目标数据库相关的动态的元数据信息;并根据预设的生成规则、目标配置参数,结合所采集到的动态的元数据信息,自动生成针对性较强、较为精准的目标备份程序文件和目标清理程序文件;进而可以先根据预设的均衡化拆分规则,通过调用多个线程并行执行所述目标备份程序文件,以高效地完成适配于Hive数据仓库、针对待清理的目标数据的磁带备份;在完成上述目标数据的备份之后,再根据预设的均衡拆分规则,通过调用多个线程并行执行所述目标清理程序文件,以高效地删除清理目标数据库中的目标数据。从而可以通过引入并综合利用用户自定义目标配置参数和元数据信息,充分兼顾并利用Hive数据仓库的数据特性,灵活、高效地实现针对Hive数据仓库中数据的自动备份和清理。
在一些实施例中,上述数据清理方法具体可以应用于平台或机构的数据中心负责管理、维护数据库的服务器一侧。
在本实施例中,所述服务器具体可以包括一种应用于数据处理系统一侧,能够实现数据传输、数据处理等功能的后台服务器。具体的,所述服务器例如可以为一个具有数据运算、存储功能以及网络交互功能的电子设备。或者,所述服务器也可以为运行于该电子设备中,为数据处理、存储和网络交互提供支持的软件程序。在本实施例中,并不具体限定所述服务器的数量。所述服务器具体可以为一个服务器,也可以为几个服务器,或者,由若干服务器形成的服务器集群。
在一些实施例中,上述服务器可以同时对平台或机构的多个不同系统下的多个数据库进行管理和维护。上述多个数据库每时每刻都会接入海量的业务数据进行存储和管理。服务器需要根据不同系统下的不同数据库的数据特性,对不同数据库进行区分,对不同数据库中待清理的数据进行针对性的清理。
在一些实施例中,上述目标数据具体可以理解为数据库中当前待清理的业务数据。上述目标数据具体可以包括一个或多个待清理的业务数据。
在一些实施例中,上述目标数据库具体可以理解为上述目标数据所存储的数据库,具体的,上述目标数据库可以包括基于Hadoop的Hive数据仓库。其中,上述Hadoop具体可以理解为一种分布式文件系统。上述Hive数据仓库具体可以理解为一种建立在Hadoop的基础上支持进行大规模的数据提取、转化、加载等操作的数据仓库框架。但是,上述Hive数据仓库受限于本身性能的缺陷,只支持数据仓库中文件级的更新和删除,不支持记录级别的数据删除。导致在对Hive数据仓库进行数据清理时,往往比较繁琐、效率较低,且容易出现数据清理不够灵活、合理等问题,无法高效且灵活地实现对Hive数据仓库中的数据的自动归档和清理,进而影响Hive数据仓库,以及Hadoop分布式文件系统整体的性能和资源利用率。
在一些实施例中,上述目标配置参数具体可以理解为由用户根据具体情况和处理需求,自定义设置的针对目标数据库中的待清理的目标数据的配置参数的集合。
在一些实施例中,具体实施前,用户可以根据具体情况和处理需求,结合不同系统下的不同数据库的数据特性,对不同数据库中的不同数据进行区分,基于预设的设置规则,在终端设备所提供的配置界面中自定义设置满足自己个性化需求的针对目标数据库中的待清理的目标数据的配置参数。相应的,终端设备可以通过上述配置界面采集用户设置的配置参数,作为目标配置参数;并通过有线或无线的方式,将上述目标配置参数发送给服务器。服务器接收并获取上述目标配置参数。
在本实施例中,所述终端设备具体可以包括一种应用于用户一侧,能够实现数据采集、数据传输等功能的前端设备。具体的,所述终端设备例如可以为台式电脑、平板电脑、笔记本电脑、智能手机等电子设备。或者,所述终端设备也可以为能够运行于上述电子设备中的软件应用。例如,可以是在台式电脑上运行的某应用程序等。
在一些实施例中,上述目标配置参数至少包含有与待清理的目标数据关联的目标数据库名、目标数据表名和目标字段。
其中,所述目标字段具体可以理解为用于指示待清理的目标数据的字段。上述目标数据表具体可以理解为目标数据所在的数据表。上述目标数据库具体可以理解为目标数据表所存储的数据库。
通过综合利用上述目标数据库名、目标数据表名和目标字段,可以较为精准在目标数据库中确定出上述目标数据。
在一些实施例中,针对更为复杂的数据处理场景,上述目标配置参数进一步还可以包含有与目标数据相关的目标系统名、归档周期类型、频率类型、偏移量参数等。
其中,上述目标系统具体可以理解为目标数据库所属的系统。
上述频率类型具体可以理解为针对目标数据的清理频率。例如,每月清理、每季度清理或者每天清理等。
上述偏移量参数具体可以理解为一种清理步长。其中,上述偏移量参数与频率类型可以是存在关联性的,即,用户所设置的频率类型会影响到偏移量参数的取值范围。
具体的,例如,当用户设置的频率类型为每周时,则用户在设置偏移量参数时,所设置的偏移量参数的天数的取值范围要求大于等于0,且小于等于7。
上述归档周期类型具体可以理解为用于指示在清理目标数据时,要求另外保留的数据的归档周期类型。具体的,上述归档周期类型可以包括:EOM(end of month,每月月末)、EOY(end of year,每年年末)、D(day,每天)等。
具体实施时,根据预设的设置规则,用户还可以设置更加精细具体的归档周期类型。具体的,可以按照以下格式:’_|_’,在分隔符号(“|”)的左侧填写归档周期类型,在分隔符号的右侧填写具体的保留时间,来设置更为具体的归档周期类型,以满足用户更加多样、灵活的数据清理需求。
具体的,例如,用户希望每月的月末自动清理本月所接入存储的业务数据,但又考虑到银行的业务数据处理特点:每月月末的数据往往具有较高的参考价值,且每个月进行汇总分析时需要调用到最近10个月的月末的数据来进行数据分析。
因此,该用户可以将频率类型设置为:与每月对应的数值4;将偏移量参数设置为:31。进一步,还将归档周期类型设置为:“EOM|10”,以指示每月月末清理当月数据,同时保留最近10个月的月末数据。
当然,需要说明的是,上述所列举的目标配置参数只是一种示意性说明,具体实施时,根据具体的应用场景和用户的处理需求,上述目标配置参数还可以包含更多类型的参数数据。对此,本说明书不作限定。
通过上述实施例,可以支持用户使用更加丰富、多样的目标配置参数,以能更好地适配于较为复杂的数据处理场景,进一步满足用户较为灵活、多样的数据清理需求。
在一些实施例中,针对更加复杂的数据处理场景,目标配置参数中的归档周期类型具体还可以包括多个不同的归档周期类型的组合;其中,同一组合中的不同的规定周期类型的组合可以使用预设的分隔标识(“,”)分开。例如,目标配置参数中的归档周期类型可以表示为:<M|3>,<EOM|13>,<EOY|2>。
在一些实施例中,在获取目标配置参数之后,所述方法具体实施时,还可以包括:根据预设的校验规则,对目标配置参数进行预设的校验处理。
通过上述实施例,在获取目标配置参数后,可以先对所获取的目标配置参数进行预设的校验处理,以确定目标配置参数中所包含的参数是否符合定义要求、是否可以使用;在确定目标配置参数校验通过的情况下,才会触发进行后续的数据处理;相反,在确定目标配置参数校验未通过的情况下,不会触发后续的数据处理,而会生成关于目标配置参数的检查提示,以便用户可以响应该检查提示进行检查和修改,并提供符合定义要求、可以使用的目标配置参数后,才会正常触发进行后续的数据处理,以保障后续的数据处理的准确和可靠。
在一些实施例中,对目标配置参数进行预设的校验处理,具体实施时,可以包括:根据预设的校验规则,检测归档周期类型是否符合定义要求。例如,检测判断归档周期类型的数值是否合法、规范;和/或,检测判断归档类周期类型是否是按照规定格式输入设置的。
对目标配置参数进行预设的校验处理,具体实施时,还可以包括:对频率类型和偏移量参数进行联合检测,以确定频率类型和偏移量参数是否匹配。具体的,可以先根据频率类型,确定对应的偏移量参数的取值范围;再检测判断偏移量参数是否属于该取值范围。
具体的,例如,频率类型为每周,可以确定对应的偏移量参数的取值范围为大于等于0且小于等于7。进而可以检测目标配置参数中的偏移量参数是否属于该取值范围。如果偏移量参数为8,不属于该取值范围,则确定校验未通过。相反,如果偏移量参数为2,属于该取值范围,则确定校验通过。
当然,需要说明的是,上述所列举的针对目标配置参数的校验处理只是一种示意性说明。具体实施时,针对具体情况,还可以根据预设的校验规则,对目标配置参数中的其他类型的参数进行其他形式的预设的校验处理。
在一些实施例中,上述元数据信息具体可以理解为与目标数据相关的动态数据信息。具体的,上述元数据信息可以包括以下至少之一:数据库名、数据表名、数据表后台存储路径、分区字段名、分区字段类型、分区字段、数据的物理存储地址、元数据统计学信息表大小、分区大小、字段内容抽样等等。
在一些实施例中,服务器预先可以与多个系统下的多个数据库的后台建立连接。具体实施时,服务器可以根据目标配置参数,确定目标系统下的目标数据库,进而可以利用与该目标数据库的连接采集获取动态的元数据信息。
在一些实施例中,在获取相应的元数据信息之后,所述方法具体实施时,还可以包括:检测并将元数据信息中的部分临时表、视图、分区异常、空表等问题数据进行剔除和标准化处理,得到处理后的元数据信息;再将处理后的元数据信息存储于内存中。
通过上述实施例,可以对元数据信息进行预处理,得到剔除了问题数据、准确度较高的,标准化后的元数据信息;还可以将上述元数据信息存储于内存中,使得后续数据处理时能较为高效、便捷地读取和使用该元数据信息。
在一些实施例中,上述根据预设的生成规则、所述目标配置参数和所述元数据信息,生成目标备份程序文件和目标清理程序文件,具体实施时,可以包括以下内容:
S1:获取并根据归档周期类型,确定所述目标数据是否属于分区数据;
S2:在确定所述目标数据属于分区数据的情况下,根据元数据信息生成针对目标数据的备份语句和清理语句;
S3:根据所述备份语句,生成目标备份程序文件;根据所述清理语句,生成目标清理程序文件。
通过上述实施例,可以有针对性地识别并考虑到待清理的目标数据中的分区数据;进而可以根据动态的元数据信息,较为精准、高效地生成得到满足用户需求的目标备份程序文件和目标清理程序文件。
在一些实施例中,在获取并根据归档周期类型,确定所述目标数据是否属于分区数据之前,所述方法具体实施时,还可以包括以下内容:
S1:根据目标配置参数,检测当前的执行时间是否与频率类型、偏移量参数匹配;
S2:在确定当前的执行时间与频率类型、偏移量参数匹配的情况下,根据目标配置参数和元数据信息,核对目标数据库、目标数据表,以及目标字段。
通过上述实施例,在具体生成目标备份程序文件和目标清理程序文件之前,可以先根据当前的执行时间、元数据信息和目标配置参数进行数据核对;在核对通过的情况下,才能确定在当前的执行时间需要对目标数据库中的目标数据进行备份和清理,进而才会触发生成相应的目标备份程序文件和目标清理程序文件。
在一些实施例中,具体根据目标配置参数,检测当前的执行时间是否与频率类型、偏移量参数匹配时,例如,当前的执行时间(批量执行日期)为:2021-02-28,结合目标配置参数,可以确定该时间是符合频率类型为每月,偏移量参数为999(对应月末)的配置的。因此,确定当前的执行时间与频率类型、偏移量参数是匹配的。
在一些实施例中,具体生成备份语句时,可以根据元数据信息,获取并利用数据表后台存储路径、数据的物理存储地址,拷贝到本地的语句模板中,以生成针对目标数据的备份语句。
在一些实施例中,具体生成清理语句时,可以按照以下规则来生成针对目标数据的清理语句:alter table"+key+"drop partition("+partition_dt+"="+item+")。其中,key指示目标数据所在的目标数据表,partition_dt指示目标数据基于分区的目标字段,item指示目标数据的清理时间。
在一些实施例中,在根据所述备份语句,生成目标备份程序文件;根据所述清理语句,生成目标清理程序文件之前,所述方法具体实施时,还可以包括以下内容:对所述备份语句进行合并处理,以去除存在重复的备份语句;对所述清理语句进行合并处理,以去除存在重复的清理语句。
在一些实施例中,上述根据预设的均衡拆分规则,调用多个线程并行执行所述目标备份程序文件,具体实施时,可以包括以下内容:
S1:根据元数据信息,确定各个分区的数据大小;
S2:根据所述各个分区的数据大小,将目标备份程序文件所包含的备份语句拆分成多个备份任务;
S3:将所述多个备份任务分配给多个线程;并调用多个线程并行执行所分配到的备份任务。
通过上述实施例,可以根据预设的均衡拆分规则,先结合所确定出的各个分区的数据大小,合理地将较大的目标备份程序文件拆分成多个细化的备份任务;进而可以基于均衡化的策略,充分且有效地利用有限的处理资源,调用多个线程以并行的方式来处理上述多个备份任务,从而可以高效地实现对目标数据库中待清理的目标数据的备份归档。
在一些实施例中,具体实施时,可以基于均衡化策略,根据预设的均衡拆分规则,将目标备份程序文件先拆成多个备份任务;其中,不同备份任务所对应的分区的数据大小的差异值小于等于预设的差异阈值;再根据线程池中线程的空闲情况,以及当前可用的处理资源,将多个备份任务合理地分配给多个线程。通过启动总控,来并发控制上述多个线程并行执行所分配到的备份任务;还可以通过总控,控制各个线程在执行所分配到的备份任务的同时,定时向总控汇报所分配到的备份任务的执行进度,以便总控可以及时地跟踪、监测各个线程的备份任务的执行情况。在监测到某个线程超过预设时长未汇报执行进度的情况下,可以将该线程标记为异常,并将分配给该线程的备份任务重新分配给其他线程进行处理。
在一些实施例中,在将所述多个备份任务分配给多个线程;并调用多个线程并行执行所分配到的备份任务之后,所述方法,具体实施时,还可以包括以下内容:获取多个线程中的各个线程在执行所分配的备份任务时的备份执行日志;根据所述备份执行日志,检测是否以完成目标数据的备份;在确定完成目标数据的备份的情况下,触发执行所述目标清理程序文件。
通过上述实施例,服务器可以在确保完成了目标数据备份的情况下,才触发清理目标数据库中的目标数据。这样可以避免后续在完成目标数据库中的目标数据清理后,又需要使用目标数据时,还可以根据备份,获取该目标数据。
在一些实施例中,具体可以以磁带备份的方式来完成目标数据的备份。这是考虑到了Hadoop分布式文件系统的目前不支持直接磁盘备份的特性,在清理目标数据库中的目标数据之前,采用磁带备份的方式,以耗费相对较少的存储资源,对目标数据进行备份归档。
在一些实施例中,上述根据预设的均衡拆分规则,调用多个线程并行执行所述目标清理程序文件,具体实施时,可以包括以下内容:
S1:根据元数据信息,确定各个分区的数据大小;
S2:根据所述各个分区的数据大小,将目标清理程序文件所包含的清理语句拆分成多个清理任务;
S3:将所述多个清理任务分配给多个线程;并调用多个线程并行执行所分配到的清理任务。
通过上述实施例,可以根据预设的均衡拆分规则,先结合所确定出的各个分区的数据大小,合理地将较大的目标清理程序文件拆分成多个细化的清理任务;进而可以基于均衡化的策略,充分且有效地利用有限的处理资源,调用多个线程以并行的方式来处理上述多个清理任务,从而可以高效地实现对目标数据库中目标数据的删除清理。
在一些实施例中,具体实施时,可以基于均衡化策略,根据预设的均衡拆分规则,将目标清理程序文件先拆成多个清理任务;其中,不同清理任务所对应的分区的数据大小的差异值小于等于预设的差异阈值;再根据线程池中线程的空闲情况,以及当前可用的处理资源,将多个清理任务合理地分配给多个线程。通过启动总控,来并发控制上述多个线程并行执行所分配到的清理任务;还可以通过总控,控制各个线程在执行所分配到的清理任务的同时,定时向总控汇报所分配到的清理任务的执行进度,以便总控可以及时地跟踪、监测各个线程的清理任务的执行情况。在监测到某个线程超过预设时长未汇报执行进度的情况下,可以将该线程标记为异常,并将分配给该线程的清理任务重新分配给其他线程进行处理。
在一些实施例中,在将所述多个清理任务分配给多个线程;并调用多个线程并行执行所分配到的清理任务之后,所述方法具体实施时,还可以包括以下内容:
S1:获取多个线程中的各个线程在执行所分配的清理任务时的清理执行日志;
S2:根据所述清理执行日志,检测是否存在清理任务异常;
S3:在检测到清理任务异常的情况下,生成异常提示信息。
通过上述实施例,可以利用清理执行日志对多个线程的清理任务的具体执行情况进行有效监控,以及时地发现清理任务异常,并提生成对应的异常提示信息,以触发对上述异常清理任务及时进行针对性的处理,以保证能够顺利地完成所有的清理任务。
由上可见,基于本说明书实施例提供的数据清理方法,可以先获取用户基于预设的设置规则自定义的目标配置参数;根据目标配置参数,通过与目标数据库的连接,获取相应的元数据信息;根据预设的生成规则、目标配置参数和元数据信息,生成目标备份程序文件和目标清理程序文件;根据预设的均衡拆分规则,调用多个线程并行执行所述目标备份程序文件,以对所述目标数据进行磁带备份;根据预设的均衡拆分规则,调用多个线程并行执行所述目标清理程序文件,以删除所述目标数据库中的目标数据。通过引入并综合利用用户自定义目标配置参数和元数据信息,能充分兼顾并利用Hive数据仓库的数据特性,灵活、高效地实现针对Hive数据仓库中数据的自动备份和清理。
本说明书实施例还提供一种服务器,包括处理器以及用于存储处理器可执行指令的存储器,所述处理器具体实施时可以根据指令执行以下步骤:获取目标配置参数;其中,所述目标配置参数至少包含有与待清理的目标数据关联的目标数据库名、目标数据表名和目标字段;目标数据库包括基于Hadoop的Hive数据仓库;所述目标配置参数为基于预设的设置规则自定义的配置参数;根据所述目标配置参数,通过与目标数据库的连接,获取相应的元数据信息;根据预设的生成规则、所述目标配置参数和所述元数据信息,生成目标备份程序文件和目标清理程序文件;根据预设的均衡拆分规则,调用多个线程并行执行所述目标备份程序文件,以对所述目标数据进行磁带备份;根据预设的均衡拆分规则,调用多个线程并行执行所述目标清理程序文件,以删除所述目标数据库中的目标数据。
为了能够更加准确地完成上述指令,参阅图2所示,本说明书实施例还提供了另一种具体的服务器,其中,所述服务器包括网络通信端口201、处理器202以及存储器203,上述结构通过内部线缆相连,以便各个结构可以进行具体的数据交互。
其中,所述网络通信端口201,具体可以用于获取目标配置参数;其中,所述目标配置参数至少包含有与待清理的目标数据关联的目标数据库名、目标数据表名和目标字段;目标数据库包括基于Hadoop的Hive数据仓库;所述目标配置参数为基于预设的设置规则自定义的配置参数。
所述处理器202,具体可以用于根据所述目标配置参数,通过与目标数据库的连接,获取相应的元数据信息;根据预设的生成规则、所述目标配置参数和所述元数据信息,生成目标备份程序文件和目标清理程序文件;根据预设的均衡拆分规则,调用多个线程并行执行所述目标备份程序文件,以对所述目标数据进行磁带备份;根据预设的均衡拆分规则,调用多个线程并行执行所述目标清理程序文件,以删除所述目标数据库中的目标数据。
所述存储器203,具体可以用于存储相应的指令程序。
在本实施例中,所述网络通信端口201可以是与不同的通信协议进行绑定,从而可以发送或接收不同数据的虚拟端口。例如,所述网络通信端口可以是负责进行web数据通信的端口,也可以是负责进行FTP数据通信的端口,还可以是负责进行邮件数据通信的端口。此外,所述网络通信端口还可以是实体的通信接口或者通信芯片。例如,其可以为无线移动网络通信芯片,如GSM、CDMA等;其还可以为Wifi芯片;其还可以为蓝牙芯片。
在本实施例中,所述处理器202可以按任何适当的方式实现。例如,处理器可以采取例如微处理器或处理器以及存储可由该(微)处理器执行的计算机可读程序代码(例如软件或固件)的计算机可读介质、逻辑门、开关、专用集成电路(Application SpecificIntegrated Circuit,ASIC)、可编程逻辑控制器和嵌入微控制器的形式等等。本说明书并不作限定。
在本实施例中,所述存储器203可以包括多个层次,在数字系统中,只要能保存二进制数据的都可以是存储器;在集成电路中,一个没有实物形式的具有存储功能的电路也叫存储器,如RAM、FIFO等;在系统中,具有实物形式的存储设备也叫存储器,如内存条、TF卡等。
本说明书实施例还提供了一种基于上述数据清理方法的计算机可读存储介质,所述计算机可读存储介质存储有计算机程序指令,在所述计算机程序指令被执行时实现:获取目标配置参数;其中,所述目标配置参数至少包含有与待清理的目标数据关联的目标数据库名、目标数据表名和目标字段;目标数据库包括基于Hadoop的Hive数据仓库;所述目标配置参数为基于预设的设置规则自定义的配置参数;根据所述目标配置参数,通过与目标数据库的连接,获取相应的元数据信息;根据预设的生成规则、所述目标配置参数和所述元数据信息,生成目标备份程序文件和目标清理程序文件;根据预设的均衡拆分规则,调用多个线程并行执行所述目标备份程序文件,以对所述目标数据进行磁带备份;根据预设的均衡拆分规则,调用多个线程并行执行所述目标清理程序文件,以删除所述目标数据库中的目标数据。
在本实施例中,上述存储介质包括但不限于随机存取存储器(Random AccessMemory,RAM)、只读存储器(Read-Only Memory,ROM)、缓存(Cache)、硬盘(Hard DiskDrive,HDD)或者存储卡(Memory Card)。所述存储器可以用于存储计算机程序指令。网络通信单元可以是依照通信协议规定的标准设置的,用于进行网络连接通信的接口。
在本实施例中,该计算机可读存储介质存储的程序指令具体实现的功能和效果,可以与其它实施方式对照解释,在此不再赘述。
参阅图3所示,在软件层面上,本说明书实施例还提供了一种数据清理装置,该装置具体可以包括以下的结构模块:
第一获取模块301,具体可以用于获取目标配置参数;其中,所述目标配置参数至少包含有与待清理的目标数据关联的目标数据库名、目标数据表名和目标字段;目标数据库包括基于Hadoop的Hive数据仓库;所述目标配置参数为基于预设的设置规则自定义的配置参数;
第二获取模块302,具体可以用于根据所述目标配置参数,通过与目标数据库的连接,获取相应的元数据信息;
生成模块303,具体可以用于根据预设的生成规则、所述目标配置参数和所述元数据信息,生成目标备份程序文件和目标清理程序文件;
第一执行模块304,具体可以用于根据预设的均衡拆分规则,调用多个线程并行执行所述目标备份程序文件,以对所述目标数据进行磁带备份;
第二执行模块305,具体可以用于根据预设的均衡拆分规则,调用多个线程并行执行所述目标清理程序文件,以删除所述目标数据库中的目标数据。
需要说明的是,上述实施例阐明的单元、装置或模块等,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。为了描述的方便,描述以上装置时以功能分为各种模块分别描述。当然,在实施本说明书时可以把各模块的功能在同一个或多个软件和/或硬件中实现,也可以将实现同一功能的模块由多个子模块或子单元的组合实现等。以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
由上可见,基于本说明书实施例提供的数据清理装置,通过引入并综合利用用户自定义目标配置参数和元数据信息,能充分兼顾并利用Hive数据仓库的数据特性,灵活、高效地实现针对Hive数据仓库中数据的自动备份和清理。
在一个具体的场景示例中,可以应用本说明书实施例所提供的数据清理方法实现对银行数据库的基于动态元数据的海量数据灵活自动归档和清理。具体实施过程可以参阅以下内容。
在本场景示例中,可以获取并根据Hive数据仓库实际后台的动态的元数据信息(包括库、表、字段、类型、分区、存储路径基本元数据和存储空间、数据量大小、内容等元数据统计学信息等),结合灵活易扩展的用户定义的清理策略(例如,目标配置参数),能全自动化零编码地生成数据灵活备份和清理的语句;再通过基于元数据信息进行均衡化的自动拆分、分布式的海量数据备份和清理,实现Hive数据仓库全自动的数据归档备份和清理。
在本场景示例中,具体可以参阅图4所示,利用上述系统来实现基于动态元数据海量数据灵活自动备份和清理。
其中,模块1是清理配置单元主要是进行Hive数据仓库所有表按数据生命周期管理要求,对于保存周期、清理判断规则、备份清理执行频度进行灵活配置,并对于配置信息的准确性做检验。模块2是动态元数据采集单元,从Hive后台元数据库和统计学信息中实时灵活采集相关信息并将信息保存在任务内存中。模块3是备份清理程序生成单元,是将模块1中用户配置清理信息,逐行读出并解析,同时匹配模块2中保存在内存中的元数据信息,确认该清理的数据内容范围,灵活自动生成备份和清理语句。模块4主要是数据备份单元,将模块3生成的备份信息按内存中的元数据信息并发进行任务划分,每个任务启动一个进程,进行备份路径的信息统计大小,进行磁盘磁带备份、备份源数据和目标数据的比对,异常处理重备份。模块5是数据清理单元,待模块4执行完毕后,将模块3生成的清理信息按并发进行任务划分,每个任务启动一个进程,进行数据清理。
在本场景示例中,参阅图5所示,模块1_1是用户对于需要清理的Hive数据仓库的清理表的相关信息进行配置(以设置目标配置参数)。其中,主要设置的配置信息可以参阅表1。
表1
在本场景示例中,模块1_2判断清理规则是否合理,可以将模块1_1配置的相关信息与表2中的配置说明的细项进行细化校验(例如,预设的校验处理)。主要包括:检测归档周期类型是否在定义范围内,内容配置和说明一致,对于频率类型和偏移量联合进行校验,如频率类型是周频度的,偏移量就是>=0且必须<7。如果校验通过,进入模块1_4,如果校验不通过,则进入模块1_3。模块1_3是异常配置的处理,按模块1_2检验的结果提示给用户,让用户确认并通过模块1_1重新配置。模块1_4,清理配置集中存储,将模块1_2校验通过的配置信息集中存储在后台数据库中,以便后续使用。
表2
在本场景示例中,参阅图6所示,动态元数据采集流程图,其中,模块2_1是元数据库连接模块,Hive后台的元数据库可能有多个类型,通过不同的连接方式,连接Hive后台的元数据库。模块2_2是元数据信息提取,利用模块2_1,及其模块1_4中指定启动系统名任务对应的库名和表名信息,获取Hive数据仓库中的,标准的元数据信息如:库名、表名、表后台存储路径、分区字段名、分区字段类型,分区字段,存储物理位置的具体值;元数据统计学信息表大小、分区大小、字段内容抽样等:模块2_3是元数据信息处理,从模块2_2提取出来的信息将部分临时表、视图、分区异常、空表等剔除并标准化处理。2_4是元数据实时存入内存,将模块2_3处理完毕后的元数据信息存入到任务内存中。
在本场景示例中,参阅图7所示,其中,模块3_1是解析清理配置信息,从模块1_4中,按启动的任务的系统名进行信息筛选,逐行获取清理配置信息并进行解析,先解析该行配置信息的频率类型和偏移量,计算目前批量执行日期是否符合频率类型和偏移量,如果批量日期是2021-02-28,那符合频率是月,偏移量是999的配置,如果不符合,则跳过后续处理直接回到模块3_1,继续解析清理配置信息的下一行。若符合,进入模块3_2。模块3_2是核对元数据信息,以清理的库名和表名从内存中存储的元数据信息进行搜索,获取对应的元数据的字段信息和分区信息,核对对应元数据库名表名是否存在,核对分区元数据的分区字段名和类型是否和配置一致,核对该表分区下是否有信息,如果核对通过继续,否则记录异常信息后直接跳过回到模块3_1。否则继续解析归档周期类型字段,如果归档周期字段有多条规则,如<M|3>,<EOM|13>,<EOY|2>,进行解析,入股逗号分隔有多个,即启多个线程进行单独处理模块3_3。模块3_3是识别清理信息,解析出来的归档周期类型信息,如<M|3>,去计算目前该表的元数据分析信息存在是否有符合该内容的分区信息,最终确认输出应归档和清理的信息。模块3_4是生成备份和清理的语句,按模块3_3输出信息,结合分区存放的后台物理地址的元数据,形成将实际物理地址数据拷贝到本地的语句,同时生成altertable"+key+"drop partition("+partition_dt+"="+item+");类型的清理语句。模块3_5是合成备份清理语句,模块3_4将多线程生成的备份和清理的语句进行合并,去掉重复数据,按备份语句和清理语句分别输出。然后循环进入模块3_1,逐行按上面情况处理,如果已经全部处理完毕,则进入模块3_6,模块3_6是最终生成备份程序文件和清理程序文件。
在本场景示例中,参阅图8所示,其中,模块4_1归档语句均衡拆分,主要是从3_6中获取自动生成的备份语句,按内存中的元数据信息中每个分区的存储大小、文件数,以表为粒度,计算需归档内容空间大小、文件数等,按大小均衡的原理拆分,并启动总控进行,将拆分后的任务分配给到不同的执行者执行。模块4_2是归档语句执行,该模块是由模块4_1的总控进程启动,并传入归档备份的语句,进行执行,该模块按总控的并发数控制,可以由N个执行者在M台设备上执行,并定时给总控汇报执行进度,一旦长时间未汇报进度,总控将该任务交给其他执行者执行。模块4_3是磁盘备份执行,Hadoop目前不支持直接磁盘备份,故通过归档到服务器上的数据再进行磁带备份,由模块4_2执行的结果后,同一个执行者顺序启动与前一个任务对应的磁带备份内容。模块4_4是异常检查、执行日志归档,总控进行收集每个执行的执行日志,进行异常检查,如果备份不成功的,进行重试,如果重试异常,则该数据在后续清理中不清理。对于所有执行归档的日志信息进行归档存储。
在本场景示例中,参阅图9所示,其中,模块5_1清理语句均衡拆分,主要是从3_6中获取自动生成的清理语句,剔除模块4_4中的备份异常内容,然后再按内存中的元数据信息中每个分区的存储大小、文件数,以表为粒度,计算需清理内容空间大小、文件数等,按大小均衡的原理拆分,并启动总控进行,将拆分后的任务分配给到不同的执行者执行。模块5_2是清理语句执行,该模块是由模块5_1的总控进程启动,并传入清理的语句,进行执行,该模块按总控的并发数控制,可以由N个执行者在M台设备上执行,并定时给总控汇报执行进度,一旦长时间未汇报进度,总控将该任务交给其他执行者执行。模块5_3是异常检查、执行日志归档,总控进行收集每个执行的执行日志,进行异常检查,如果清理不成功的,进行重试,如果重试异常,记录并报警。对于所有执行清理的日志信息进行归档存储。
通过上述场景示例,验证了本说明书实施例所提供的数据清理方法,能够较好地弥补了新型Hive数据仓库数据灵活清理的空白,灵活运用Hive数据仓库动态的精准的元数据信息,结合本发明特有的灵活易扩展的用户定义的清理策略,能全自动化零编码生成数据灵活备份和清理的语句,极大的提高清理工具的自动化程度,节省人力的投入开销;同时利用精准的如存储大小等元数据信息负载均衡自动拆分,实现了分布式多并发的海量数据备份和清理,极大提升的海量数据归档和清理的效率;同时本发明特有的灵活易扩展的用户定义的清理策略,支持了各种用户数据清理场景,避免了数据库的存储空间的快速膨胀,提升整体大数据平台赋能业务、数据产生业务价值的能力。
虽然本说明书提供了如实施例或流程图所述的方法操作步骤,但基于常规或者无创造性的手段可以包括更多或者更少的操作步骤。实施例中列举的步骤顺序仅仅为众多步骤执行顺序中的一种方式,不代表唯一的执行顺序。在实际中的装置或客户端产品执行时,可以按照实施例或者附图所示的方法顺序执行或者并行执行(例如并行处理器或者多线程处理的环境,甚至为分布式数据处理环境)。术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、产品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、产品或者设备所固有的要素。在没有更多限制的情况下,并不排除在包括所述要素的过程、方法、产品或者设备中还存在另外的相同或等同要素。第一,第二等词语用来表示名称,而并不表示任何特定的顺序。
本领域技术人员也知道,除了以纯计算机可读程序代码方式实现控制器以外,完全可以通过将方法步骤进行逻辑编程来使得控制器以逻辑门、开关、专用集成电路、可编程逻辑控制器和嵌入微控制器等的形式来实现相同功能。因此这种控制器可以被认为是一种硬件部件,而对其内部包括的用于实现各种功能的装置也可以视为硬件部件内的结构。或者甚至,可以将用于实现各种功能的装置视为既可以是实现方法的软件模块又可以是硬件部件内的结构。
本说明书可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构、类等等。也可以在分布式计算环境中实践本说明书,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机可读存储介质中。
通过以上的实施例的描述可知,本领域的技术人员可以清楚地了解到本说明书可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本说明书的技术方案本质上可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,移动终端,服务器,或者网络设备等)执行本说明书各个实施例或者实施例的某些部分所述的方法。
本说明书中的各个实施例采用递进的方式描述,各个实施例之间相同或相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。本说明书可用于众多通用或专用的计算机系统环境或配置中。例如:个人计算机、服务器计算机、手持设备或便携式设备、平板型设备、多处理器系统、基于微处理器的系统、置顶盒、可编程的电子设备、网络PC、小型计算机、大型计算机、包括以上任何系统或设备的分布式计算环境等等。
虽然通过实施例描绘了本说明书,本领域普通技术人员知道,本说明书有许多变形和变化而不脱离本说明书的精神,希望所附的权利要求包括这些变形和变化而不脱离本说明书的精神。
Claims (11)
1.一种数据清理方法,其特征在于,包括:
获取目标配置参数;其中,所述目标配置参数至少包含有与待清理的目标数据关联的目标数据库名、目标数据表名和目标字段;目标数据库包括基于Hadoop的Hive数据仓库;所述目标配置参数为基于预设的设置规则自定义的配置参数;
根据所述目标配置参数,通过与目标数据库的连接,获取相应的元数据信息;
根据预设的生成规则、所述目标配置参数和所述元数据信息,生成目标备份程序文件和目标清理程序文件;
根据预设的均衡拆分规则,调用多个线程并行执行所述目标备份程序文件,以对所述目标数据进行磁带备份;
根据预设的均衡拆分规则,调用多个线程并行执行所述目标清理程序文件,以删除所述目标数据库中的目标数据。
2.根据权利要求1所述的方法,其特征在于,所述目标配置参数还包含有与目标数据相关的目标系统名、归档周期类型、频率类型、偏移量参数。
3.根据权利要求2所述的方法,其特征在于,在获取目标配置参数之后,所述方法还包括:根据预设的校验规则,对目标配置参数进行预设的校验处理。
4.根据权利要求2所述的方法,其特征在于,根据预设的生成规则、所述目标配置参数和所述元数据信息,生成目标备份程序文件和目标清理程序文件,包括:
获取并根据归档周期类型,确定所述目标数据是否属于分区数据;
在确定所述目标数据属于分区数据的情况下,根据元数据信息生成针对目标数据的备份语句和清理语句;
根据所述备份语句,生成目标备份程序文件;根据所述清理语句,生成目标清理程序文件。
5.根据权利要求4所述的方法,其特征在于,在获取并根据归档周期类型,确定所述目标数据是否属于分区数据之前,所述方法还包括:
根据目标配置参数,检测当前的执行时间是否与频率类型、偏移量参数匹配;
在确定当前的执行时间与频率类型、偏移量参数匹配的情况下,根据目标配置参数和元数据信息,核对目标数据库、目标数据表,以及目标字段。
6.根据权利要求5所述的方法,其特征在于,根据预设的均衡拆分规则,调用多个线程并行执行所述目标备份程序文件,包括:
根据元数据信息,确定各个分区的数据大小;
根据所述各个分区的数据大小,将目标备份程序文件所包含的备份语句拆分成多个备份任务;
将所述多个备份任务分配给多个线程;并调用多个线程并行执行所分配到的备份任务。
7.根据权利要求5所述的方法,其特征在于,根据预设的均衡拆分规则,调用多个线程并行执行所述目标清理程序文件,包括:
根据元数据信息,确定各个分区的数据大小;
根据所述各个分区的数据大小,将目标清理程序文件所包含的清理语句拆分成多个清理任务;
将所述多个清理任务分配给多个线程;并调用多个线程并行执行所分配到的清理任务。
8.根据权利要求7所述的方法,其特征在于,在将所述多个清理任务分配给多个线程;并调用多个线程并行执行所分配到的清理任务之后,所述方法还包括:
获取多个线程中的各个线程在执行所分配的清理任务时的清理执行日志;
根据所述清理执行日志,检测是否存在清理任务异常;
在检测到清理任务异常的情况下,生成异常提示信息。
9.一种数据清理装置,其特征在于,包括:
第一获取模块,用于获取目标配置参数;其中,所述目标配置参数至少包含有与待清理的目标数据关联的目标数据库名、目标数据表名和目标字段;目标数据库包括基于Hadoop的Hive数据仓库;所述目标配置参数为基于预设的设置规则自定义的配置参数;
第二获取模块,用于根据所述目标配置参数,通过与目标数据库的连接,获取相应的元数据信息;
生成模块,用于根据预设的生成规则、所述目标配置参数和所述元数据信息,生成目标备份程序文件和目标清理程序文件;
第一执行模块,用于根据预设的均衡拆分规则,调用多个线程并行执行所述目标备份程序文件,以对所述目标数据进行磁带备份;
第二执行模块,用于根据预设的均衡拆分规则,调用多个线程并行执行所述目标清理程序文件,以删除所述目标数据库中的目标数据。
10.一种服务器,其特征在于,包括处理器以及用于存储处理器可执行指令的存储器,所述处理器执行所述指令时实现权利要求1至8中任一项所述方法的步骤。
11.一种计算机可读存储介质,其特征在于,其上存储有计算机指令,所述指令被计算机设备执行时实现权利要求1至8中任一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110890116.7A CN113485999A (zh) | 2021-08-04 | 2021-08-04 | 数据清理方法、装置和服务器 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110890116.7A CN113485999A (zh) | 2021-08-04 | 2021-08-04 | 数据清理方法、装置和服务器 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113485999A true CN113485999A (zh) | 2021-10-08 |
Family
ID=77945665
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110890116.7A Pending CN113485999A (zh) | 2021-08-04 | 2021-08-04 | 数据清理方法、装置和服务器 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113485999A (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114297188A (zh) * | 2022-01-05 | 2022-04-08 | 厦门市美亚柏科信息股份有限公司 | 一种数据清理方法及终端 |
CN115277573A (zh) * | 2022-08-09 | 2022-11-01 | 康键信息技术(深圳)有限公司 | 发布应用任务的负载均衡处理方法及装置 |
CN115687333A (zh) * | 2022-09-27 | 2023-02-03 | 西部科学城智能网联汽车创新中心(重庆)有限公司 | 一种v2x大数据生命周期管理方法及装置 |
CN117370080A (zh) * | 2023-12-04 | 2024-01-09 | 深圳市木浪云科技有限公司 | 用于Hive的数据备份和数据恢复方法、系统、设备及介质 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109710596A (zh) * | 2018-11-30 | 2019-05-03 | 平安科技(深圳)有限公司 | 数据清理方法、装置、设备及计算机可读存储介质 |
CN109977110A (zh) * | 2019-04-28 | 2019-07-05 | 杭州数梦工场科技有限公司 | 数据清洗方法、装置及设备 |
CN111639066A (zh) * | 2020-05-14 | 2020-09-08 | 杭州数梦工场科技有限公司 | 一种数据清洗的方法和装置 |
CN111756778A (zh) * | 2019-03-26 | 2020-10-09 | 京东数字科技控股有限公司 | 一种服务器磁盘清理脚本推送的方法、装置和存储介质 |
CN112559525A (zh) * | 2020-12-15 | 2021-03-26 | 中国工商银行股份有限公司 | 数据检查系统、方法、装置和服务器 |
CN112861185A (zh) * | 2021-03-31 | 2021-05-28 | 中国工商银行股份有限公司 | 基于Hive数据仓库的数据自动变形传输方法 |
CN112988722A (zh) * | 2021-02-05 | 2021-06-18 | 新华三大数据技术有限公司 | 一种Hive分区表数据清理方法、装置及存储介质 |
CN113111055A (zh) * | 2021-04-19 | 2021-07-13 | 中国工商银行股份有限公司 | 一种数据表的数据清理方法及装置 |
-
2021
- 2021-08-04 CN CN202110890116.7A patent/CN113485999A/zh active Pending
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109710596A (zh) * | 2018-11-30 | 2019-05-03 | 平安科技(深圳)有限公司 | 数据清理方法、装置、设备及计算机可读存储介质 |
CN111756778A (zh) * | 2019-03-26 | 2020-10-09 | 京东数字科技控股有限公司 | 一种服务器磁盘清理脚本推送的方法、装置和存储介质 |
CN109977110A (zh) * | 2019-04-28 | 2019-07-05 | 杭州数梦工场科技有限公司 | 数据清洗方法、装置及设备 |
CN111639066A (zh) * | 2020-05-14 | 2020-09-08 | 杭州数梦工场科技有限公司 | 一种数据清洗的方法和装置 |
CN112559525A (zh) * | 2020-12-15 | 2021-03-26 | 中国工商银行股份有限公司 | 数据检查系统、方法、装置和服务器 |
CN112988722A (zh) * | 2021-02-05 | 2021-06-18 | 新华三大数据技术有限公司 | 一种Hive分区表数据清理方法、装置及存储介质 |
CN112861185A (zh) * | 2021-03-31 | 2021-05-28 | 中国工商银行股份有限公司 | 基于Hive数据仓库的数据自动变形传输方法 |
CN113111055A (zh) * | 2021-04-19 | 2021-07-13 | 中国工商银行股份有限公司 | 一种数据表的数据清理方法及装置 |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114297188A (zh) * | 2022-01-05 | 2022-04-08 | 厦门市美亚柏科信息股份有限公司 | 一种数据清理方法及终端 |
CN115277573A (zh) * | 2022-08-09 | 2022-11-01 | 康键信息技术(深圳)有限公司 | 发布应用任务的负载均衡处理方法及装置 |
CN115687333A (zh) * | 2022-09-27 | 2023-02-03 | 西部科学城智能网联汽车创新中心(重庆)有限公司 | 一种v2x大数据生命周期管理方法及装置 |
CN115687333B (zh) * | 2022-09-27 | 2024-03-12 | 西部科学城智能网联汽车创新中心(重庆)有限公司 | 一种v2x大数据生命周期管理方法及装置 |
CN117370080A (zh) * | 2023-12-04 | 2024-01-09 | 深圳市木浪云科技有限公司 | 用于Hive的数据备份和数据恢复方法、系统、设备及介质 |
CN117370080B (zh) * | 2023-12-04 | 2024-04-09 | 深圳市木浪云科技有限公司 | 用于Hive的数据备份和数据恢复方法、系统、设备及介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109034993B (zh) | 对账方法、设备、系统及计算机可读存储介质 | |
CN113485999A (zh) | 数据清理方法、装置和服务器 | |
CN112346829B (zh) | 一种用于任务调度的方法及设备 | |
CN111324606B (zh) | 数据分片的方法及装置 | |
CN101996214B (zh) | 用于处理数据库操作请求的方法和装置 | |
CN106354817B (zh) | 一种日志的处理方法及装置 | |
EP2044536A1 (en) | Data processing over very large databases | |
CN110928851B (zh) | 处理日志信息的方法、装置、设备及存储介质 | |
CN110134738B (zh) | 分布式存储系统资源预估方法、装置 | |
CN111400361B (zh) | 数据实时存储方法、装置、计算机设备和存储介质 | |
CN110825694A (zh) | 数据处理方法、装置、设备和存储介质 | |
CN111651595A (zh) | 一种异常日志处理方法及装置 | |
CN111597270A (zh) | 数据同步方法、装置、设备及计算机存储介质 | |
CN112162960A (zh) | 一种卫生健康政务信息共享方法、装置及系统 | |
CN112433888B (zh) | 数据处理方法及装置、存储介质和电子设备 | |
KR20180047828A (ko) | 데이터 처리 시스템 및 데이터 처리 방법 | |
CN113010310A (zh) | 作业数据的处理方法、装置和服务器 | |
CN116132448B (zh) | 基于人工智能的数据分流方法及相关设备 | |
CN109684279B (zh) | 一种数据处理方法及系统 | |
CN110727565B (zh) | 一种网络设备平台信息收集方法及系统 | |
CN116126621A (zh) | 大数据集群的任务监控方法及相关设备 | |
CN115794783A (zh) | 数据去重方法、装置、设备和介质 | |
CN112764935B (zh) | 大数据处理方法、装置、电子设备及存储介质 | |
CN115269519A (zh) | 一种日志检测方法、装置及电子设备 | |
CN114168557A (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 |