掌桥专利:专业的专利平台
掌桥专利
首页

数据处理的方法、装置、设备、存储介质及程序产品

文献发布时间:2023-06-19 11:19:16


数据处理的方法、装置、设备、存储介质及程序产品

技术领域

本申请涉及计算机技术中的大数据技术,尤其涉及一种数据处理的方法、装置、设备、存储介质及程序产品。

背景技术

目前,在很多应用场景中都有对数据进行整合处理的需求。比如,一些应用场景中需要对海量的数据进行挖掘,得到有价值的信息。

现有技术中,数据挖掘平台可以接收数据源提供的数据,并基于固定的流程对数据进行挖掘处理。

但是,当需求发生变更时,整个数据处理流程也需要调整,这种情况下,就需要重启数据处理的任务。重启数据处理的任务会导致任务中断时间较长,进而导致数据源提供的数据发生堆积情况。当任务重新启动后,需要处理这些堆积数据,无法保证数据处理结果的实时性。

发明内容

本申请提供了一种数据处理的方法、装置、设备、存储介质及程序产品,以解决现有技术中对数据处理任务的处理流程进行调整时,无法保证处理结果实时性的问题。

根据本申请的第一方面,提供了一种数据处理的方法,包括:

响应于数据处理任务的配置信息更改的操作,在配置中心存储更改后的配置信息;

在当前基于任务执行流程执行的所述数据处理任务执行完毕后,从所述配置中心获取所述更改后的配置信息;所述任务执行流程包括执行所述数据处理任务的数据处理过程;

根据所述更改后的配置信息更新所述任务执行流程,并根据更新后的任务执行流程获取并处理与所述数据处理任务对应的待处理数据。

根据本申请的第二方面,提供了一种数据处理的装置,包括:

信息更改单元,用于响应于数据处理任务的配置信息更改的操作,在配置中心存储更改后的配置信息;

信息获取单元,用于在当前基于任务执行流程执行的所述数据处理任务执行完毕后,从所述配置中心获取所述更改后的配置信息;所述任务执行流程包括执行所述数据处理任务的数据处理过程;

流程更新单元,用于根据所述更改后的配置信息更新所述任务执行流程;

执行单元,用于根据更新后的任务执行流程获取并处理与所述数据处理任务对应的待处理数据。

根据本申请的第三方面,提供了一种电子设备,包括:

至少一个处理器;以及

与所述至少一个处理器通信连接的存储器;其中,

所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行如第一方面所述的数据处理的方法。

根据本申请的第四方面,提供了一种计算机程序产品,所述计算机程序产品包括:计算机程序,所述计算机程序存储在可读存储介质中,电子设备的至少一个处理器可以从所述可读存储介质读取所述计算机程序,所述至少一个处理器执行所述计算机程序使得电子设备执行第一方面所述的数据处理的方法。

根据本申请的第五方面,提供了一种计算机程序产品,包括计算机程序,所述计算机程序在被处理器执行时实现如第一方面所述的数据处理的方法。

本申请提供的数据处理的方法、装置、设备、存储介质及程序产品,包括:响应于数据处理任务的配置信息更改的操作,在配置中心存储更改后的配置信息;在当前基于任务执行流程执行的数据处理任务执行完毕后,从配置中心获取更改后的配置信息;任务执行流程包括执行数据处理任务的数据处理过程;根据更改后的配置信息更新任务执行流程,并根据更新后的任务执行流程获取并处理与数据处理任务对应的待处理数据。本申请提供的方案中,设置有用于存储任务配置信息的配置中心,当配置中心中的配置信息被更改后,可以从配置中心获取更改后的配置信息,并根据更改后的配置信息更新任务执行流程,从而可以根据更新后的任务执行流程执行任务,这种处理方式不需要重启任务,从而能够保证挖掘有效信息的实时性。

应当理解,本部分所描述的内容并非旨在标识本申请的实施例的关键或重要特征,也不用于限制本申请的范围。本申请的其它特征将通过以下的说明书而变得容易理解。

附图说明

附图用于更好地理解本方案,不构成对本申请的限定。其中:

图1为本申请一示例性实施例示出的数据处理的方法的流程图;

图2为本申请一示例性实施例示出的数据挖掘平台示意图;

图3为本申请一示例性实施例示出的任务执行流程更新示意图;

图4为本申请另一示例性实施例示出的数据处理的方法的流程图;

图5为本申请一示例性实施例示出的任务执行流程的示意图;

图6为本申请又一示例性实施例示出的数据处理的方法的流程图;

图7为本申请一示例性实施例示出的数据处理的装置的结构图;

图8为本申请一示例性实施例示出的数据处理的装置的结构图;

图9是用来实现本申请实施例的数据处理的方法的电子设备的框图。

具体实施方式

以下结合附图对本申请的示范性实施例做出说明,其中包括本申请实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本申请的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。

目前,随着网络的普及,互联网的应用领域和用户也越来越广泛,因此,每天在互联网中都能够产生海量的数据。为了高效的利用这些数据,现有技术中存在一些数据挖掘平台,数据挖掘平台能够对互联网中产生的数据进行处理,挖掘有效信息。

