数据处理方法、装置、存储介质以及终端与流程

文档序号:22500673发布日期:2020-10-13 09:33阅读:76来源:国知局
数据处理方法、装置、存储介质以及终端与流程

本申请涉及数据处理技术领域,尤其涉及一种数据处理方法、装置、存储介质以及终端。



背景技术:

随着科学技术的发展,伴随着终端的各种操作以及各种业务的运行都会产生大量的数据,因此如何提高数据的处理能力成为本领域人员研究的重点之一。

在相关技术中,通常需要对各种操作以及各种业务对应的数据进行进行关联、聚合、清洗等处理后才能落地存储并支撑业务需求,但是在相关技术中,仅能实现对单源的数据进行处理,导致对多源数据处理时效率较为低下,不能满足开发者的需要,因此亟需一种数据处理方法以解决该问题。



技术实现要素:

本申请提供一种数据处理方法、装置、存储介质以及终端,可以解决上述相关技术中的技术问题。

第一方面,本申请实施例提供一种数据处理方法,该方法包括:

获取至少一个数据源的待处理数据;

对所述至少一个数据源的待处理数据进行任务配置;

基于所述任务配置对所述至少一个数据源的待处理数据进行数据处理。

可选地,所述获取不同数据源的待处理数据,包括:接收至少一个上游业务发送的至少一个数据源的待处理数据;将所述待处理数据写入消息缓存队列中。

可选地,所述对所述不同数据源的待处理数据进行任务配置,包括:获取针对所述至少一个数据源的待处理数据输入的配置指令;基于所述配置指令生成所述至少一个数据源的待处理数据对应的任务配置文件,其中所述任务配置文件包括数据源配置、数据处理配置以及数据输出配置。

可选地,所述基于所述配置指令生成所述不同数据源的待处理数据对应的任务配置文件之后,还包括:获取针对所述任务配置文件输入的启动处理指令;基于所述启动处理指令以及所述任务配置文件中的数据处理配置分配处理资源。

可选地,所述基于所述任务配置对所述至少一个数据源的待处理数据进行数据处理,包括:从所述消息缓存队列中获取所述至少一个数据源的待处理数据;将所述至少一个数据源的待处理数据按照所述任务配置文件中的数据源配置映射成至少一个抽象表,所述抽象表用于对所述至少一个数据源的待处理数据进行处理。

可选地,所述基于所述任务配置对所述至少一个数据源的待处理数据进行数据处理之后,包括:按照所述任务配置文件中的数据输出配置将处理后的所述至少一个数据源的待处理数据写入对应的存储系统。

可选地,所述基于所述启动处理指令以及所述任务配置文件中的数据处理配置分配处理资源之后,包括:启动处理任务,以及根据所述任务配置文件中的数据处理配置注册至少一个数据源。

第二方面,本申请实施例提供一种数据处理装置,该装置包括:

数据获取模块,用于获取至少一个数据源的待处理数据;

任务配置模块,用于对所述至少一个数据源的待处理数据进行任务配置;

数据处理模块,用于基于所述任务配置对所述至少一个数据源的待处理数据进行数据处理。

第三方面,本申请实施例提供一种计算机存储介质,所述计算机存储介质存储有多条指令,所述指令适于由处理器加载并执行上述的方法的步骤。

第四方面,本申请实施例提供一种终端,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上述的方法的步骤。

本申请一些实施例提供的技术方案带来的有益效果至少包括:

本申请提供一种数据处理方法,首先获取至少一个数据源的待处理数据,然后对至少一个数据源的待处理数据进行任务配置,最后基于任务配置对至少一个数据源的待处理数据进行数据处理。由于预先对至少一个数据源的待处理数据进行了任务配置,因此可以基于该任务配置对一个或者多个不同数据源的数据进行处理,大大提高了对多源数据进行处理时的效率。

附图说明

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

图1为本申请实施例提供的一种数据处理方法的流程示意图;

图2为本申请另一实施例提供的一种数据处理方法的流程示意图;

图3为本申请另一实施例提供的一种数据处理装置的结构示意图;

图4为本申请另一实施例提供的一种数据处理装置的结构示意图;

图5为本申请实施例提供的一种终端的结构示意图。

具体实施方式

为使得本申请的特征和优点能够更加的明显和易懂,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而非全部实施例。基于本申请中的实施例,本领域技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。

下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。

请参阅图1,图1为本申请实施例提供的一种数据处理方法的流程示意图。

如图1所示,该方法步骤包括:

s101、获取至少一个数据源的待处理数据。

可以理解的,在实际项目或者实际业务操作中,大部分都会操作过程都会产生数据,该数据可能是业务数据或者日志数据,例如,数据来源可以是通过爬虫,合作方接入,ugc,数据挖掘等,因此在本申请中,至少一个数据源的待处理数据可以是上述任一一种或者多种来源的数据,也即待处理的数据可以来自一个数据源,还可以是来自多个数据源,本申请实施例中的数据处理方法既可以对一种来源的待处理数据进行处理,还可以对多种来源的待处理数据进行处理,相对于相关技术中,仅可以对一种数据来源的数据进行处理,本申请实施例中的数据处理方法大大提高可应用范围。

进一步地,每一种数据源产生的数据,为了便于保存或者调用可能具有各自对应的数据格式,因此上述每一种数据源的待处理数据,也就可以具有各自对应的数据格式,例如,数据格式可以是json,xml,pb,csv等。当上述待处理数据包括多种数据源时,多种数据源的待处理数据的数据格式可以是相同的,也可以是各数据源对应的、不同的数据格式,或者当上述待处理数据仅包括一种数据源时,一种数据源可以仅包括一种数据格式,也可以包括多种数据格式,本申请实施例不限定数据源的类型以及数量,并且也不限定数据源中数据格式的类型以及数量。

其中,至少一个数据源的待处理数据的获取方式可以是,与上游业务或者上游任务接入,以使得可以及时获取上游业务或者上游任务产生的数据,上游业务或者上游任务产生的数据也可以及时被处理。当获取到至少一数据源的待处理数据后,可以将待处理数据暂时保存在内存或者缓存中,以便于后续的获取或者调用。

s102、对至少一个数据源的待处理数据进行任务配置。

在相关技术中,当对多个数据源的待处理数据进行处理时,由于进行处理的数据处理装置并不能判断出待处理数据的数据源类型以及数据格式类型等,数据源类型以及数据格式类型的数据进行处理的方式不同,因此导致数据处理装置并不能并行对多种数据源的待处理数据进行处理,因此在本申请中,在对待处理数据进行相关处理之前,可以先对各数据源的待处理数据进行任务配置,任务配置可以包括配置数据的数据源类型、数据格式、数据处理的过程以及数据输出存储等,以便于后续可以按照上述任务配置对待处理数据进行相关的处理,这样设置可以使得数据处理装置接收到相关数据源的待处理数据后,可以直接按照任务配置进行数据处理,大大提高了对多种数据源的数据的处理速度。

其中,对至少一个数据源的待处理数据进行任务配置的方式可以有多种实施方式,一种可行的方式是,当用户知道数据处理装置接入的上游业务或者上游任务的具体类型时,也即用户知道待处理的数据源的类型,以及各数据源对应的数据格式的类型,此时用户可以针对上游业务或者上游任务输入各数据源对应任务配置,数据处理装置可以直接获取该任务配置;另一种可行的方式是,数据处理装置可以根据从上游业务或者上游任务输出的数据,根据数据的属性信息获取数据的数据源以及数据格式,然后根据数据的数据源以及数据格式按照预设的配置规则,自动对对至少一个数据源的待处理数据进行任务配置。

s103、基于任务配置对至少一个数据源的待处理数据进行数据处理。

由于在上述步骤中,已经对对至少一个数据源的待处理数据进行任务配置,因此可以直接根据该任务配置对至少一个数据的待处理数据进行相关任务处理,例如,任务处理可以是实时关联、聚合、清洗等计算需求。

在本申请实施例中,首先获取至少一个数据源的待处理数据,然后对至少一个数据源的待处理数据进行任务配置,最后基于任务配置对至少一个数据源的待处理数据进行数据处理。由于预先对至少一个数据源的待处理数据进行了任务配置,因此可以基于该任务配置对一个或者多个不同数据源的数据进行处理,大大提高了对多源数据进行处理时的效率。

请参阅图2,图2为本申请另一实施例提供的一种数据处理方法的流程示意图。

如图2所示,该方法步骤包括:

s201、接收至少一个上游业务发送的至少一个数据源的待处理数据。

可选地,在实际项目或者实际业务操作中,大部分都会操作过程都会产生数据,该数据可能是业务数据或者日志数据,例如,数据来源可以是通过爬虫,合作方接入,ugc,数据挖掘等,因此在本申请中,也即上游业务可以是指爬虫,合作方接入,ugc,数据挖掘等业务,可以将数据处理装置与上述上游业务接入,这样可以是使得数据处理装置实时获取待处理的数据。

