一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

数据抽取和清洗方法、装置及存储介质与流程

2022-07-30 14:06:47 来源:中国专利 TAG:


1.本发明涉及大数据技术领域,尤其是涉及一种数据抽取和清洗方法、装置及存储介质。


背景技术:

2.etl:是英文extract-transform-load的缩写,用来描述将数据从来源端经过抽取(extract)、转换(transform)、加载(load)至目的端的过程,etl一词较常用在数据仓库。
3.随着大数据时代的来临,常常需要对海量数据进行抽取和清洗。目前,在大数据抽取和清洗过程中,存在如下问题:(1)在数据抽取方面:第一、数据来源的格式包括多种,如:数据库库表共享、excel文件共享、数据接口对接、网页爬取等。当数据来自不同的物理主机,这时候如使用sql语句去处理的话,就显得比较吃力且开销也更大;第二、数据来源可以是各种不同的数据库或者文件,这时候需要先把他们整理成统一的格式后才可以进行数据的处理,这一过程用代码实现显然有些麻烦,但是如果在数据库中使用存储过程去处理数据,引起的问题是处理海量数据的时候存储过程显然比较吃力,而且会占用较多数据库的资源,这可能会导致数据资源不足,进而影响数据库的性能。
4.(2)在数据清洗方面:同类型的数据在清洗规则上基本一致,例如:证件号码相关的清洗、地址相关的清洗、年龄的生成规则等。现有的处理流程基本上是,有相应字段在对应sql上写一次清洗逻辑。不同的数据开发者难以做的处理逻辑统一一致,导致在数仓业务层可能出现各种各样数据质量导致的问题,影响数据的准确性。
5.(3)在调度任务方面:目前常用的任务调度工具有jenkins,该工具非为专业调度工具,泛用性很广,但是无法清晰的查看任务调度的进度。并且jenkis在出错时排除错误的能力也不是很友好,不具备在任务相互关联依赖的执行等待的能力。
6.因此,需要开发一款集成抽取、处理、调度为一体的数据中台,以提升数据抽取和清洗的效率和准确性。


技术实现要素:

7.本发明旨在至少在一定程度上解决相关技术中的技术问题之一。为此,本发明的一个目的是提供一种数据抽取和清洗方法、装置及存储介质,能够提高数据抽取和清洗的效率和准确度。
8.本发明所采用的技术方案是:第一方面,本发明提供一种数据抽取和清洗方法,该方法包括:响应于用户的操作,从组件库中选择etl操作组件,该etl操作组件的类型至少包括两种:源数据节和数据输出目标表,该源数据节为各种不同类型源数据抽取配置的集合,该源数据节的类型包括四种:库表共享源数据节、excel文件源数据节、数据接口源数据节以及网页爬取源数据节;从该组件库中选择数据清洗模型;按照一定的顺序线性连接该etl操作组件和该数据清洗模
型,生成一个数据抽取和清洗的任务。
9.其中,还包括:调度该任务;该调度该任务包括两种类型:第一种为根据时间轴配置,第二种为根据任务间的依赖配置;该根据时间轴配置具体为:选择时间轴上的任意时刻,在该选择的时刻自动执行该任务;该根据任务间的依赖配置包括两种类型,第一种为“队列”,第二种为“锁”;在依赖配置为“队列”类型时,按照任务配置的队列顺序去执行任务,如果前一个任务未执行,则下一个任务即使在时间轴中配置了也不会执行;在依赖配置为“锁”类型时,同一个锁的任务不会同时开始执行,若一个任务正在执行,同一个锁的其他任务被调度到等待区进行等待,直到该正在执行的任务执行完毕才开始执行。
10.其中,还包括:智能调优该任务;该智能调优该任务,包括:对于首次执行的任务进行预分配,将任务分配至当前较为空闲的资源执行,并在执行过程中持续监控任务所耗费的资源;对于非首次执行任务,判断当前的资源使用情况是否能容纳负载该任务执行所需的资源,若资源充足,将该任务按依赖配置准确执行,若资源紧缺,系统会将该任务放置在等待区,当资源足以负载该任务时才执行该任务。
11.其中,该etl操作组件的种类还包括三种类型:sql脚本、执行存储过程、表输入,该选择该源数据节之前,还包括:配置源数据节和对所配置的源数据节进行抽数测试;该配置源数据节包括:在该源数据节为库表共享源数据节时,按照如下内容填写该源数据节的配置表单:外部数据库地址、连接端口、外部数据库类型、外部数据库连接凭证、从外部数据库获取目标数据的sql语句;在该源数据节为excel文件源数据节时,按照如下内容填写该源数据节的配置表单:本地excel文件路径、选择目标数据所在sheet页名称,以及表头与字段名称映射配置;在该源数据节为数据接口源数据节时,按照如下内容填写该源数据节的配置表单:请求配置、接口请求体参数、结果解析;该请求配置的数据类型包括:接口url地址、接口请求类型、接口鉴权方式配置、接口请求头配置、待调用数据集,该结果解析的数据类型包括:接口返回结果类型、接口返回结果解析规则;在该源数据节为网页爬取源数据节时,按照如下内容填写该源数据节的配置表单:目标爬取页面url、请求头配置、前置请求配置以及解析规则;该对所配置的源数据节进行抽数测试包括:若未获取到预期数据,将所配置的源数据节设置为禁用状态,返回重新配置该源数据节;若获取到预期数据,则将该源数据节设置为启用状态。
12.其中,该选择数据清洗模型之前,还包括:配置该数据清洗模型,该配置该数据清洗模型包括:配置并组合字段级处理逻辑规则,形成该数据清洗模型。
13.第二方面,本发明提供一种数据抽取和清洗装置,该装置包括:etl操作组件选择模块,用于响应于用户的操作,从组件库中选择etl操作组件,该etl操作组件的类型至少包括两种:源数据节和数据输出目标表,该源数据节为各种不同类型源数据抽取配置的集合,该源数据节的类型包括四种:库表共享源数据节、excel文件源数据节、数据接口源数据节以及网页爬取源数据节;数据清洗模型选择模块,用于从该组件库中选择数据清洗模型;数据抽取和清洗任务生成模块,用于按照一定的顺序线性连接该etl操作组件和该数据清洗模型,生成一个数据抽取和清洗的任务。
14.其中,还包括:数据抽取和清洗任务调度模块,该数据抽取和清洗任务调度模块包括时间轴配置单元和依赖配置单元;该时间轴配置单元,用于选择时间轴上的任意时刻,在该选择的时刻自动执行该任务;该依赖配置单元包括队列依赖配置子单元和锁依赖配置子
单元;该队列依赖配置子单元用于按照任务配置的队列顺序去执行任务,如果前一个任务未执行,则下一个任务即使在时间轴中配置了也不会执行;该锁依赖配置子单元用于同一个锁的任务不会同时开始执行,若一个任务正在执行,同一个锁的其他任务被调度到等待区进行等待,直到该正在执行的任务执行完毕才开始执行。
15.其中,还包括:数据抽取和清洗任务调优模块,该数据抽取和清洗任务调优模块包括任务配置单元和任务监控单元;该任务配置单元用于对于首次执行的任务进行预分配,将任务分配至当前较为空闲的资源执行,并在执行过程中持续监控任务所耗费的资源;该任务监控单元用于对于非首次执行任务,判断当前的资源使用情况是否能容纳负载该任务执行所需的资源,若资源充足,将该任务按依赖配置准确执行,若资源紧缺,系统会将该任务放置在等待区,当资源足以负载该任务时才执行该任务。
16.其中,还包括源数据节配置模块、抽数测试模块以及数据清洗模型配置模块;该源数据节配置模块包括:库表共享源数据节配置单元,用于在该源数据节为库表共享源数据节时,按照如下内容填写该源数据节的配置表单:外部数据库地址、连接端口、外部数据库类型、外部数据库连接凭证、从外部数据库获取目标数据的sql语句;excel文件源数据节配置单元,用于在该源数据节为excel文件源数据节时,按照如下内容填写该源数据节的配置表单:本地excel文件路径、选择目标数据所在sheet页名称,表头与字段名称映射配置;数据接口源数据节配置单元,用于在该源数据节为数据接口源数据节时,按照如下内容填写该源数据节的配置表单:请求配置、接口请求体参数、结果解析;该请求配置的数据类型包括:接口url地址、接口请求类型、接口鉴权方式配置、接口请求头配置、待调用数据集,该结果解析的数据类型包括:接口返回结果类型、接口返回结果解析规则;网页爬取源数据节配置单元,用于在该源数据节为网页爬取源数据节时,按照如下内容填写该源数据节的配置表单:目标爬取页面url、请求头配置、前置请求配置以及解析规则;该抽数测试模块用于若未获取到预期数据,将所配置的源数据节设置为禁用状态,返回重新配置该源数据节;若获取到预期数据,则将该源数据节设置为启用状态;该数据清洗模型配置模块,用于配置并组合字段级处理逻辑规则,形成该数据清洗模型。
17.第三方面,本发明提供一种计算机可读存储介质,其中,该计算机可读存储介质存储有计算机可执行指令,该计算机可执行指令用于使计算机执行如上述的方法。
18.本发明的有益效果是:本发明通过配置源数据节以进行数据的抽取,将数据统一抽取到预处理层库表中,该方法适用于各种不同类型的源数据抽取,可扩展性好。其次,本发明通过配置和选择数据清洗模型以对数据进行清洗,该数据清洗模型配置完成后保存在模型库中,对于不同的开发者来说,只需要从模型库中选择模型即可,从而做到采用统一的清洗规则,保证数据质量。
19.再次,本发明的任务调度方法能实现任务在设置的时刻自动执行和任务的单线执行,保证数据的准确性。
20.另外,本发明的任务调优方法能保证系统资源的高效,稳定,减少由于内存等资源溢出导致的任务失败。
21.从整体上,本发明通过图形化建模的方式配置、选择、连接etl组件和数据清洗模型,以可视化的方式生成一个数据抽取和清洗的任务。该生成任务的方式直观,方便用户操
作,可重用性好。
附图说明
22.图1是本发明数据抽取和清洗方法的第一实施例的流程示意图;图2是本发明配置源数据节的一实施例的结构示意图;图3是本发明数据抽取和清洗方法的第二实施例的流程示意图;图4是本发明数据抽取和清洗方法的第三实施例的流程示意图;图5是本发明数据抽取和清洗方法的的一应用实施例的结构示意图;图6是本发明数据抽取和清洗装置的第一实施例的结构示意图;图7是本发明数据抽取和清洗装置的第二实施例的结构示意图;图8是本发明数据抽取和清洗装置的第三实施例的结构示意图。
具体实施方式
23.需要说明的是,在不冲突的情况下,本技术中的实施例及实施例中的特征可以相互组合。
24.实施例一请参阅图1,图1是本发明数据抽取和清洗方法的第一实施例的流程示意图。如图1所示,该方法包括如下步骤:s11:响应于用户的操作,从组件库中选择etl操作组件;s12:从该组件库中选择数据清洗模型;s13:按照一定的顺序线性连接该etl操作组件和该数据清洗模型,生成一个数据抽取和清洗的任务。
25.优选地,在组件库中存放etl操作组件和数据清洗模型组件,在任务面板中配置组件与组件的线性关系。从组件库中拖曳相应组件到任务面板中,通过点击组件的边点来连接两个组件间的线性关系,系统在任务执行中,将按配置的线性关系先后按序执行各组件,直至所有有线性连接的组件均执行完毕,结束该任务的此次执行。同时在任务面板有单次执行的按钮,在配置完成后可点击此按钮进行单次执行该任务,同时在面板上输出执行日志。如下具体介绍各个步骤。
26.在步骤s11中,该etl操作组件的类型包括五类:sql脚本、执行存储过程、表输入、数据输出目标表以及源数据节。其中,该etl操作组件的类型至少包括两种:数据输出目标表以及源数据节。
27.该源数据节为各种不同类型源数据抽取配置的集合,该源数据节的类型包括四种:库表共享源数据节、excel文件源数据节、数据接口源数据节以及网页爬取源数据节。
28.优选地,在步骤s11之前,还包括步骤:配置该源数据节和对所配置的源数据节进行抽数测试。由于源数据节的类型包括四种,如图2所示,该步骤也分为四种形式进行:(1)在该源数据节为库表共享源数据节时,按照如下内容填写该源数据节的配置表单:外部数据库地址、连接端口、外部数据库类型、外部数据库连接凭证、从外部数据库获取目标数据的sql语句。
29.配置完成后,系统会对该源数据节进行抽数测试,根据配置的数据库类型调起对
应源数据jdbc驱动程序,系统服务器通过对应的jdbc驱动程序对外部服务器进行数据库连接测试,测试是否能访问并连接到配置的外部数据库,数据库连接成功后将会在外部数据库中执行配置的获取目标数据sql语句获取目标数据,导入到系统生成的对应预处理库表中。若此抽数测试过程未获取到预期数据,此源数据节将被设置为禁用状态,将无法在任务创建中选用该配置节,返回重新配置该源数据节,直到抽数测试能获取到预期数据,该源数据节才能被启用,供任务创建时选用。
30.(2)在该源数据节为excel文件源数据节时,按照如下内容填写该源数据节的配置表单:本地excel文件路径、选择目标数据所在sheet页名称,表头与字段名称映射配置。
31.具体地,excel文件源数据节的配置过程如下:选择本地excel文件路径并点击上传文件后,系统将寻找本地excel文件,本地缓存读取该excel文件,将文件内所有sheet名称值填入sheet选用框,用户需勾选选择目标数据所在的sheet页名称,选定sheet页后系统将根据选择的sheet名称去获取对应sheet页内的数据,并尝试获取表头行,若选择多个sheet页且各sheet页间的数据列数及表头名称不一致将在系统中显示错误,并无法进行下一步操作;获取到有效表头后将按序输出在页面上,用户需填写对应表头在入库后希望的字段名称,此步操作避免excel表头中出现特殊字符,导致后续存入预处理层时创表操作程序无法识别而报错。
32.配置完成后,该excel文件将上传至系统文件服务器,系统同样会对该源数据节进行抽数测试,读取文件服务器中的excel文件,根据配置的内容获取对应sheet页数据,字段映射后写入预处理层库表,若能正常取数,该源数据节允许被启用,供任务创建时选用;若未正常获取数据,此源数据节会被设置为禁用状态,返回重新配置该源数据节。
33.(3)在该源数据节为数据接口源数据节时,按照如下内容填写该源数据节的配置表单:请求配置、接口请求体参数、结果解析;所述请求配置的数据类型包括:接口url地址、接口请求类型、接口鉴权方式配置、接口请求头配置、待调用数据集,所述结果解析的数据类型包括:接口返回结果类型、接口返回结果解析规则。
34.具体地,数据接口源数据节的配置过程如下:在配置完请求配置后,系统首先查看是否有配置接口鉴权方式,若有,系统首先会对接口执行配置的鉴权操作,鉴权操作分为两种类型分别为cookie鉴权和token鉴权,cookie鉴权系统直接进行鉴权url的请求,获取需求cookie后执行接口url地址的调用,token鉴权则需要配置返回结果方式和解析结果规则,若返回方式为jason格式,则规则填写对应token所在位置即可,若返回方式xml格式,则规则填写的内容为正则提取的表达式,系统会在配置鉴权时测试请求一次鉴权url获取返回内容,存入本地缓存,供结果规则提取的测试,提取的内容需填写变量名称在记录该token的值,在后续请求配置中均可以{变量名称}的方式使用该变量,来达到接口验证身份的配置,保证后续接口的正常请求,且在任务中持续调用接口的过程中,若出现身份验证失败的情况,会重新执行接口鉴权操作。若无鉴权配置则执行以下步骤,有鉴权配置需先执行如上接口鉴权操作再执行以下步骤,从配置的待调用数据集中获取数据明细,该步骤可配置2种类型,分别为excel文件和sql脚本获取,内层逻辑基本一致,均为从excel/sql中获取对应数据,将数据分别存入配置的变量名称中,此处的变量名称可用{变量名称}的方式在请求体参数中使用。生成待调取的请求体参数,根据配置的请求体参数配置,依据获取的数据行并发循环拼接映射请求体参数具体内容。至此请求配置的操作已完成,系统同步会执
行一次接口请求,来获取接口返回结果来供结果解析配置调试使用。结果解析首先需要配置返回结果类型,通常为json格式和xml格式,不同的结果类型将配置的解析规则有所不同。由于接口返回基本是树状json格式和文本类xml格式的内容,无法直接入库使用,故需要对返回结果进行格式化,因此需要配置接口返回结果解析规则,通过自定义创建字段并维护各字段解析规则来获取对应得值:接口返回类型为json格式的,只需添加字段名,并维护该字段所需值所在json中的位置即可,系统自动获取的返回结果会根据该配置进行解析出具体值,供参考是否配置正确;接口返回类型为xml格式的,需要添加字段名,并维护该字段名所在位置的正则提取的表达式,同样,系统获取的返回结果会在页面上根据该配置解析出具体值,供参考。至此整个数据接口类型的源数据节已配置完成。
35.配置完成后,系统同样会对该源数据节进行抽数测试,按流程调用接口、解析、入库预处理层库表,若能正常取数,该源数据节允许被启用,供任务创建时选用;若未正常获取数据,此源数据节会被设置为禁用状态,只能进行配置修改操作。
36.(4)在该源数据节为网页爬取源数据节时,按照如下内容填写该源数据节的配置表单:目标爬取页面url、请求头配置、前置请求配置以及解析规则。
37.具体地,网页爬取源数据节的配置过程如下:由于需爬取页面的内容可能存在不同的页面中、或者目标页面需要优先有一个登陆的操作才能访问目标页面,所以源数据为网页的配置是一个自上而下的流水线过程,每个url的抓取作为单独的块,串行执行爬取操作。单个页面爬取的脚本操作为:配置访问url,同数据接口一致,可以配置请求头和请求体参数以及请求类型,配置完成后系统将会尝试抓取该url的内容,用户可选择是否在该页面定义变量并获取变量的值,选择是,需要填写变量名称,和抓取变量值的对应正则表达式,用户可在页面进行正则表达式的调试,系统将会根据填写的正则表达式来解析页面,以准确获取需求所需的内容。由于同一页面中可能同一变量需求抓取的内容为多个,用户可在填写正则表达式后勾选抓取所有的按钮,不勾选该按钮系统将默认以抓取第一个满足条件的内容来写入变量值中,定义的变量只要生成,即为全局变量,在该源数据节中均可以{{变量名称}}的方式使用。在所有需求页面配置完毕后,需要选择哪些定义的变量为入库变量,同时,由于变量间的关系可能存在一对多的关系或者多对多的关系,系统将直接进行发散关联,将各字段合并为数据表的格式,入库预处理层,若有去重逻辑需在任务配置中去操作。至此,网页爬取的源数据节已配置结束。
38.在配置完成后,系统会执行抽数测试,调用后台scrapy爬虫框架,顺序执行配置页面的请求,请求目标页面获取页面内容,根据配置的正则解析规则解析页面获取对应字段,在所有页面爬取结束后,将选用的变量合并为数据表写入预处理层库表。若能正常取数,该源数据节允许被启用,供任务创建时选用;若未正常获取数据,此源数据节会被设置为禁用状态,返回重新配置该源数据节。
39.在步骤s12中,清洗模型库中包括多个数据清洗模型,保存在系统中。根据数据清洗任务的要求,从清洗模型库中选择一个数据清洗模型。每种数据清洗模型对应一种映射清洗字段,选择某个数据清洗模型之后,就对应选择了一种映射清洗字段。
40.优选地,在步骤s12之前,还包括步骤:配置该数据清洗模型。该配置数据清洗模型包括:配置并组合字段级处理逻辑规则,形成该数据清洗模型。
41.具体地,数据清洗模型的处理逻辑主要为单个字段做sql更新处理的操作,故数据
清洗模型的创建仅需要配置对某一字段做处理的逻辑规则。在配置数据清洗模型时,系统有预设部分清洗规则可供选择,例如:清洗特殊字符(替换字段中的特殊符号,仅保留数字、字母、括号),转大写,转小写等清洗规则可供直接选择,如无符合的预设规则,还可在通过直接编写sql的方式来定义清洗逻辑,通过系统的的语义检测后即可添加该清洗规则。同时清洗规则在逻辑上可能存在一个先后的关系,所以在清洗规则配置完成后,需要对已配置的清洗规则进行组合,定义规则执行的先后或是可同步执行,完成组合操作后保存即可在模型库中启用该数据清洗模型,启用的数据清洗模型可在任务创建时作为数据清洗模型组件被选用。
42.在步骤s13中,线性连接好该etl组件和该数据清洗模型,就生成了一个数据抽取和清洗的任务。任务创建之后,可以将任务保存在系统中,供下次调用。
43.在本实施例中,通过配置源数据节以进行数据的抽取,将数据统一抽取到预处理层库表中,该方法适用于各种不同类型的源数据抽取,可扩展性好。
44.其次,本发明通过配置和选择数据清洗模型以对数据进行清洗,该数据清洗模型配置完成后保存在模型库中,对于不同的开发者来说,只需要从模型库中选择模型即可,从而做到采用统一的清洗规则,保证数据质量。
45.另外,本实施例通过图形化建模的方式配置、选择、连接各种组件,生成一个可视化的数据抽取和清洗的任务。该生成任务的方式直观,方便用户操作。
46.实施例二请参阅图3,图3是本发明数据抽取和清洗方法的第二实施例的流程示意图。如图3所示,该方法与图1的区别在于,还包括如下步骤:s24:调度该任务。
47.其中,调度任务的方法包括两种类型:第一种为根据时间轴配置,第二种为根据任务间的依赖配置。
48.根据时间轴配置任务的方法具体为:选择时间轴上的任意时刻,在该选择的时刻自动执行该任务。若任务需要定时执行,首选需选择每小时/每天/每周/每月,系统将提取出调度任务的一小时/一天/一周/一个月的时间轴,时间轴的对应时间上展示的调度任务表示为在该时刻会执行的调度任务。用户可依据该时间轴将该调度任务放置在时间轴的任意时刻上,表示该调度任务设置在每小时/每天/每周/每月的这个时刻会自动执行。
49.根据任务间的依赖配置包括两种类型,第一种为“队列”依赖,第二种为“锁”依赖;在依赖类型为“队列”类型时,按照任务配置的队列顺序去执行任务,如果前一个任务未执行,则下一个任务即使在时间轴中配置了也不会执行;在依赖配置为“锁”类型时,同一个锁的任务不会同时开始执行,若一个任务正在执行,同一个锁的其他任务被调度到等待区进行等待,直到该锁下正在执行的任务执行完毕才开始执行。
50.在上述依赖任务配置过程中,“队列”依赖任务主要运用于后任务的输入为前任务的输出的两个任务,保证数据的单线运行;“锁”依赖任务主要运用于两个或多个任务间公用同一类数据,保证执行的单一,避免出现数据“脏”读的情况。
51.在本实施例中,将数据抽取和清洗任务设置为按照时间轴配置运行,可自动执行数据抽取和清洗任务,方便操作。当有多个任务需执行时,将任务配置按照任务间的依赖配置执行,能够保证任务的单线运行,从而保证清洗数据的准确性。
52.实施例三请参阅图4,图4是本发明数据抽取和清洗方法的第三实施例的流程示意图。如图3所示,该方法与图3的区别在于,还包括如下步骤:s35:智能调优该任务。
53.具体地,该智能调优所述任务,包括:对于首次执行的任务进行预分配,将任务分配至当前较为空闲的资源执行,并在执行过程中持续监控任务所耗费的资源;对于非首次执行任务,判断当前的资源使用情况是否能容纳负载该任务执行所需的资源,若资源充足,将所述任务按依赖配置准确执行,若资源紧缺,系统会将该任务放置在等待区,当资源足以负载该任务时才执行该任务。
54.具体地,请参阅图5,如图5所示,系统从网关采取大量数据,同时,根据用户的操作配置和选择源数据节、配置和选择数据清洗模型,生成数据抽取和清洗任务,再对该任务进行配置和智能调优,使数据抽取和清洗任务高效有序地运行于系统中,从而实现海量数据的抽取和清洗,最终将清洗后的数据保存于后台服务器上。
55.本实施例集成抽取、清洗、调度功能,采用分布式资源高效采集多类型源数据、清洗模型规范统一数据处理逻辑、配置多种依赖类型(锁,队列)调度任务,通过一站式源数据节调起后台服务来采集多类型数据存入预处理层;关联配置清洗模型对预处理层数据进行清洗处理操作入库目标存储库,以达到清洗规则统一保证数据质量;在任务设置上,调度任务间可设置队列先后的关系和同级锁的关系来配置任务间的相互依赖关系,定时触发的任务后台会预执行,以任务间的依赖为最高优先级,再以时间轴规划来对任务进行不同资源分配,在同一时间段任务群执行后,系统监控记录每个任务本次执行消耗时间、消耗资源,此后执行此任务群时系统以并行、等待、串行等负载均衡的手段执行各任务来做到智能调度逐步调优,保证在当前资源使用许可下任务正常、效率执行,利用以上方式来有效解决现有问题痛点,提升效率与人工成本。
56.实施例四请参阅图6,图6是本发明数据抽取和清洗装置的第一实施例的结构示意图。如图6所示,该装置包括源数据节配置模块11、抽数测试模块12、数据清洗模型配置模块13、etl操作组件选择模块14、数据清洗模型选择模块15、数据抽取和清洗任务生成模块16。
57.其中,该源数据节配置模块11包括库表共享源数据节配置单元(图未示)、excel文件源数据节配置单元(图未示)、数据接口源数据节配置单元(图未示)、以及网页爬取源数据节配置单元(图未示)。
58.库表共享源数据节配置单元,用于在该源数据节为库表共享源数据节时,按照如下内容填写该源数据节的配置表单:外部数据库地址、连接端口、外部数据库类型、外部数据库连接凭证、从外部数据库获取目标数据的sql语句;excel文件源数据节配置单元,用于在该源数据节为excel文件源数据节时,按照如下内容填写该源数据节的配置表单:本地excel文件路径、选择目标数据所在sheet页名称,表头与字段名称映射配置;数据接口源数据节配置单元,用于在该源数据节为数据接口源数据节时,按照如下内容填写该源数据节的配置表单:请求配置、接口请求体参数、结果解析;该请求配置的数据类型包括:接口url地址、接口请求类型、接口鉴权方式配置、接口请求头配置、待调用
数据集,该结果解析的数据类型包括:接口返回结果类型、接口返回结果解析规则网页爬取源数据节配置单元,用于在该源数据节为网页爬取源数据节时,按照如下内容填写该源数据节的配置表单:目标爬取页面url、请求头配置、前置请求配置以及解析规则。
59.该抽数测试模块12用于若未获取到预期数据,将所配置的源数据节设置为禁用状态,返回重新配置该源数据节;若获取到预期数据,则将该源数据节设置为启用状态;该数据清洗模型配置模块13,用于配置并组合字段级处理逻辑规则,形成该数据清洗模型。
60.etl操作组件选择模块14,用于响应于用户的操作,从组件库中选择etl操作组件,该etl操作组件的类型至少包括两种:源数据节和数据输出目标表,该源数据节为各种不同类型源数据抽取配置的集合,该源数据节的类型包括四种:库表共享源数据节、excel文件源数据节、数据接口源数据节以及网页爬取源数据节。
61.数据清洗模型选择模块15,用于从该组件库中选择数据清洗模型。
62.数据抽取和清洗任务生成模块16,用于按照一定的顺序线性连接该etl操作组件和该数据清洗模型,生成一个数据抽取和清洗的任务。
63.具体地,各模块的工作方法在实施例一中已详细阐述,在此不再赘述。
64.实施例五请参阅图7,图7是本发明数据抽取和清洗装置的第二实施例的结构示意图。如图7所示,该装置还包括数据抽取和清洗任务调度模块17。
65.该数据抽取和清洗任务调度模块17包括时间轴配置单元(图未示)和依赖配置单元(图未示)。
66.该时间轴配置单元,用于选择时间轴上的任意时刻,在该选择的时刻自动执行该任务。
67.该依赖配置单元包括队列依赖配置子单元和锁依赖配置子单元;该队列依赖配置子单元用于按照任务配置的队列顺序去执行任务,如果前一个任务未执行,则下一个任务即使在时间轴中配置了也不会执行;该锁依赖配置子单元用于同一个锁的任务不会同时开始执行,若一个任务正在执行,同一个锁的其他任务被调度到等待区进行等待,直到该正在执行的任务执行完毕才开始执行。
68.具体地,数据抽取和清洗任务调度模块17的工作方法在实施例二中已详细阐述,在此不再赘述。
69.实施例六请参阅图8,图8是本发明数据抽取和清洗装置的第三实施例的结构示意图。如图8所示,该装置还包括数据抽取和清洗任务调优模块18。该数据抽取和清洗任务调优模块18包括任务配置单元(图未示)和任务监控单元(图未示)。
70.该任务配置单元用于对于首次执行的任务进行预分配,将任务分配至当前较为空闲的资源执行,并在执行过程中持续监控任务所耗费的资源。
71.该任务监控单元用于对于非首次执行任务,判断当前的资源使用情况是否能容纳负载该任务执行所需的资源,若资源充足,将该任务按依赖配置准确执行,若资源紧缺,系统会将该任务放置在等待区,当资源足以负载该任务时才执行该任务。
72.具体地,数据抽取和清洗任务调优模块的工作方法在实施例三中已详细阐述,在此不再赘述。
73.实施例七本发明还提供一种计算机可读存储介质,该计算机可读存储介质存储有计算机可执行指令,该计算机可执行指令用于使计算机执行如实施例一、或实施例二、或实施例三所述的方法。
74.以上是对本发明的较佳实施进行了具体说明,但本发明创造并不限于所述实施例,熟悉本领域的技术人员在不违背本发明精神的前提下还可做出种种的等同变形或替换,这些等同的变形或替换均包含在本技术权利要求所限定的范围内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献