一般情况下,在数据挖掘平台中设置有固定的数据处理流程,当数据处理流程需要变更时,需要重启数据处理任务,这就导致数据处理任务被中断。比如,一些数据挖掘平台重启任务的耗时是小时级别的,这就导致任务被中断数小时。

而由于网络数据更新速度快,对网络数据进行挖掘的时效性要求较高。比如,若挖掘任务中断时间较长,则重启任务后得到的有效信息相较于当前时间是滞后的,这就无法保证挖掘有效信息的实时性。

为了解决上述技术问题,本申请提供的方案中,能够根据数据处理任务的配置信息生成任务执行流程,并在该配置信息变更后,可以更新任务执行流程,从而可以根据更新后的任务执行流程执行任务,这种处理方式不需要重启任务,从而能够保证挖掘有效信息的实时性。

本申请提供一种数据处理的方法、装置、设备、存储介质及程序产品,应用于计算机技术中的大数据技术,以达到对数据处理任务的处理流程进行调整时,保证处理结果实时性的效果。

图1为本申请一示例性实施例示出的数据处理的方法的流程图。

如图1所示,本申请提供的数据处理的方法,包括:

步骤101,响应于数据处理任务的配置信息更改的操作,在配置中心存储更改后的配置信息。

其中,本申请提供的方法可以应用于数据挖掘平台,该数据挖掘平台可以由一台或者多台具备计算能力的电子设备组成。数据挖掘平台中可以运行至少一个数据处理任务。

图2为本申请一示例性实施例示出的数据挖掘平台示意图。

如图2所示,在数据挖掘平台20中可以设置配置中心21,配置中心21中可以存储与各个数据处理任务对应的配置信息。比如,当前存在两个数据处理任务,则在配置中心中可以存储与这两个数据处理任务分别对应的配置信息。

将各个数据处理任务的配置信息集中存储到配置中心中,便于对配置信息的集中维护。

具体的,还可以设置与配置中心21对应的配置页面,用户可以在配置页面中设置与数据处理任务对应的配置信息。比如,用户可以操作用户终端,使用户终端向数据挖掘平台发送配置请求,数据挖掘平台能够向用户终端下发配置页面,用户可以操作用户终端显示的配置页面,在其中填写与数据处理任务对应的配置信息。

进一步的,配置页面中可以显示预设的配置模板,用户在操作配置页面时,可以在预设模板中填写配置信息。若用户对已有的配置信息进行修改,则数据挖掘平台向用户终端下发的配置页面中,可以包括配置信息,用户可以更改该配置页面中的配置信息,并操作用户终端向数据挖掘平台发送更改后的配置信息。

配置信息中可以包括多个信息,比如数据处理任务对应的数据源,再比如具体对数据进行处理的方式,再比如对数据处理后,得到的处理结果的存储位置等。

实际应用时,数据挖掘平台接收到对数据处理任务的配置信息更改的操作后,可以响应该操作,在配置中心中存储更改后的配置信息。

其中,在存储更改后的配置信息时,可以基于更改操作更新原有的配置信息,从而减少需要更改的数据内容。

具体的,还可以对配置中心进行监控,当配置中心中的配置信息被更改后,可以执行步骤102,进而根据更改后的配置信息执行与该更改后的配置信息对应的数据处理任务。

另外,本申请提供的方案中,在需要新增加数据处理任务时,也可以基于配置中心向用户提供可配置化的模板,使得用户只需要在模板中填写配置信息,就能够实现数据处理任务的快速上线,从而提高数据处理任务的开发效率。

步骤102,在当前基于任务执行流程执行的数据处理任务执行完毕后,从配置中心获取更改后的配置信息;任务执行流程包括执行数据处理任务的数据处理过程。

请继续参考图2,在数据挖掘平台20中还可以包括流程生成中心22、实时计算中心23。流程生成中心22可以根据配置中心中的配置信息生成任务执行流程,实时计算中心23可以根据任务执行流程执行数据处理任务。

其中,在配置信息更改之前,流程生成中心22可以根据更改前的配置信息生成任务执行流程,实时计算中心23基于该任务执行流程,执行与该配置信息对应的数据处理任务。例如,存在第一数据处理任务,在配置中心中存储有与该第一数据处理任务对应的第一配置信息,流程生成中心22根据第一配置信息生成第一任务执行流程,实时计算中心23基于第一任务执行流程执行第一数据处理任务。

一种实施方式中,流程生成中心22中可以存储有第一配置信息,还可以定时从配置中心拉取第二配置信息,并与存储的第一配置信息进行比对,若不同,则使用第二配置信息更新第一配置信息。还可以使用更新后的配置信息更新原有的任务执行流程。

具体的,任务执行流程包括执行数据处理任务的数据处理过程。具体可以包括数据获取流程、数据处理过程、处理结果的存储过程等。

进一步的,当数据处理任务的配置信息被更改后,可以在实时计算中心23基于当前的任务执行流程执行的数据处理任务执行完毕后,从配置中心获取更改后的配置信息。例如,在配置中心中存储更改后的配置信息的同时,实时计算中心可以基于当前的任务执行流程执行数据处理任务,那么可以不中断该数据处理任务的执行过程,在当前的任务执行完毕后,再获取更改后的配置信息,从而避免任务被中断。