s202、将待处理数据写入消息缓存队列中。

当接收到至少一个上游业务发送的至少一个数据源的待处理数据后,可以暂时将待处理数据写入消息缓存队列中,一方面可以防止当待处理数据的数据量较大时,造成数据拥堵,另一方面还可以便于数据处理装置获取待处理数据的数据属性信息,便于后续的数据处理。可选地,消息缓存队列可以是kafka消息缓存队列。

s203、获取针对至少一个数据源的待处理数据输入的配置指令。

可以理解的,当用户知道数据处理装置接入的上游业务或者上游任务的具体类型时,也即用户知道待处理的数据源的类型,以及各数据源对应的数据格式的类型,此时用户可以针对上游业务或者上游任务输入各数据源对应配置指令,数据处理装置可以直接获取该配置指令。例如,可以在相关设备的可视化窗口中设置相关选项或者输入选项,以供用户选择或者直接输入对各数据源的配置。

s204、基于配置指令生成至少一个数据源的待处理数据对应的任务配置文件,其中任务配置文件包括数据源配置、数据处理配置以及数据输出配置。

当数据处理装置获取到该配置指令后,可以基于配置指令生成至少一个数据源的待处理数据对应的任务配置文件,任务配置具体包括的类型可以根据数据源以及数据源的数据对应的数据格式进行配置,例如,任务配置文件包括数据源配置、数据处理配置以及数据输出配置。其中数据源配置是对数据源的类型以及属性进行配置,例如,数据源配置可以包括kafka的topic、数据源格式,源数据schema校验信息等配置,数据处理配置是对各数据源的数据进行什么类型的数据处理的配置,数据出处配置是对各已经被处理后的数据的输出进行配置。可选地,任务配置基于flinksql语义,还可以同时拓展json的拆解和转换函数配置,该部分配置包括表结构定义,sql定义,另外数据输出配置还可以包括数据存储组件定义,存储组件相关配置参数等。

s205、获取针对任务配置文件输入的启动处理指令。

当生成至少一个数据源的待处理数据对应的任务配置文件之后,可以启动对数据的处理过程,其中可以首先获取针对任务配置文件输入的启动处理指令,改启动指令可以是用户在可视化窗口输入的启动指令,还可以是检测到有数据写入消息缓存队列中后,及时启动对数据的处理过程,这样设置的好处是,仅存在有数据写入消息缓存队列中时,才启动对数据的处理过程,当没有检测到数据写入消息缓存队列中时,不启动对数据的处理过程,避免数据处理装置长时间处于运行状态,减少数据处理装置的功耗。

s206、基于启动处理指令以及任务配置文件中的数据处理配置分配处理资源。

当获取针对任务配置文件输入的启动处理指令之后,还可以预分配数据处理装置中的处理资源,例如,可以针对不同数据源以及不同数据源对应的数据格式分配不同的处理资源,以减少处理资源的浪费,提升数据处理的效率。具体的,由于任务配置文件中的数据处理配置包含了如何对数据进行处理的信息,因此可以基于启动处理指令以及任务配置文件中的数据处理配置分配处理资源。

s207、启动处理任务,以及根据任务配置文件中的数据处理配置注册至少一个数据源。

在分配处理资源之后,既可以启动处理任务,由于任务配置文件中的数据处理配置可以包括数据源注册信息,因此还可以根据任务配置文件中的数据处理配置注册至少一个数据源,以便于后续对数据源的数据进行数据处理。

可选地,处理任务的具体过程可以基于flink数据处理平台,具体的flink将启动处理任务命令并将相应配置作为启动参数传递给待启动的flink任务,flink任务提交至集群启动任务。

s208、从消息缓存队列中获取至少一个数据源的待处理数据。

由于消息缓存队列中写入了至少一个数据源的待处理数据,因此当启动处理任务时,可以直接从消息缓存队列中获取至少一个数据源的待处理数据,还可以消息缓存队列中写入了至少一个数据源的待处理数据后,消息缓存队列立即将至少一个数据源的待处理数据发送出去,以提高数据处理过程的时效。

s209、将至少一个数据源的待处理数据按照任务配置文件中的数据源配置映射成至少一个抽象表,抽象表用于对至少一个数据源的待处理数据进行处理。

