CN114138743A - 基于机器学习的etl任务自动配置方法及装置 - Google Patents
基于机器学习的etl任务自动配置方法及装置 Download PDFInfo
- Publication number
- CN114138743A CN114138743A CN202111406008.4A CN202111406008A CN114138743A CN 114138743 A CN114138743 A CN 114138743A CN 202111406008 A CN202111406008 A CN 202111406008A CN 114138743 A CN114138743 A CN 114138743A
- Authority
- CN
- China
- Prior art keywords
- data
- task
- etl
- configuration
- matching
- 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
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/217—Database tuning
-
- 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/25—Integrating or interfacing systems involving database management systems
- G06F16/254—Extract, transform and load [ETL] procedures, e.g. ETL data flows in data warehouses
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/445—Program loading or initiating
- G06F9/44505—Configuring for program initiating, e.g. using registry, configuration files
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
- G06N20/20—Ensemble learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N5/00—Computing arrangements using knowledge-based models
- G06N5/01—Dynamic search techniques; Heuristics; Dynamic trees; Branch-and-bound
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Artificial Intelligence (AREA)
- Computational Linguistics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Medical Informatics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种基于机器学习的ETL任务自动配置方法及装置。通过收集历史数据及对应的配置结果进行机器学习训练得到所述ETL配置模型,并提取所述历史数据的任务关键词组的映射关系作为所述任务规则库;使用任务规则库对目标ETL任务进行匹配,得到不同配置结果的匹配度;当所述不同配置结果的匹配度均小于或等于预设阈值时,使用ETL配置模型为所述目标ETL任务匹配配置结果。既提高了匹配结果的准确性,又将大部分的匹配任务由基于关键词的简单任务规则库实现,在提供匹配结果准确性的前提下,降低了计算性能的消耗。
Description
技术领域
本发明实施例涉及计算机数据处理技术,尤其涉及一种基于机器学习的 ETL任务自动配置方法及装置。
背景技术
ETL(Extract-Transform-Load,数据仓库技术)是将业务系统的数据经过抽取、清洗转换之后加载到数据仓库的过程,目的是将企业中的分散、零乱、标准不统一的数据整合到一起,为企业的决策提供分析依据节。
一般ETL的任务流程需要对每个任务环节的规则进行定义,实现源数据集到目标数据集之间的映射。在形成任务流程的过程中,由于任务数量较多,可能会导致重复地配置部分任务,配置效率较低。
现有以拼接任务的形式,用户通过拖拽操作任务流程组件生成第一任务流程,在任务流程库中通过匹配输入任务流程的元数据与第一任务流程的元数据之间的语义相似度,确定超过语义相似度阈值的输入任务流程作为第二任务流程,将第一任务流程和第二任务流程合并,形成同一任务流程。这种方式可以自动匹配第二任务流程,减少重复配置的操作,增加已有任务的可复用性。
但是,上述语义匹配方式组合任务环节的准确程度较低。
发明内容
本发明实施例提供一种ETL任务自动配置方法,以实现在计算性能没有大幅增加的情况下,提高ETL任务自动配置的准确程度的技术效果。
第一方面,本发明实施例提供了一种ETL任务自动配置方法,包括:
使用基于关键词组匹配的预设任务规则库对目标ETL任务进行匹配,得到不同配置结果的匹配度;
当所述不同配置结果的匹配度均小于或等于预设阈值时,提取所述目标 ETL任务的特征数据;
将所述目标ETL任务的特征数据输入预先训练好的ETL配置模型,得到所述目标ETL任务的配置结果。
优选地,使用基于关键词组匹配的预设任务规则库对目标ETL任务进行匹配,得到不同配置结果的匹配度的步骤之后,还包括:
当所述不同配置结果的匹配度大于所述预设阈值时,使用匹配度最高的匹配结果作为所述目标ETL任务的配置结果。
优选地,使用基于关键词组匹配的预设任务规则库对目标ETL任务进行匹配,得到不同配置结果的匹配度的步骤之前,还包括:
收集历史数据及对应的配置结果进行机器学习训练得到所述ETL配置模型,并提取所述历史数据的任务关键词组的映射关系作为所述任务规则库。
优选地,收集历史数据及对应的配置结果进行机器学习训练得到所述ETL 配置模型,并提取所述历史数据的任务关键词组的映射关系作为所述任务规则库的步骤具体包括:
收集所述历史数据及所述对应的配置结果中的特征数据;
将从所述历史数据至所述对应配置结果的映射规则作为目标变量构建数据集;
将所述数据集按照预设比例划分为训练集、验证集及测试集;
使用随机森林模型对训练集的数据进行学习,使用验证集数据进行模型效果验证,并根据验证结果调节模型参数,使用测试集对参数调节后的模型进行测试,选择匹配度最高的模型及参数作为ETL配置模型;
提取所述历史数据的任务关键词组的映射关系作为所述任务规则库。
优选地,收集所述历史数据及所述对应的配置结果中的特征数据的步骤之后还包括:
对收集到的所述历史数据进行数据清洗,并将清洗后的数据更新至所述历史数据。
优选地,对收集到的所述历史数据进行数据清洗,并将清洗后的数据更新至所述历史数据的步骤具体包括:
获取所述历史数据中的列数据,统计所述列数据中的重复数据并执行去重步骤。
优选地,还包括:
获取所述历史源表中的列数据,统计所述列数据中的连续型数据、所述连续型数据中的缺失值、所述列数据中的离散型数据及所述离散型数据中的缺失值;
将所述连续型数据中的离群值删除作为缺失值,使用该列数据的均值填充所述连续型变量中的缺失值,若该列连续型数据属于时间序列类型,则使用该缺失值的前后两个数据的均值进行填充,并计算所述离散型数据中对应列所有数字的出现频率,使用出现频率最高的数字填充对应列所述离散型数据中的缺失值。
本发明还提出一种服务器,所述服务器包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行ETL任务自动配置程序,所述ETL任务自动配置程序被所述处理器执行时实现如上所述的ETL任务自动配置方法。
本发明还提出一种ETL任务自动配置装置,所述ETL任务自动配置装置包括:
匹配度计算单元,用于使用基于关键词组匹配的预设任务规则库对目标 ETL任务进行匹配,得到不同配置结果的匹配度;
特征提取单元,用于当所述不同配置结果的匹配度均小于或等于预设阈值时,提取所述目标ETL任务的特征数据;
ETL配置单元,用于将所述目标ETL任务的特征数据输入预先训练好的 ETL配置模型,得到所述目标ETL任务的配置结果。
本发明还提出一种可读存储介质,所述可读存储介质上存储有ETL任务自动配置程序,所述ETL任务自动配置程序被处理器执行时实现如上所述的ETL 任务自动配置方法。
本发明实施例通过设定匹配度阈值的方式,将传统关键词组匹配准确性较低的ETL任务采用机器学习训练的方式进行配置,解决了现有技术中传统关键词组匹配的方式准确度低的问题,实现了在不需要大幅增加计算性能的前提下,使用机器学习的方式提高ETL任务配置准确程度的效果。
附图说明
图1是本发明任务自动配置方法中一实施例的流程示意图;
图2是本发明任务自动配置方法中另一实施例的流程示意图;
图3是本发明任务自动配置方法中另一实施例的流程示意图;
图4是本发明任务自动配置方法中模型建立的流程示意图;
图5是本发明任务自动配置装置实施例的结构示意图;
图6是本发明实施例中的服务器结构示意图。
具体实施方式
下面结合附图和实施例对本发明作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部结构。
图1为本发明实施例一提供的一种ETL任务自动配置方法的流程图,本实施例可适用于ETL任务流程的规则定义情况,该方法可以由具备ETL功能的计算设备来执行,具体包括:
S100、使用基于关键词组匹配的预设任务规则库对目标ETL任务进行匹配,得到不同配置结果的匹配度;
需要说明的是,由于任务规则库是基于关键词组进行匹配的方式实现的,因此匹配度的计算仅需根据关键词组在整个业务描述中所占的比例并进行加权后即可得出,所需的计算量极小,能够快速得出配置结果,且由于业务人员对该方式的理解较为深刻,在进行业务描述时能够根据自己对业务的理解,选择更利于任务规则库的描述词汇,进一步提高基于任务规则库的ETL任务匹配的准确程度。
例如,在医疗系统的ETL任务中,hospitalno(varchar)的元数据为医疗机构编码;hospitalname(varchar)的元数据为医疗机构名称,由于关键字的词组相对比较明确,且元数据和表格词组为中英翻译,因此基于关键词组进行匹配的方式其准确率接近100%,而paykind(varchar)的元数据为支付宝类型代码 sys_codeitems.collect code=02_158;其匹配方式的准确率低于预设阈值,此时则需要使用基于机器学习的方法提高匹配结果的准确性。
S200、当所述不同配置结果的匹配度均小于或等于预设阈值时,提取所述目标ETL任务的特征数据;
需要说明的是,当不同配置的匹配结果的匹配度均小于或等于预设阈值时,判断即使匹配度最高的配置结果准确率也比较低,因此为了提高匹配结果的准确性,需要采用其它的匹配方法,本实施例通过采用机器学习的方法提高匹配结果的准确性,因此,需要对目标ETL任务进行预处理,即提取目标ETL任务的特征数据。
S300、将所述目标ETL任务的特征数据输入预先训练好的ETL配置模型,得到所述目标ETL任务的配置结果。
基于机器学习的配置方法会消耗大量的算力,这导致当使用基于机器学习的配置方法时,ETL任务的匹配时间会比较长,而根据统计,在本实施例应用的业务中,根据历史数据的统计得出当匹配度大于90%时通过任务规则库能够实现接近100%正确配置,因此本实施例将预设阈值设置为0.9,以在确保准确程度的前提下,有效利用任务规则库,降低整体的计算量。
本实施例的技术方案,通过根据日常的统计设定预设阈值,在确保准确率的情况下有效的利用了基于关键词组的配置方法,减少了使用机器学习所增加的计算量,在无需升级硬件的前提下,匹配准确程度高的ETL任务能够快速匹配配置结果,匹配程度低的ETL任务通过基于机器学习的ETL配置模型提高配置结果的准确程度,解决了现有技术中ETL任务自动配置的配置结果准确性偏低的技术问题,达到了在不升级硬件的前提下,仅需延长配置结果不准确的ETL 任务的处理时间即可提高ETL任务自动配置的配置结果准确率效果。
参照图2,本发明所提供的ETL任务自动配置方法除了上述步骤S100-S300 还包括以下步骤:
S400、当所述不同配置结果的匹配度大于所述预设阈值时,使用匹配度最高的匹配结果作为所述目标ETL任务的配置结果。
根据对历史数据的统计发现,当存在匹配到的任务不同的情况时,目标ETL 任务与匹配到的两个配置结果的匹配度都较低且较为接近,例如当医院新增支付宝及微信支付时,ETL任务中多出了支付类型现场paykindname(varhar)的配置,其与支付类型代码paykind的差别较小,且无法通过翻译得出,在该情况下,任务规则库需要手动添加映射关系,而基于机器学习的模型则可直接得出,本实施例根据历史数据的统计结果,参考匹配度最高的错误任务设定阈值的最小值;阈值的最高点在本实施例中设定为1,则可得出阈值的取值范围,通常设定值会略高于最小值并取整数,即可实现机器学习任务仅对会可能出现错误的ETL任务进行计算,同时可以通过提高阈值的方式,在牺牲部分ETL 任务处理速度的基础上,实现更高的准确率,在上述示例中,预设阈值被设置为0.9,即存在匹配度达到90%的配置结果时才采用基于任务规则库的配置方法,该阈值为实现更高准确率的阈值,通过调整阈值即可根据设备的计算速度在计算时间与准确率上达到平衡,一定程度上提高了匹配准确率并降低了匹配时间。
具体地,使用基于关键词组匹配的预设任务规则库对目标ETL任务进行匹配,得到不同配置结果的匹配度的步骤之前,还包括:
收集历史数据及对应的配置结果进行机器学习训练得到所述ETL配置模型,并提取所述历史数据的任务关键词组的映射关系作为所述任务规则库。
易于理解的是,历史数据的任务关键词组的映射关系可从元数据中提取,现有技术使用的多为基于关键词组的任务规则库的匹配方式,元数据由数据管理人员或业务人员根据自身理解对表数据的描述信息,对于大多数常见的业务而言,业务人员的描述大多具备较高的准确程度,此时任务规则库匹配的配置结果也具备较高的准确程度,例如:hospitalno(varchar)的元数据为医疗机构编码,其通过任务规则库的匹配结果在历史记录中准确率为100%。
参照图3及图4,收集历史数据及对应的配置结果进行机器学习训练得到所述ETL配置模型,并提取所述历史数据的任务关键词组的映射关系作为所述任务规则库的步骤具体包括:
S110、收集所述历史数据及所述对应的配置结果中的特征数据;
易于理解的是,在使用基于机器学习的模型算法之前,大量ETL任务已通过任务规则库及手动调整匹配了大量的ETL任务,为了随时查询已完成业务的详细信息,数据库中存储了大量已完成的业务数据,其中,历史数据即为ETL 任务的输入数据,对应的配置结果即为ETL任务的配置结果,特征数据至少包括源表的列数据,在本实施例中,还包括:表名、是否有关联表、列名、列类型、是否非空、是否属于外键、是否属于主键等作为特征数据。
S120、将从所述历史数据至所述对应配置结果的映射规则作为目标变量构建数据集;
历史数据包括历史源表和目标表的数据,对应的配置结果为源表到目标表的配置结果,机器学习需要基于现有的原始数据及处理后的数据进行,因此需要历史数据及所述对应的配置结果,且在本实施例中,将映射规则作为目标变量,可以通过参数的调节,一定程度上减少训练的时间,降低计算量。
S130、将所述数据集按照预设比例划分为训练集、验证集及测试集;
由于本实施例在训练过程中需要进行参数的调节,因此需要将数据集划分为训练集、验证集及测试集,在本实施例中,划分比例为6:2:2,当数据量较大时,可以增加训练集的比例,以确保训练结果。
S140、使用随机森林模型对训练集的数据进行学习,使用验证集数据进行模型效果验证,并根据验证结果调节模型参数,使用测试集对参数调节后的模型进行测试,选择匹配度最高的模型及参数作为ETL配置模型;
在模型训练过程中,通过调整模型参数,会训练得到不同效果的模型,选择在测试集上效果最好的模型,可以认为它是泛化性相对最好的一个模型,则将此模型及此模型的配置参数视为匹配度最高的模型及参数作为ETL配置模型。
最后用于实现ETL配置的模型可以实现:输入源表以及目标表的列特征,列特征包含:表名、是否有关联表、列名、列类型、是否非空、是否属于外键、是否属于主键等。通过模型判断,可以输出类似该源表到目标表映射关系最有可能的映射规则类型,如列类型转换、排序、分组等。然后根据指定的列,形成表到表的按列操作的映射规则,实现该ETL任务的自动配置。
易于理解的是,在训练前会根据业务需求设定准确率的目标,通常在验证集得到的模型效果验证不满足设定准确率的目标时会通过调节模型参数的方式进一步提高模型的准确率,因此会将历史数据划分为三个数据集,以满足调节参数前的验证需求及调节参数后的测试需求。
S150、提取所述历史数据的任务关键词组的映射关系作为所述任务规则库。
需要说明的是,由于基于机器学习的匹配方法,哪怕不计算训练模型需要的算力,仅是匹配过程中消耗的算力也高于历史数据任务规则库所消耗的算力,在计算性能不进行大幅提升的情况下,为了保障处理效率,仍然需要任务规则库来提高处理速度。
本实施例通过公开具体的训练步骤,完善了技术方案,并通过设置验证集与测试集,分别通过训练和参数调整进一步提高了模型的准确性,提升了整体方案下配置结果的准确性,提高了ETL任务自动配置的配置效果,提升了用户体验。
本发明,在上述收集所述历史数据及所述对应的配置结果中的特征数据的步骤之后,还包括以下步骤:
S111、对收集到的所述历史数据进行数据清洗,并将清洗后的数据更新至所述历史数据。
值得强调的是,由于历史数据通常存在一些数据缺失和数据重复的情况,这些问题对基于任务关键词组的映射关系的匹配方法影响较小,但对机器学习的干扰较大,因此需要对其进行数据清洗,通过提高训练数据准确程度的方法提高训练结果的准确率。
具体地,对收集到的所述历史数据进行数据清洗,并将清洗后的数据更新至所述历史数据的步骤具体包括:
S112、获取所述历史数据中的列数据,统计所述列数据中的重复数据并执行去重步骤。
易于理解的是,重复数据会造成重复的样本在机器学习的比重上升,模型会对该样本过度学习,有过拟合的可能,假如一部分出现在训练集中,另外一些重复的样本出现在测试集中,也会出现数据泄露的风险,因此需要执行去重步骤,在本实施例中,去重方法包括仅保留第一条以及根据相关信息匹配合并去重。
具体地,还包括:
S113、获取所述历史源表中的列数据,统计所述列数据中的连续型数据、所述连续型数据中的缺失值、所述列数据中的离散型数据及所述离散型数据中的缺失值;
需要说明的是,在本实施例中,连续型数据可以为存在时间序列的连续数据;当数据总量大的时候,存在缺失数据的样本比例不高,数据的样本可以直接删除,而当数据总量较小时,为了提高样本的数量,需要对缺失数据进行合理的补充、完善;离散型数据中,数据缺乏规律,难以使用相邻数据估算缺失数据,通常在该种情况下,该样本会被执行删除操作,当样本数量严重不足时才需要补充缺失数据。
S114、将所述连续型数据中的离群值删除作为缺失值,使用该列数据的均值填充所述连续型变量中的缺失值,若该列连续型数据属于时间序列类型,则使用该缺失值的前后两个数据的均值进行填充,并计算所述离散型数据中对应列所有数字的出现频率,使用出现频率最高的数字填充对应列所述离散型数据中的缺失值。
易于理解的是,在时间序列类型的连续型数据中,除了峰谷端点的数据以外,缺失数据大多存在于相邻的数据之间,因此将相邻数据的均值作为缺失数据的值,误差较小,即使是峰谷端点的数据,也能够实现较小的误差。
当离散型数据中存在缺失数据的样本没有被删除时,则通过统计该样本缺失数据部分的离散型数据中各个数据的出现频率此时可以使用频率最高的数据对缺失数据进行补充。
在初次训练时,由于样本数量较少,当发现有缺失数据及重复数据时会先发送至业务人员处,待补充完成后,或是进行自动补充完成后,发送至业务人员确认数据是否差距过大,当返回存在差距过大的数据且无法补充时,则删除该样本。
本实施例通过公开详细的数据清洗的具体方式,完善了技术方案,一定程度上提高了ETL任务自动匹配的速度与准确程度,同时公开了收集历史数据及对应的配置结果中的特征数据的详细信息及训练过程,使得机器学习的训练能够根据ETL任务的情况进行调整,并且随着处理完成的任务越来越多,历史数据以及对应的配置结果也越来越多,训练的模型更加准确,达到最终匹配的配置结果也越来越准确的效果。
参照图5,本发明还提出一种ETL任务自动配置装置,所述ETL任务自动配置装置包括:
匹配度计算单元10,用于使用基于关键词组匹配的预设任务规则库对目标 ETL任务进行匹配,得到不同配置结果的匹配度;
特征提取单元20,用于当所述不同配置结果的匹配度均小于或等于预设阈值时,提取所述目标ETL任务的特征数据;
ETL配置单元30,用于将所述目标ETL任务的特征数据输入预先训练好的ETL配置模型,得到所述目标ETL任务的配置结果。
本发明实施例所提供的ETL任务自动配置装置可执行本发明任意实施例所提供的ETL任务自动配置方法,具备执行方法相应的功能模块和有益效果,在此不再一一赘述。
图6为本发明实施例C提供的一种服务器的结构示意图,如图6所示,该服务器包括处理器70、存储器71、输入装置72和输出装置73;服务器中处理器70的数量可以是一个或多个,图6中以一个处理器70为例;服务器中的处理器70、存储器71、输入装置72和输出装置73可以通过总线或其他方式连接,图6中以通过总线连接为例。
存储器71作为一种计算机可读存储介质,可用于存储软件程序、计算机可执行程序以及模块,如本发明实施例中的ETL任务自动配置方法对应的程序指令。处理器70通过运行存储在存储器71中的软件程序、指令以及模块,从而执行服务器的各种功能应用以及数据处理,即实现上述的ETL任务自动配置方法。
存储器71可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序;存储数据区可存储根据终端的使用所创建的数据等。此外,存储器71可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实例中,存储器71可进一步包括相对于处理器70远程设置的存储器,这些远程存储器可以通过网络连接至服务器。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
输入装置72可用于接收输入的数字或字符信息,以及产生与服务器的用户设置以及功能控制有关的键信号输入。输出装置73可包括显示屏等显示服务器。
本发明实施例还提供一种包含计算机可执行指令的存储介质,所述计算机可执行指令在由计算机处理器执行时用于执行一种ETL任务自动配置方法,该方法包括:
使用基于关键词组匹配的预设任务规则库对目标ETL任务进行匹配,得到不同配置结果的匹配度;
当所述不同配置结果的匹配度均小于或等于预设阈值时,提取所述目标 ETL任务的特征数据;
将所述目标ETL任务的特征数据输入预先训练好的ETL配置模型,得到所述目标ETL任务的配置结果。
具体地,使用基于关键词组匹配的预设任务规则库对目标ETL任务进行匹配,得到不同配置结果的匹配度的步骤之后,还包括:
当所述不同配置结果的匹配度大于所述预设阈值时,使用匹配度最高的匹配结果作为所述目标ETL任务的配置结果。
具体地,使用基于关键词组匹配的预设任务规则库对目标ETL任务进行匹配,得到不同配置结果的匹配度的步骤之前,还包括:
收集历史数据及对应的配置结果进行机器学习训练得到所述ETL配置模型,并提取所述历史数据的任务关键词组的映射关系作为所述任务规则库。
具体地,收集历史数据及对应的配置结果进行机器学习训练得到所述ETL 配置模型,并提取所述历史数据的任务关键词组的映射关系作为所述任务规则库的步骤具体包括:
收集所述历史数据及所述对应的配置结果中的特征数据;
将从所述历史数据至所述对应配置结果的映射规则作为目标变量构建数据集;
将所述数据集按照预设比例划分为训练集、验证集及测试集;
使用随机森林模型对训练集的数据进行学习,使用验证集数据进行模型效果验证,并根据验证结果调节模型参数,使用测试集对参数调节后的模型进行测试,选择匹配度最高的模型及参数作为ETL配置模型;
提取所述历史数据的任务关键词组的映射关系作为所述任务规则库。
具体地,收集所述历史数据及所述对应的配置结果中的特征数据的步骤之后还包括:
对收集到的所述历史数据进行数据清洗,并将清洗后的数据更新至所述历史数据。
具体地,对收集到的所述历史数据进行数据清洗,并将清洗后的数据更新至所述历史数据的步骤具体包括:
获取所述历史数据中的列数据,统计所述列数据中的重复数据并执行去重步骤。
具体地,还包括:
获取所述历史源表中的列数据,统计所述列数据中的连续型数据、所述连续型数据中的缺失值、所述列数据中的离散型数据及所述离散型数据中的缺失值;
将所述连续型数据中的离群值删除作为缺失值,使用该列数据的均值填充所述连续型变量中的缺失值,若该列连续型数据属于时间序列类型,则使用该缺失值的前后两个数据的均值进行填充,并计算所述离散型数据中对应列所有数字的出现频率,使用出现频率最高的数字填充对应列所述离散型数据中的缺失值。
当然,本发明实施例所提供的一种包含计算机可执行指令的存储介质,其计算机可执行指令不限于如上所述的方法操作,还可以执行本发明任意实施例所提供的ETL任务自动配置方法中的相关操作,具备执行方法相应的功能模块和有益效果,在此不再一一赘述。
通过以上关于实施方式的描述,所属领域的技术人员可以清楚地了解到,本发明可借助软件及必需的通用硬件来实现,当然也可以通过硬件实现,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如计算机的软盘、只读存储器 (Read-Only Memory,ROM)、随机存取存储器(RandomAccess Memory, RAM)、闪存(FLASH)、硬盘或光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
值得注意的是,上述搜索装置的实施例中,所包括的各个单元和模块只是按照功能逻辑进行划分的,但并不局限于上述的划分,只要能够实现相应的功能即可;另外,各功能单元的具体名称也只是为了便于相互区分,并不用于限制本发明的保护范围。
注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。
Claims (10)
1.一种ETL任务自动配置方法,其特征在于,包括:
使用基于关键词组匹配的预设任务规则库对目标ETL任务进行匹配,得到不同配置结果的匹配度;
当所述不同配置结果的匹配度均小于或等于预设阈值时,提取所述目标ETL任务的特征数据;
将所述目标ETL任务的特征数据输入预先训练好的ETL配置模型,得到所述目标ETL任务的配置结果。
2.根据权利要求1所述的ETL任务自动配置方法,其特征在于,使用基于关键词组匹配的预设任务规则库对目标ETL任务进行匹配,得到不同配置结果的匹配度的步骤之后,还包括:
当所述不同配置结果的匹配度大于所述预设阈值时,使用匹配度最高的匹配结果作为所述目标ETL任务的配置结果。
3.根据权利要求1所述的ETL任务自动配置方法,其特征在于,使用基于关键词组匹配的预设任务规则库对目标ETL任务进行匹配,得到不同配置结果的匹配度的步骤之前,还包括:
收集历史数据及对应的配置结果进行机器学习训练得到所述ETL配置模型,并提取所述历史数据的任务关键词组的映射关系作为所述任务规则库。
4.根据权利要求3所述的ETL任务自动配置方法,其特征在于,收集历史数据及对应的配置结果进行机器学习训练得到所述ETL配置模型,并提取所述历史数据的任务关键词组的映射关系作为所述任务规则库的步骤具体包括:
收集所述历史数据及所述对应的配置结果中的特征数据;
将从所述历史数据至所述对应配置结果的映射规则作为目标变量构建数据集;
将所述数据集按照预设比例划分为训练集、验证集及测试集;
使用随机森林模型对训练集的数据进行学习,使用验证集数据进行模型效果验证,并根据验证结果调节模型参数,使用测试集对参数调节后的模型进行测试,选择匹配度最高的模型及参数作为ETL配置模型;
提取所述历史数据的任务关键词组的映射关系作为所述任务规则库。
5.根据权利要求4所述的ETL任务自动配置方法,其特征在于,收集所述历史数据及所述对应的配置结果中的特征数据的步骤之后还包括:
对收集到的所述历史数据进行数据清洗,并将清洗后的数据更新至所述历史数据。
6.根据权利要求5所述的ETL任务自动配置方法,其特征在于,对收集到的所述历史数据进行数据清洗,并将清洗后的数据更新至所述历史数据的步骤具体包括:
获取所述历史数据中的列数据,统计所述列数据中的重复数据并执行去重步骤。
7.根据权利要求5所述的ETL任务自动配置方法,其特征在于,还包括:
获取所述历史源表中的列数据,统计所述列数据中的连续型数据、所述连续型数据中的缺失值、所述列数据中的离散型数据及所述离散型数据中的缺失值;
将所述连续型数据中的离群值删除作为缺失值,使用该列数据的均值填充所述连续型变量中的缺失值,若该列连续型数据属于时间序列类型,则使用该缺失值的前后两个数据的均值进行填充,并计算所述离散型数据中对应列所有数字的出现频率,使用出现频率最高的数字填充对应列所述离散型数据中的缺失值。
8.一种服务器,其特征在于,所述服务器包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行ETL任务自动配置程序,所述ETL任务自动配置程序被所述处理器执行时实现如权利要求1至7中任一项所述的ETL任务自动配置方法。
9.一种ETL任务自动配置装置,其特征在于,所述ETL任务自动配置装置包括:
匹配度计算单元,用于使用基于关键词组匹配的预设任务规则库对目标ETL任务进行匹配,得到不同配置结果的匹配度;
特征提取单元,用于当所述不同配置结果的匹配度均小于或等于预设阈值时,提取所述目标ETL任务的特征数据;
ETL配置单元,用于将所述目标ETL任务的特征数据输入预先训练好的ETL配置模型,得到所述目标ETL任务的配置结果。
10.一种可读存储介质,其特征在于,所述可读存储介质上存储有ETL任务自动配置程序,所述ETL任务自动配置程序被处理器执行时实现根据权利要求1至7中任一项所述的ETL任务自动配置方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111406008.4A CN114138743A (zh) | 2021-11-24 | 2021-11-24 | 基于机器学习的etl任务自动配置方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111406008.4A CN114138743A (zh) | 2021-11-24 | 2021-11-24 | 基于机器学习的etl任务自动配置方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114138743A true CN114138743A (zh) | 2022-03-04 |
Family
ID=80391285
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111406008.4A Pending CN114138743A (zh) | 2021-11-24 | 2021-11-24 | 基于机器学习的etl任务自动配置方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114138743A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115052035A (zh) * | 2022-05-13 | 2022-09-13 | 北京大豪工缝智控科技有限公司 | 消息推送方法、设备及存储介质 |
-
2021
- 2021-11-24 CN CN202111406008.4A patent/CN114138743A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115052035A (zh) * | 2022-05-13 | 2022-09-13 | 北京大豪工缝智控科技有限公司 | 消息推送方法、设备及存储介质 |
CN115052035B (zh) * | 2022-05-13 | 2024-05-31 | 北京大豪工缝智控科技有限公司 | 消息推送方法、设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102880501B (zh) | 应用推荐的实现方法、装置和系统 | |
CN109241068B (zh) | 前后台数据比对的方法、装置及终端设备 | |
CN112445875B (zh) | 数据关联及检验方法、装置、电子设备及存储介质 | |
CN108898476A (zh) | 一种贷款客户信用评分方法和装置 | |
WO2020233360A1 (zh) | 一种产品测评模型的生成方法及设备 | |
CN112507098B (zh) | 问题处理方法、装置、电子设备、存储介质及程序产品 | |
WO2019062012A1 (zh) | 问题联想推送方法、电子装置及计算机可读存储介质 | |
CN110347724A (zh) | 异常行为识别方法、装置、电子设备及介质 | |
CN114205690A (zh) | 流量预测、模型训练方法及装置、电子设备、存储介质 | |
CN108133390A (zh) | 用于预测用户行为的方法和装置以及计算设备 | |
CN113570437A (zh) | 一种产品推荐方法和装置 | |
CN114138743A (zh) | 基于机器学习的etl任务自动配置方法及装置 | |
CN116579671B (zh) | 一种自动匹配指标的绩效考核方法、系统、终端及存储介质 | |
CN116485019A (zh) | 一种数据处理方法及装置 | |
CN109308565B (zh) | 人群绩效等级识别方法、装置、存储介质及计算机设备 | |
CN116484230B (zh) | 识别异常业务数据的方法及ai数字人的训练方法 | |
CN111177188A (zh) | 一种基于聚合边与时序聚合边的快速海量时序数据处理方法 | |
CN116738972B (zh) | 基于人工智能的药学服务推广分析方法 | |
CN117390170B (zh) | 数据标准的对标方法、装置、电子设备和可读存储介质 | |
CN113743124B (zh) | 一种智能问答异常的处理方法、装置及电子设备 | |
CN117540004B (zh) | 基于知识图谱和用户行为的工业领域智能问答方法及系统 | |
CN113837183B (zh) | 基于实时挖掘的多阶段凭证智能生成方法、系统及介质 | |
CN113486145A (zh) | 基于网络节点的用户咨询回复方法、装置、设备及介质 | |
CN115858992A (zh) | 自动化计算方法、装置及服务器 | |
CN116756419A (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 |