实际应用时,可以由流程生成中心22从配置中心21中读取更改后的配置信息。比如,实时计算中心23可以与流程生成中心22进行交互,以使流程生成中心22确定实时计算中心23将当前正在处理的任务处理完毕。

具体为与更改后的配置信息对应的正在执行的数据处理任务被执行完毕后,获取更改后的配置信息。

步骤103,根据更改后的配置信息更新任务执行流程,并根据更新后的任务执行流程获取并处理与数据处理任务对应的待处理数据。

进一步的,可以根据更改后的配置信息更新当前的任务执行流程。比如,可以由流程生成中心22根据获取的更改后的配置信息,更新原有的任务执行流程。

实际应用时,可以根据更改后的配置信息,确定该配置信息的变更内容,进而可以根据变更内容更改当前的任务执行流程。比如,配置信息中的数据源发生了改变,则可以更新任务执行流程中的数据获取流程。

图3为本申请一示例性实施例示出的任务执行流程更新示意图。

如图3所示,针对一个数据处理任务,存在任务执行流程31。实时计算中心基于任务执行流程31执行该数据处理任务。

其中,任务执行流程31是基于数据处理任务的配置信息32生成的。当配置信息32发生变更后,则可以从配置中心获取变更后的配置信息33,并根据变更后的配置信息33更新任务执行流程31,得到更新后的任务执行流程34。

具体的,更新完任务执行流程后,可以根据更新后的任务执行流程执行数据处理任务,具体可以根据更新后的任务执行流程获取并处理与数据处理任务对应的待处理数据。

进一步的,可以根据更新后的任务执行流程获取与数据处理任务对应的待处理数据,具体可以从数据源处获取待处理数据。还可以根据更新后的任务执行流程对获取的待处理数据进行处理,得到处理结果,还可以根据更新后的任务执行流程存储得到的处理结果。

实际应用时,这种实施方式中,在配置信息被更改后,可以基于更改后的信息进行数据处理任务的运行,能够达到配置信息实时生效的效果。进而保证挖掘的有效信息的时效性。

本申请提供的数据处理的方法,包括:响应于数据处理任务的配置信息更改的操作,在配置中心存储更改后的配置信息;在当前基于任务执行流程执行的数据处理任务执行完毕后,从配置中心获取更改后的配置信息;任务执行流程包括执行数据处理任务的数据处理过程;根据更改后的配置信息更新任务执行流程,并根据更新后的任务执行流程获取并处理与数据处理任务对应的待处理数据。本申请提供的方法中,设置有用于存储任务配置信息的配置中心,当配置中心中的配置信息被更改后,可以从配置中心获取更改后的配置信息,并根据更改后的配置信息更新任务执行流程,从而可以根据更新后的任务执行流程执行任务,这种处理方式不需要重启任务,从而能够保证挖掘有效信息的实时性。

图4为本申请另一示例性实施例示出的数据处理的方法的流程图。

步骤401,响应于数据处理任务的配置信息更改的操作,在配置中心存储更改后的配置信息。

步骤401的实现方式、原理与步骤101类似,不再赘述。

步骤402,在当前基于任务执行流程执行的数据处理任务执行完毕后,从配置中心中获取具有数据处理任务的标识的更改后的配置信息;任务执行流程包括执行数据处理任务的数据处理过程。

其中,配置中心中的配置信息具有任务标识,当与一数据处理任务对应的配置信息变更后,可以在配置中心中,获取具有该数据处理任务标识的变更后的配置信息。

通过任务标识关联配置信息与数据处理任务之间的关系,使得存在多个数据处理任务时,若其中一个任务的配置信息发生了变更,能够基于任务标识获取该任务的配置信息,从而准确的获取该任务变更后的配置信息。

步骤403,根据更改后的配置信息确定变更内容;其中,变更内容包括以下任一种信息:目标数据源信息、数据清洗信息、数据转换信息、数据存储信息。

其中,可以根据更改后的配置信息确定变更内容,变更内容是指发生了改变的内容。

具体的,配置信息中可以包括目标数据源信息、数据清洗信息、数据转换信息、数据存储信息中的任一种信息,因此,用户可以对其中的任一种信息进行更改,更改的内容即为变更内容。

比如,用户对目标数据源信息进行了更改,则目标数据源信息为变更内容。

步骤404,根据变更内容更新任务执行流程。

进一步的,可以根据确定的变更内容更新任务执行流程,这种实施方式中,无需根据变更后的配置信息重新生成任务执行流程,因此,能够提高任务执行流程的更新速度,进而缩短任务暂停的速度,进一步的提高挖掘有效信息的时效性。

实际应用时,若变更内容包括目标数据源信息,则根据目标数据源信息更新任务执行流程中的数据获取流程。

其中,数据处理任务的任务执行流程中可以包括数据获取流程,数据挖掘平台可以基于数据获取流程获取待处理数据。