可选地,在对数据进行处理时,可以将至少一个数据源的待处理数据按照任务配置文件中的数据源配置映射成至少一个抽象表,抽象表用于对至少一个数据源的待处理数据按照分配好的处理资源进行处理,由于首先抽象表中的待处理数据与处理任务具有一一对应的关系,因此通过抽象表对待处理数据进行处理,可以大大提高数据处理的速度。

可选地,当处理任务的具体过程基于flink数据处理平台时,数据到达flink任务后将映射成抽象表,不同格式的数据可按拓展的组件将数据流映统一射成流式抽象表,各表数据按配置的sql进行处理,每条数据进入抽象表将触发一次计算,每条数据到达消息队列后均实时的被消费并处理,数据处理可实现ms级的延时。

s210、按照任务配置文件中的数据输出配置将处理后的至少一个数据源的待处理数据写入对应的存储系统。

可选地,由于任务配置文件中包含数据输出配置,也即被处理的数据按照什么样的方式进行输出,因此可以按照任务配置文件中的数据输出配置将处理后的至少一个数据源的待处理数据写入对应的存储系统,便于对处理过后的数据进行保存,其中,存储系统包括但不限于hbase,elasticsearch,redis,mysql。

在本申请实施例中,首先获取至少一个数据源的待处理数据,然后对至少一个数据源的待处理数据进行任务配置,最后基于任务配置对至少一个数据源的待处理数据进行数据处理。由于预先对至少一个数据源的待处理数据进行了任务配置,因此可以基于该任务配置对一个或者多个不同数据源的数据进行处理,大大提高了对多源数据进行处理时的效率。

请参阅图3,图3为本申请另一实施例提供的一种数据处理装置的结构示意图。

如图3所示,数据处理装置300包括:

数据获取模块310,用于获取至少一个数据源的待处理数据。

任务配置模块320,用于对至少一个数据源的待处理数据进行任务配置。

数据处理模块330,用于基于任务配置对至少一个数据源的待处理数据进行数据处理。

请参阅图4,图4为本申请另一实施例提供的一种数据处理装置的结构示意图。

如图4所示,数据处理装置400包括:

数据接收模块410,用于接收至少一个上游业务发送的至少一个数据源的待处理数据。

数据写入模块420,用于将待处理数据写入消息缓存队列中。

配置指令获取模块430,用于获取针对至少一个数据源的待处理数据输入的配置指令。

配置生成模块440,用于基于配置指令生成至少一个数据源的待处理数据对应的任务配置文件,其中任务配置文件包括数据源配置、数据处理配置以及数据输出配置。

启动指令获取模块450,用于获取针对任务配置文件输入的启动处理指令。

资源分配模块460,用于基于启动处理指令以及任务配置文件中的数据处理配置分配处理资源。

任务启动模块470,用于启动处理任务,以及根据任务配置文件中的数据处理配置注册至少一个数据源。

待处理数据获取模块480,用于从消息缓存队列中获取至少一个数据源的待处理数据。

数据处理模块490,用于将至少一个数据源的待处理数据按照任务配置文件中的数据源配置映射成至少一个抽象表,抽象表用于对至少一个数据源的待处理数据进行处理。

数据存储模块4100,用于按照任务配置文件中的数据输出配置将处理后的至少一个数据源的待处理数据写入对应的存储系统。

在本申请实施例中,一种数据处理装置,包括:数据获取模块,用于获取至少一个数据源的待处理数据;任务配置模块,用于对至少一个数据源的待处理数据进行任务配置;数据处理模块,用于基于任务配置对至少一个数据源的待处理数据进行数据处理。由于预先对至少一个数据源的待处理数据进行了任务配置,因此可以基于该任务配置对一个或者多个不同数据源的数据进行处理,大大提高了对多源数据进行处理时的效率。

本申请实施例还提供了一种计算机存储介质,计算机存储介质存储有多条指令,指令适于由处理器加载并执行如上述实施例中的任一项的方法的步骤。

请参见图5,图5为本申请实施例提供的一种终端的结构示意图。如图5所示,终端500可以包括:至少一个处理器501,至少一个网络接口504,用户接口503,存储器505,至少一个通信总线502。

其中,通信总线502用于实现这些组件之间的连接通信。

其中,用户接口503可以包括显示屏(display)、摄像头(camera),可选用户接口503还可以包括标准的有线接口、无线接口。

其中,网络接口504可选的可以包括标准的有线接口、无线接口(如wi-fi接口)。

