首页> 中国专利> 基于自定义规则的ETL任务失败平台处理方法及系统

基于自定义规则的ETL任务失败平台处理方法及系统

摘要

基于自定义规则的ETL任务失败平台处理方法及系统,对数据源的质量进行评估,预设所述数据源的融合策略,所述数据源的融合策略包括:只补全但不能新增、只新增但不能修改、新增且能补全和新增且能修改;根据客户字段的特性制定客户字段的融合策略,所述客户字段的融合策略包括只新增但不能修改、只补全但不能更新、只更新但不能被清空和完全更新。本发明对各个数据源进行质量评估,保证数据在融合后的质量,避免低质的数据源将高质的数据源的数据覆盖,确保数据的质量,减少人力介入,且能够对已有客户数据特殊字段进行保护。

著录项

  • 公开/公告号CN113127467A

    专利类型发明专利

  • 公开/公告日2021-07-16

    原文格式PDF

  • 申请/专利权人 赛诺数据科技(南京)有限公司;

    申请/专利号CN202110426382.4

  • 发明设计人 孟艳冬;李武卿;

    申请日2021-04-20

  • 分类号G06F16/215(20190101);G06F16/25(20190101);

  • 代理机构11577 北京知呱呱知识产权代理有限公司;

  • 代理人孙志一

  • 地址 210043 江苏省南京市江北新区星火路20号星火创业大厦3栋501室

  • 入库时间 2023-06-19 11:52:33

说明书

技术领域

本发明涉及大数据处理技术领域,具体涉及一种基于自定义规则的ETL任务失败平台处理方法及系统。

背景技术

目前,ETL任务用于定义数据的抽取,转换及装载规则。而ETL任务调度用于控制ETL任务的启动运行(启动时间、运行周期及触发条件),实现数据的传输转换操作。ETL调度按照功能复杂度分为简单定时调度和工作流调度二种方式,定时调度用于控制ETL任务按照某一时间属性周期运行,如在每个工作日的19点启动交易数据采集任务或每月1号启动报表数据汇总任务。工作流调度采用模块化方法对ETL过程涉及的各个环节进行协同管理,将ETL整个过程分解为多个数据处理子任务。

现有的多数据源客户数据融合的方法,主要在各个数据源中抽取需要的字段,配置好相关的映射后数据统一进入数据湖中。各个数据源缺乏质量评估,不能保证数据在融合后的质量,存在低质的数据源将高质的数据源的数据覆盖的问题。为了确保数据的质量,需要大量的人力介入。没有对数据源的质量做出评估。低质量的数据,可能会覆盖高质量的数据。缺少针对系统中已有客户数据特殊字段的保护措施。

发明内容

为此,本发明提供一种基于自定义规则的ETL任务失败平台处理方法及系统,以解决现有技术中不能保证数据在融合后的质量,存在低质的数据源将高质的数据源的数据覆盖,及对已有客户数据特殊字段缺少保护措施的问题。

为了实现上述目的,本发明提供如下技术方案:基于自定义规则的ETL任务失败平台处理方法,包括以下步骤:

对数据源的质量进行评估,预设所述数据源的融合策略,所述数据源的融合策略包括:只补全但不能新增、只新增但不能修改、新增且能补全和新增且能修改;

根据客户字段的特性制定客户字段的融合策略,所述客户字段的融合策略包括只新增但不能修改、只补全但不能更新、只更新但不能被清空和完全更新。

作为基于自定义规则的ETL任务失败平台处理方法的优选方案,当所述数据源的数据质量低于预设指标时,执行所述只补全但不能新增的数据源的融合策略。

作为基于自定义规则的ETL任务失败平台处理方法的优选方案,当所述数据源的数据质量低于已有数据时,执行所述只新增但不能修改的数据源的融合策略。

作为基于自定义规则的ETL任务失败平台处理方法的优选方案,所述新增且能补全的数据源的融合策略为:只补充缺少的数据字段内容,不允许覆盖存在数据的字段内容。

作为基于自定义规则的ETL任务失败平台处理方法的优选方案,当所述数据源的数据质量高于预设指标时,执行所述新增且能修改的数据源的融合策略。

作为基于自定义规则的ETL任务失败平台处理方法的优选方案,所述只新增但不能修改的客户字段的融合策略为:数据字段只能在进入系统时设定,当数据字段确定后不能被执行数据更新和清除。

作为基于自定义规则的ETL任务失败平台处理方法的优选方案,所述只补全但不能更新的客户字段的融合策略为:数据字段如果缺少或空值时,允许被指定数据补全,数据字段有值时不能被更新。

作为基于自定义规则的ETL任务失败平台处理方法的优选方案,所述只更新但不能被清空的客户字段的融合策略为:数据字段允许被更新和补全,但数据字段不允许被清空。