具体的,用户可以修改数据处理任务的目标数据源信息。比如,原有的配置信息中需要从数据源A、B、C中获取数据,更改后的配置信息中需要从数据源A、B中获取数据。那么该数据处理任务原有的数据获取流程中,包括从数据源A、B、C中获取数据,可以根据更改后的配置信息对原有的数据获取流程进行更新,该数据处理任务更新后的数据获取流程为从数据源A、B中获取数据。

这种实施方式中,当用户修改目标数据源信息时,可以直接基于修改内容更新任务执行流程中的数据获取流程,从而在基于更新后的任务执行流程执行任务时,可以基于修改后的数据获取流程获取待处理数据,这种实施方式能够在任务不重启的情况下,直接基于新的配置信息获取待处理数据,提高挖掘的有效信息的时效性。

进一步的,任务执行流程中包括使用预设函数对目标字段对应的数据进行清洗的数据清洗流程,基于数据清洗流程对目标字段对应的数据进行清洗,能够得到有效数据。

实际应用时,数据清洗信息包括所述预设函数、所述目标字段。目标字段是指执行任务时所需要的数据的字段。比如,从目标数据源中获取的数据包括多个字段,例如包括姓名、性别、分数,目标字段可以是姓名、分数。预设函数是用于对目标字段对应的数据进行清洗处理时使用的函数。

预设函数可以是用户自定义函数,通过预设函数对目标字段对应的数据进行清洗,能够得到一张宽表,该表中包括目标字段对应的数据。

预设函数例如可以包括用于过滤不符合条件数据的函数,比如目标字段包括姓名和分数,预设函数可以过滤掉分值大于100或者分值小于0的数据。再比如,预设函数可以包括合并数据用的函数,例如可以利用预设函数将从目标数据源A中获取的数据,与从目标数据源B中获取的数据进行合并处理。

其中,若变更内容包括数据清洗信息,比如用户修改了目标字段,或者修改了预设函数,则数据挖掘平台可以根据数据清洗信息更新任务执行流程中使用预设函数对目标字段对应的数据进行清洗的数据清洗流程。

这种实施方式中,当用户修改数据清洗信息时,可以直接基于修改内容更新任务执行流程中的数据清洗流程,从而在基于更新后的任务执行流程执行任务时,可以基于修改后的数据清洗流程清洗与目标字段对应的数据,这种实施方式能够在任务不重启的情况下,直接基于新的配置信息清洗与目标字段对应的数据,提高挖掘的有效信息的时效性。

具体的,任务执行流程中还可以包括数据计算流程,数据计算流程用于对有效数据进行计算。有效数据是指基于任务执行流程中的数据清洗流程,对目标字段对应的数据进行清洗后得到的数据。

进一步的,配置信息中可以包括数据转换信息,用户可以修改配置信息中的数据转换信息。当配置信息中的数据转换信息被修改后,数据挖掘平台可以将数据转换信息作为变更内容。

实际应用时,数据转换信息可以是sql(用于访问和处理数据库的标准的计算机语言)语句的形式,这种实施方式中,方便用户修改数据转换信息。即使用户不会编程,也能够根据需求修改数据转换信息。比如,可以通过sql语句的方式在配置中心中设置,将分值字段中的最大值作为处理结果。

其中,若变更内容包括数据转换信息,则数据挖掘平台可以根据数据转换信息更新数据计算流程。比如,用户修改了配置中心用用于对数据进行转换的sql语句,则可以根据新的sql语句更新数据计算流程。

这种实施方式中,当用户修改数据转换信息时,可以直接基于修改内容更新任务执行流程中的数据计算流程,从而在基于更新后的任务执行流程执行任务时,可以基于修改后的数据计算流程处理有效数据,这种实施方式能够在任务不重启的情况下,直接基于新的配置信息处理有效数据,提高挖掘的有效信息的时效性。

具体的,任务执行流程中还包括数据存储流程。基于数据计算流程对有效数据进行处理后,能够得到处理结果,数据存储流程用于对处理结果进行存储。

进一步的,配置信息中可以包括数据存储信息,比如可以包括用于存储处理结果的存储系统等信息。用户可以修改数据存储信息,比如,用户可以在配置页面中选择用于存储处理结果的存储系统,例如可以是HDFS(分布式文件系统)、MYSQL(关系型数据库管理系统)、KAFKA(分布式发布订阅消息系统)、ES(分布式文档数据库)、PALO(数据仓库)等,用户可以选择其中的一个或多个存储系统,进而能够将处理结果同时写入多种异构数据存储中。

实际应用时,若配置信息中的数据存储信息发生变化,则数据挖掘系统可以更新与该配置信息对应的任务执行流程中的数据存储流程。比如,更改前的配置信息中,存储信息中包括HDFS,更改后的配置信息中,存储信息中包括HDFS、MYSQL,则数据挖掘系统可以根据这一变化更新数据存储流程。

在一种可选的实施方式中,用户还可以在配置中心中配置数据结果中各个字段对应的存储系统,相应的数据存储流程中,可以包括将数据结果中不同字段分别存储到对应的存储系统的流程。