其中,处理器501可以包括一个或者多个处理核心。处理器501利用各种接口和线路连接整个终端500内的各个部分,通过运行或执行存储在存储器505内的指令、程序、代码集或指令集,以及调用存储在存储器505内的数据,执行终端500的各种功能和处理数据。可选的,处理器501可以采用数字信号处理(digitalsignalprocessing,dsp)、现场可编程门阵列(field-programmablegatearray,fpga)、可编程逻辑阵列(programmablelogicarray,pla)中的至少一种硬件形式来实现。处理器501可集成中央处理器(centralprocessingunit,cpu)、图像处理器(graphicsprocessingunit,gpu)和调制解调器等中的一种或几种的组合。其中,cpu主要处理操作系统、用户界面和应用程序等;gpu用于负责显示屏所需要显示的内容的渲染和绘制;调制解调器用于处理无线通信。可以理解的是,上述调制解调器也可以不集成到处理器501中,单独通过一块芯片进行实现。

其中,存储器505可以包括随机存储器(randomaccessmemory,ram),也可以包括只读存储器(read-onlymemory,rom)。可选的,该存储器505包括非瞬时性计算机可读介质(non-transitorycomputer-readablestoragemedium)。存储器505可用于存储指令、程序、代码、代码集或指令集。存储器505可包括存储程序区和存储数据区,其中,存储程序区可存储用于实现操作系统的指令、用于至少一个功能的指令(比如触控功能、声音播放功能、图像播放功能等)、用于实现上述各个方法实施例的指令等;存储数据区可存储上面各个方法实施例中涉及到的数据等。存储器505可选的还可以是至少一个位于远离前述处理器501的存储装置。如图5所示,作为一种计算机存储介质的存储器505中可以包括操作系统、网络通信模块、用户接口模块以及数据处理程序。

在图5所示的终端500中,用户接口503主要用于为用户提供输入的接口,获取用户输入的数据;而处理器501可以用于调用存储器505中存储的数据处理程序,并具体执行以下操作:

获取至少一个数据源的待处理数据;

对至少一个数据源的待处理数据进行任务配置;

基于任务配置对至少一个数据源的待处理数据进行数据处理。

处理器501在执行获取不同数据源的待处理数据时,还具体执行以下步骤:

接收至少一个上游业务发送的至少一个数据源的待处理数据;将待处理数据写入消息缓存队列中。

处理器501在执行对不同数据源的待处理数据进行任务配置时,还具体执行以下步骤:

获取针对至少一个数据源的待处理数据输入的配置指令;基于配置指令生成至少一个数据源的待处理数据对应的任务配置文件,其中任务配置文件包括数据源配置、数据处理配置以及数据输出配置。

处理器501在执行基于配置指令生成不同数据源的待处理数据对应的任务配置文件之后,还具体执行以下步骤:

获取针对任务配置文件输入的启动处理指令;基于启动处理指令以及任务配置文件中的数据处理配置分配处理资源。

处理器501在执行基于任务配置对至少一个数据源的待处理数据进行数据处理时,还具体执行以下步骤:

从消息缓存队列中获取至少一个数据源的待处理数据;将至少一个数据源的待处理数据按照任务配置文件中的数据源配置映射成至少一个抽象表,抽象表用于对至少一个数据源的待处理数据进行处理。

处理器501在执行基于任务配置对至少一个数据源的待处理数据进行数据处理之后,还具体执行以下步骤:

按照任务配置文件中的数据输出配置将处理后的至少一个数据源的待处理数据写入对应的存储系统。

处理器501在执行,基于启动处理指令以及任务配置文件中的数据处理配置分配处理资源之后,还具体执行以下步骤:

启动处理任务,以及根据任务配置文件中的数据处理配置注册至少一个数据源。

在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个模块或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或模块的间接耦合或通信连接,可以是电性,机械或其它的形式。

作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理模块,即可以位于一个地方,或者也可以分布到多个网络模块上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。

另外,在本申请各个实施例中的各功能模块可以集成在一个处理模块中,也可以是各个模块单独物理存在,也可以两个或两个以上模块集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。

集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、磁碟或者光盘等各种可以存储程序代码的介质。

需要说明的是,对于前述的各方法实施例,为了简便描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请并不受所描述的动作顺序的限制,因为依据本申请,某些步骤可以采用其它顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定都是本申请所必须的。

在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其它实施例的相关描述。

以上为对本申请所提供的一种数据处理方法、装置、存储介质以及终端的描述,对于本领域的技术人员,依据本申请实施例的思想,在具体实施方式及应用范围上均会有改变之处,综上,本说明书内容不应理解为对本申请的限制。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1