作为基于自定义规则的ETL任务失败平台处理方法的优选方案,所述完全更新的客户字段的融合策略为:数据字段允许清空或更新。

本发明还提供一种基于自定义规则的ETL任务失败平台处理系统,采用上述的基于自定义规则的ETL任务失败平台处理方法,包括:

数据源融合单元,用于对数据源的质量进行评估,预设所述数据源的融合策略,所述数据源的融合策略包括:只补全但不能新增、只新增但不能修改、新增且能补全和新增且能修改;

客户字段融合单元,用于根据客户字段的特性制定客户字段的融合策略,所述客户字段的融合策略包括只新增但不能修改、只补全但不能更新、只更新但不能被清空和完全更新。

本发明具有如下优点:对数据源的质量进行评估,预设所述数据源的融合策略,所述数据源的融合策略包括:只补全但不能新增、只新增但不能修改、新增且能补全和新增且能修改;根据客户字段的特性制定客户字段的融合策略,所述客户字段的融合策略包括只新增但不能修改、只补全但不能更新、只更新但不能被清空和完全更新。本发明对各个数据源进行质量评估,保证数据在融合后的质量,避免低质的数据源将高质的数据源的数据覆盖,确保数据的质量,减少人力介入,且能够对已有客户数据特殊字段进行保护。

附图说明

为了更清楚地说明本发明的实施方式或现有技术中的技术方案,下面将对实施方式或现有技术描述中所需要使用的附图作简单地介绍。显而易见地,下面描述中的附图仅仅是示例性的,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图引伸获得其它的实施附图。

本说明书所绘示的结构、比例、大小等,均仅用以配合说明书所揭示的内容,以供熟悉此技术的人士了解与阅读,并非用以限定本发明可实施的限定条件,故不具技术上的实质意义,任何结构的修饰、比例关系的改变或大小的调整,在不影响本发明所能产生的功效及所能达成的目的下,均应仍落在本发明所揭示的技术内容能涵盖的范围内。

图1为本发明实施例中提供的基于自定义规则的ETL任务失败平台处理方法示意图;

图2为本发明实施例中提供的基于自定义规则的ETL任务失败平台处理流程示意图;

图3为本发明实施例中提供的基于自定义规则的ETL任务失败平台处理系统流程示意图。

具体实施方式

以下由特定的具体实施例说明本发明的实施方式,熟悉此技术的人士可由本说明书所揭露的内容轻易地了解本发明的其他优点及功效,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

实施例1

参见图1和图2,提供一种基于自定义规则的ETL任务失败平台处理方法,包括以下步骤:

S1、对数据源的质量进行评估,预设所述数据源的融合策略,所述数据源的融合策略包括:只补全但不能新增、只新增但不能修改、新增且能补全和新增且能修改;

S2、根据客户字段的特性制定客户字段的融合策略,所述客户字段的融合策略包括只新增但不能修改、只补全但不能更新、只更新但不能被清空和完全更新。

本实施例中,当所述数据源的数据质量低于预设指标时,执行所述只补全但不能新增的数据源的融合策略。将数据源的融合策略只补全但不能新增定义为规则1,当数据源质量较差时,只允许将已有数据中缺少的客户数据字段补全,不允许新增数据。

本实施例中,当所述数据源的数据质量低于已有数据时,执行所述只新增但不能修改的数据源的融合策略。将数据源的融合策略只新增但不能修改定义为规则2,当数据源的数据质量低于已有数据时,不能修改已有数据,只有新数据时才可以入库。

本实施例中,所述新增且能补全的数据源的融合策略为:只补充缺少的数据字段内容,不允许覆盖存在数据的字段内容。将数据源的融合策略新增且能补全定义为规则3,数据源的数据可以新增到数据库中,也可以将已有的数据进行补全,补全过程中,只补充缺少的数据字段内容,不允许覆盖有数据的字段内容。

本实施例中,当所述数据源的数据质量高于预设指标时,执行所述新增且能修改的数据源的融合策略。将数据源的融合策略新增且能修改定义为规则4,当数据源的数据质量很高时,可以新增、并且可以补全和更改的已有的数据。

具体的,数据源的规则权限向上兼容,依次为:4→3→2→1(→为包含)。

本实施例中,所述只新增但不能修改的客户字段的融合策略为:数据字段只能在进入系统时设定,当数据字段确定后不能被执行数据更新和清除。将客户字段的融合策略只新增但不能修改定义为规则A,此类数据字段只能进入系统时设定,一旦确定不能被任何数据更新和清除。