这种实施方式中,当用户修改数据存储信息时,可以直接基于修改内容更新任务执行流程中的数据存储流程,从而在基于更新后的任务执行流程执行任务时,可以基于修改后的数据存储流程存储数据结果,这种实施方式能够在任务不重启的情况下,直接基于新的配置信息存储数据结果,提高挖掘的有效信息的时效性。

图5为本申请一示例性实施例示出的任务执行流程的示意图。

如图5所示,根据更改后的配置信息51更新得到的任务执行流程52可以包括:数据获取流程521、数据清洗流程522、数据计算流程523、数据存储流程524。

其中,任务执行流程52可以是有向无环图DAG的形式。

步骤405,根据更新后的任务执行流程中包括的数据获取流程,从目标数据源获取待处理数据。

其中,更新完数据处理任务的任务执行流程后,可以将更新后的任务执行流程发送给实时计算中心,实时计算中心能够根据新的任务执行流程执行数据处理任务。

具体的,更新后的任务执行流程包括数据获取流程。实时计算中心可以根据更新后的任务执行流程中包括的数据获取流程,从目标数据源获取待处理数据。

比如,用户在配置中心中配置了目标数据源为第一数据源、第二数据源,则数据获取流程为从第一数据源和第二数据源中获取待处理数据,那么实时计算中心可以执行该数据获取流程,进而获取待处理数据。

进一步的,获取带处理数据时,若目标数据源为离线数据源,则数据挖掘平台可以监控离线数据源中的文件变更,在离线数据源中发生文件变更时,获取变更数据;若目标数据源为实时数据源,则通过中间件拉取实时数据源中的实时数据。

实际应用时,针对不同类型的目标数据源,设置了不同的待处理数据的获取方式,从而可以将不同类型数据源的数据接入数据挖掘平台。而且,能够在离线数据源中产生新的数据,或者实时数据源中产生新的数据后,实时将产生的数据引入数据挖掘平台,从而进一步的提高挖掘的有效信息的时效性。

步骤406,根据更新后的任务执行流程中包括的数据清洗流程对待处理数据进行清洗,得到包括与目标字段对应的数据的数据表。

进一步的,获取了待处理数据后,实时计算中心还可以根据更新后的任务执行流程对待处理数据进行清洗。

其中,更新后的任务执行流程包括数据清洗流程。该数据清洗流程为使用预设函数对待处理数据中与目标字段对应的数据进行清洗的流程,实时计算中心可以执行该流程,进而利用预设函数对待处理数据中目标字段对应的数据进行清洗。

具体的,用户可以在配置中心中配置预设函数以及目标字段。比如针对数据处理任务,用户可以设置该任务的预设函数为第一函数和第二函数,还可以设置目标字段为姓名和分值。那么生成的数据清洗流程为,使用第一函数和第二函数对待处理数据中与姓名和分值对应的数据进行处理。

用户可以根据业务需求设置预设函数,比如预设函数可以是用于去除重复数据的函数,再比如,预设函数可以是用来去除无效数据的函数。

进一步的,实时计算中心利用数据清洗流程对待处理数据中与目标字段对应的数据进行清洗后,可以将清洗后的数据存储在数据表中。比如,得到的数据表中包括姓名字段的数据,还包括分值字段的数据。

如果数据清洗流程被更新,可以直接更新内存中的维护的反射关系以及字段,从而形成新的数据表配置。

步骤407,根据更新后的任务执行流程中包括数据计算流程,对数据表中的数据进行计算,得到数据结果。

实际应用时,得到包括与目标字段对应的数据的数据表之后,实时计算中心还可以根据更新后的任务执行流程对该数据表中的数据进一步的处理。

其中,更新后的任务执行流程中包括数据计算流程,数据计算流程是对数据表中的数据进行计算处理的流程。实时计算中心可以执行该流程,进而对数据表中的数据进行计算处理,得到数据结果。

具体的,用户可以在配置中心中设置数据处理逻辑,进而可以根据该数据处理逻辑生成数据计算流程。具体可以在配置中心中通过sql语句的方式设置数据处理逻辑,比如可以是用于对数据进行转换、聚合、求交集或者求并集等操作的sql语句。这种实施方式中,能够提供sql化的语言支持复杂场景操作的动态拼接组合代替流程固定的方式,进而降低用户自主配置数据处理逻辑的难度。

进一步的,本申请的方案中对数据的具体处理流程分为数据表的形成以及sql数据的组合,从而实现动态组件化,使用户无需了解实时流的技术细节,只需要在调整sql语句,就能够实时更新任务的配置信息。

步骤408,根据更新后的任务执行流程中包括的数据存储流程,将数据结果存储到数据库中。

得到数据结果后,实时计算中心还可以存储该数据结果。具体可以根据更新后的任务执行流程中包括的数据存储流程存储数据结果。

其中,数据存储流程是存储数据结果的流程,比如,其中可以包括将得到的结果存储到指定的数据库中。若数据结果有多个,则可以将多个数据结果存储到多个数据库,也可以将多个数据结果存储到一个数据库。

具体的,用户可以在配置中心中设置用于存储数据结果的数据库。数据挖掘平台可以接入常用的数据库(HDFS、MYSQL、KAFKA、ES、PALO等),用户可以在配置中心设置用于存储数据结果的数据库,从而可以将数据结果同时写入到多种异构数据库中。