本实施例中,所述只补全但不能更新的客户字段的融合策略为:数据字段如果缺少或空值时,允许被指定数据补全,数据字段有值时不能被更新。将客户字段的融合策略只补全但不能更新定义为规则B,此类数据字段如果缺少或空值时,可以被其他数据补全,字段有值时不能被更新。

本实施例中,所述只更新但不能被清空的客户字段的融合策略为:数据字段允许被更新和补全,但数据字段不允许被清空。将客户字段的融合策略只更新但不能被清空定义为规则C,此类数据字段可以被更新和补全,但不可以被清空。

本实施例中,所述完全更新的客户字段的融合策略为:数据字段允许清空或更新。将客户字段的融合策略完全更新定义为规则D,此类数据字段允许清空或更新。

具体的,客户字段的规则权限向上兼容,依次为:D→C→B→A(→为包含)。

辅助图2,本技术方案的一个应用过程中,API(应用程序编程接口)接收联系人(storage),发送联系人Kafka消息(storage),接收Kafka消息(Spark),根据数据源保存备份(Spark),加入时间截(Spark),判定是否匹配到联系人,当匹配到联系人,判定是否执行只补全策略,当执行只补全策略时进行字段比对(Spark),字段比对过程中判断是否执行只更新策略,并进一步判断是否执行完全更新策略,执行完全更新策略则清空或更新字段,不执行完全更新策略则更新值变化的字段,若不执行只更新策略,则补全空字段,同时清空或更新字段、更新值变化的字段及补全空字段后记录修改日志,然后更新联系人(Spark),修改Mapping。当没有匹配到联系人时,新增联系人(Spark),然后再修改Mapping。其中,storage代表存储函数,Spark代表Spark函数。

本发明对数据源的质量进行评估,预设所述数据源的融合策略,所述数据源的融合策略包括:只补全但不能新增、只新增但不能修改、新增且能补全和新增且能修改;根据客户字段的特性制定客户字段的融合策略,所述客户字段的融合策略包括只新增但不能修改、只补全但不能更新、只更新但不能被清空和完全更新。其中,数据源融合策略是指针对数据源的质量做出评估,制定相应的策略保证数据融合的质量。客户字段融合策略是数据融合前根据客户字段的特性,制定相应的策略保证特殊字段数据在融合后的准确性。规则的组合有效的保证了数据完整和一致性。本发明对各个数据源进行质量评估,保证数据在融合后的质量,避免低质的数据源将高质的数据源的数据覆盖,确保数据的质量,减少人力介入,且能够对已有客户数据特殊字段进行保护。

实施例2

参见图3,本发明还提供一种基于自定义规则的ETL任务失败平台处理系统,采用上述的基于自定义规则的ETL任务失败平台处理方法,包括:

数据源融合单元1,用于对数据源的质量进行评估,预设所述数据源的融合策略,所述数据源的融合策略包括:只补全但不能新增、只新增但不能修改、新增且能补全和新增且能修改;

客户字段融合单元2,用于根据客户字段的特性制定客户字段的融合策略,所述客户字段的融合策略包括只新增但不能修改、只补全但不能更新、只更新但不能被清空和完全更新。

需要说明的是,上述装置各模块/单元之间的信息交互、执行过程等内容,由于与本申请实施例1中的方法实施例基于同一构思,其带来的技术效果与本申请方法实施例相同,具体内容可参见本申请前述所示的方法实施例中的叙述,此处不再赘述。

实施例3

本发明实施例3提供一种计算机可读存储介质,所述计算机可读存储介质中存储用于基于自定义规则的ETL任务失败平台处理方法的程序代码,所述程序代码包括用于执行实施例1或其任意可能实现方式的基于自定义规则的ETL任务失败平台处理方法的指令。

计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘(SolidStateDisk、SSD))等。

实施例4

本发明实施例4提供一种电子设备,所述电子设备包括处理器,所述处理器与存储介质耦合,当所述处理器执行存储介质中的指令时,使得所述电子设备执行实施例1或其任意可能实现方式的基于自定义规则的ETL任务失败平台处理方法。

具体的,处理器可以通过硬件来实现也可以通过软件来实现,当通过硬件实现时,该处理器可以是逻辑电路、集成电路等;当通过软件来实现时,该处理器可以是一个通用处理器,通过读取存储器中存储的软件代码来实现,该存储器可以集成在处理器中,可以位于所述处理器之外,独立存在。

在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本发明实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。

显然,本领域的技术人员应该明白,上述的本发明的各单元或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。

虽然,上文中已经用一般性说明及具体实施例对本发明作了详尽的描述,但在本发明基础上,可以对之作一些修改或改进,这对本领域技术人员而言是显而易见的。因此,在不偏离本发明精神的基础上所做的这些修改或改进,均属于本发明要求保护的范围。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号