本申请提供的方法中,能够根据变更后的配置信息更新任务执行流程,实时计算中心在执行数据处理任务时,可以基于变更后的流程获取并处理待处理数据。本申请中更新任务执行流程与执行数据处理任务之间是隔离的,从而可以在不影响当前数据处理任务的执行的情况下,更新任务执行流程。并且,在继续执行该数据处理任务时,可以直接根据更新后的任务执行流程进行处理,从而无需重启数据处理任务,就能够重新配置数据处理任务,且能够基于变更后的配置信息处理该数据处理任务。

图6为本申请又一示例性实施例示出的数据处理的方法的流程图。

如图6所示,本申请提供的数据处理的方法包括:

步骤601,根据运行参数配置中的资源信息,启动与资源信息相应的资源基于任务执行流程执行的数据处理任务;其中,数据处理任务的配置信息中包括运行参数配置。

在执行数据处理任务时,可以从配置中心获取该数据处理任务的配置信息,获取的配置信息中包括运行参数配置,该运行参数配置中包括资源信息。

其中,配置信息可以是用户基于需求设置的,相应的,其中的资源信息也可以是用户根据需求设置的。

具体的,在执行数据处理任务时,可以根据资源信息启动相应的资源,该资源用于基于任务执行流程执行该数据处理任务。本实施例中提及的任务执行流程为上述任一实施例中所述的任务执行流程。

这种实施方式中,可以根据用户的配置启动相应的资源,并利用这些资源执行数据处理任务,从而满足用户的个性化需求。

进一步的,资源信息中还可以包括下限值。比如,用户在设置配置信息时,可以在其中设置资源信息中的下限值。例如,用户终端可以显示配置页面,该页面中可以展示配置模板,用户可以在其中填写资源信息的下限值。

实际应用时,可以根据运行参数配置中的资源信息,启动与资源信息中预设下限值对应的执行单元,执行单元用于基于任务执行流程执行的数据处理任务。

其中,具体可以在如图2所示的实时计算中心中启动执行单元。在任务开始执行时,可以启动与预设下限值对应的执行单元,从而可以以最小的资源进行任务的调度,以节约计算资源,并且,节约的计算资源还可以用于执行其他数据处理任务,进而提高整个数据挖掘平台的数据处理效率。

步骤602,响应于数据处理任务的配置信息更改的操作,在配置中心存储更改后的配置信息;

步骤603,在当前基于任务执行流程执行的数据处理任务执行完毕后,从配置中心获取更改后的配置信息;任务执行流程包括执行数据处理任务的数据处理过程;

步骤604,根据更改后的配置信息更新任务执行流程,并根据更新后的任务执行流程获取并处理与数据处理任务对应的待处理数据。

步骤602-603与图1或图4所述的实施例类似,不再赘述。

其中,在步骤601之后任一时刻,本申请提供的方法还可以包括:

步骤605,根据运行参数配置中的动态扩容信息,动态调整用于执行数据处理任务的资源。

其中,数据处理任务的配置信息中包括运行参数配置,运行参数配置还可以包括动态扩容信息。

具体的,用户在设置一个数据处理任务的配置信息时,还可以设置其中的运行参数配置,具体可以设置该运行参数配置中的动态扩容信息。动态扩容信息是用于动态调整用于执行数据处理任务的资源的信息。

一种实施方式中,可以由流程生成中心获取配置信息,并将其中的运行参数配置发送给实时计算中心。

进一步的,实时计算中心执行数据处理任务时,可以根据运行参数配置中包括的动态扩容信息动态调整资源。这种实施方式中,执行数据处理任务所需资源多时,则可以增加资源,执行数据处理任务所需资源少时,则可以减少资源,从而合理的利用资源。

实际应用时,可以动态调整用于执行数据处理任务的执行单元的数量。

一种可选的实施方式中,动态扩容信息中包括以下的一种或多种信息:预设时长、流量波峰时段、流量波谷时段。实时计算中心可以基于其中的一种或多种信息,动态的调整资源,进而可以基于用户需求个性化的调整用于执行数据处理任务的资源。

其中,当动态扩容信息中包括预设时长时,若数据处理任务因资源不足被挂起,则在预设时长后,根据当前数据处理任务占用的资源进行扩容。预设时长可以是用户在配置信息中设置的。

具体的,实时计算中心在执行数据处理任务时,若因资源不足,该数据处理任务被挂起达到预设时长后,则可以申请资源,比如,可以以指数型增长申请资源,直到资源得到任务的需要。具体申请的资源可以是用于执行数据处理任务的执行单元。这种实施方式中,能够避免数据处理任务因资源不足被长时间挂起,导致挖掘的有效信息存在滞后性的问题。

进一步的,当动态扩容信息中包括流量波峰时段时,当时间处于动态扩容信息中的流量高峰时段时,启动与配置信息中的预设上限值对应的执行单元,执行单元用于执行数据处理任务。

实际应用时,配置信息中还可以设置预设上限值,该预设上限值是用户根据需求设置的。达到流量波峰时段时,实时计算中心可以启动与配置信息中的预设上限值对应的执行单元,从而提供充足的资源执行数据处理任务,避免执行任务过程中发生卡顿。

其中,当动态扩容信息中包括流量波谷时段时,当时间处于在动态扩容信息中的流量波谷时段时,若存在空闲的执行单元,则关闭空闲的执行单元,执行单元用于执行数据处理任务。

实际应用时,用户可以根据需求设置流量波谷时段,达到流量波谷时段时,实时计算中心可以关闭空闲的执行单元,以及时回收资源,从而避免造成资源浪费。

图7为本申请一示例性实施例示出的数据处理的装置的结构图。

如图7所示,本申请提供的数据处理的装置700包括:

信息更改单元710,用于响应于数据处理任务的配置信息更改的操作,在配置中心存储更改后的配置信息;

信息获取单元720,用于在当前基于任务执行流程执行的所述数据处理任务执行完毕后,从所述配置中心获取所述更改后的配置信息;所述任务执行流程包括执行所述数据处理任务的数据处理过程;

流程更新单元730,用于根据所述更改后的配置信息更新所述任务执行流程;

执行单元740,用于根据更新后的任务执行流程获取并处理与所述数据处理任务对应的待处理数据。

本实施例提供的数据处理的装置与图1所示实施例类似,不再赘述。

图8为本申请一示例性实施例示出的数据处理的装置的结构图。

如图8所示,本申请提供的数据处理的装置800中,信息更改单元810与图7中的信息更改单元710为同一单元,信息获取单元820与图7中的信息获取单元720为同一单元,流程更新单元830与图7中的流程更新单元730为同一单元,执行单元840与图7中的执行单元740为同一单元。

其中,本实施例提供的数据处理的装置800中,流程更新单元830,包括:

确定模块831,用于根据更改后的所述配置信息确定变更内容;其中,所述变更内容包括以下任一种信息:

目标数据源信息、数据清洗信息、数据转换信息、数据存储信息;

更新模块832,用于根据所述变更内容更新所述任务执行流程。

其中,若所述变更内容包括目标数据源信息,则所述更新模块832具体用于:

根据所述目标数据源信息更新所述任务执行流程中的数据获取流程。

其中,若所述变更内容包括数据清洗信息,则所述更新模块832具体用于:

根据所述数据清洗信息更新所述任务执行流程中使用预设函数对目标字段对应的数据进行清洗的数据清洗流程;其中,所述数据清洗信息包括所述预设函数、所述目标字段。

其中,若所述变更内容包括数据转换信息,则所述更新模块832具体用于:

根据所述数据转换信息,更新所述任务执行流程中用于对有效数据进行计算的数据计算流程;所述有效数据是基于所述任务执行流程中的数据清洗流程,对目标字段对应的数据进行清洗后得到的数据。

其中,若所述变更内容包括数据存储信息,则所述更新模块832具体用于:

根据所述数据存储信息,更新所述任务执行流程中的对数据结果进行存储的数据存储流程;其中,所述数据结果为基于所述任务执行流程中的数据计算流程,对基于所述任务执行流程中的数据清洗流程清洗后的有效数据进行处理,得到的结果。

其中,所述更新后的任务执行流程包括:数据获取流程、数据清洗流程、数据计算流程、数据存储流程;

所述执行单元840,包括:

数据获取模块841,用于根据所述数据获取流程,从目标数据源获取待处理数据;

数据清洗模块842,用于根据所述数据清洗流程对所述待处理数据进行清洗,得到包括与目标字段对应的数据的数据表;其中,所述数据清洗流程为使用预设函数对待处理数据中与目标字段对应的数据进行清洗的流程;

数据计算模块843,用于根据所述数据计算流程,对所述数据表中的数据进行计算,得到数据结果;

数据存储模块844,用于根据所述数据存储流程将所述数据结果存储到数据库中。

其中,所述数据获取模块841具体用于:

若所述目标数据源为离线数据源,则监控离线数据源中的文件变更,在所述离线数据源中发生文件变更时,获取变更数据;

若所述目标数据源为实时数据源,则通过中间件拉取所述实时数据源中的实时数据。

其中,所述配置信息包括运行参数配置;

所述装置还包括资源分配单元850,用于在所述信息更改单元810响应于数据处理任务的配置信息更改的操作之前,根据所述运行参数配置中的资源信息,启动与所述资源信息相应的资源基于任务执行流程执行的所述数据处理任务。

其中,所述资源信息中包括预设下限值;

所述资源分配单元850具体用于:

根据所述运行参数配置中的资源信息,启动与所述资源信息中预设下限值对应的执行单元,所述执行单元用于基于任务执行流程执行的所述数据处理任务。

其中,所述配置信息包括运行参数配置;

所述装置还包括资源调整单元860,用于根据所述运行参数配置中的动态扩容信息,动态调整用于执行所述数据处理任务的资源。

其中,所述动态扩容信息中包括以下的一种或多种信息:预设时长、流量波峰时段、流量波谷时段。

其中,若所述动态扩容信息中包括预设时长,所述资源调整单元860,包括:

第一调整模块861,用于若所述数据处理任务因资源不足被挂起,则在预设时长后,根据当前所述数据处理任务占用的资源进行扩容。

其中,若所述动态扩容信息中包括流量波峰时段,所述源调整单元860,包括:

第二调整模块862,用于在所述动态扩容信息中的流量高峰时段时,启动与所述配置信息中的预设上限值对应的执行单元,所述执行单元用于执行所述数据处理任务。

其中,若所述动态扩容信息中包括流量波谷时段,所述资源调整单元860,包括:

第三调整模块863,用于在所述动态扩容信息中的流量波谷时段时,若存在空闲的执行单元,则关闭空闲的所述执行单元,所述执行单元用于执行所述数据处理任务。

其中,所述配置信息具有任务标识;

所述信息获取单元820具体用于:

从所述配置中心中获取具有所述数据处理任务的标识的所述更改后的配置信息。

根据本申请的实施例,本申请还提供了一种电子设备和一种可读存储介质。

根据本申请的实施例,本申请还提供了一种计算机程序产品,计算机程序产品包括:计算机程序,计算机程序存储在可读存储介质中,电子设备的至少一个处理器可以从可读存储介质读取计算机程序,至少一个处理器执行计算机程序使得电子设备执行上述任一实施例提供的方案。

图9示出了可以用来实施本申请的实施例的示例电子设备900的示意性框图。电子设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本公开的实现。

如图9所示,电子设备900包括计算单元901,其可以根据存储在只读存储器(ROM)902中的计算机程序或者从存储单元908加载到随机访问存储器(RAM)903中的计算机程序,来执行各种适当的动作和处理。在RAM 903中,还可存储设备900操作所需的各种程序和数据。计算单元901、ROM 902以及RAM 903通过总线904彼此相连。输入/输出(I/O)接口905也连接至总线904。

设备900中的多个部件连接至I/O接口905,包括:输入单元906,例如键盘、鼠标等;输出单元907,例如各种类型的显示器、扬声器等;存储单元908,例如磁盘、光盘等;以及通信单元909,例如网卡、调制解调器、无线通信收发机等。通信单元909允许设备900通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据。

计算单元901可以是各种具有处理和计算能力的通用和/或专用处理组件。计算单元901的一些示例包括但不限于中央处理单元(CPU)、图形处理单元(GPU)、各种专用的人工智能(AI)计算芯片、各种运行机器学习模型算法的计算单元、数字信号处理器(DSP)、以及任何适当的处理器、控制器、微控制器等。计算单元901执行上文所描述的各个方法和处理,例如数据处理的方法。例如,在一些实施例中,数据处理的方法可被实现为计算机软件程序,其被有形地包含于机器可读介质,例如存储单元908。在一些实施例中,计算机程序的部分或者全部可以经由ROM 902和/或通信单元909而被载入和/或安装到设备900上。当计算机程序加载到RAM 903并由计算单元901执行时,可以执行上文描述的数据处理的方法的一个或多个步骤。备选地,在其他实施例中,计算单元901可以通过其他任何适当的方式(例如,借助于固件)而被配置为执行数据处理的方法。

本文中以上描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、场可编程门阵列(FPGA)、专用集成电路(ASIC)、专用标准产品(ASSP)、芯片上系统的系统(SOC)、负载可编程逻辑设备(CPLD)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储系统、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储系统、该至少一个输入装置、和该至少一个输出装置。

用于实施本公开的方法的程序代码可以采用一个或多个编程语言的任何组合来编写。这些程序代码可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器或控制器,使得程序代码当由处理器或控制器执行时使流程图和/或框图中所规定的功能/操作被实施。程序代码可以完全在机器上执行、部分地在机器上执行,作为独立软件包部分地在机器上执行且部分地在远程机器上执行或完全在远程机器或服务器上执行。

在本公开的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或快闪存储器)、光纤、便捷式紧凑盘只读存储器(CD-ROM)、光学储存设备、磁储存设备、或上述内容的任何合适组合。

为了提供与用户的交互,可以在计算机上实施此处描述的系统和技术,该计算机具有:用于向用户显示信息的显示装置(例如,CRT(阴极射线管)或者LCD(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给计算机。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。

可以将此处描述的系统和技术实施在包括后台部件的计算系统(例如,作为数据服务器)、或者包括中间件部件的计算系统(例如,应用服务器)、或者包括前端部件的计算系统(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:局域网(LAN)、广域网(WAN)和互联网。

计算机系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。服务器可以是云服务器,又称为云计算服务器或云主机,是云计算服务体系中的一项主机产品,以解决了传统物理主机与VPS服务("Virtual Private Server",或简称"VPS")中,存在的管理难度大,业务扩展性弱的缺陷。服务器也可以为分布式系统的服务器,或者是结合了区块链的服务器。

应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本发申请中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本申请公开的技术方案所期望的结果,本文在此不进行限制。

上述具体实施方式,并不构成对本申请保护范围的限制。本领域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本申请的精神和原则之内所作的修改、等同替换和改进等,均应包含在本申请保护范围之内。

相关技术
  • 数据处理方法、装置、电子设备、存储介质及程序产品
  • 数据处理方法、装置、电子设备、存储介质及程序产品
技术分类

06120112880859