数据包发布的方法、装置、电子设备及可读存储介质制造方法及图纸

技术编号:33032048 阅读:17 留言:0更新日期:2022-04-15 09:08
本申请实施例提供了一种数据包发布的方法、装置、电子设备及可读存储介质,涉及数据处理技术领域。该方法包括:根据业务属性确定目标业务,读取目标业务对应的数据源中的业务数据;当与目标业务对应的工作模式为第一工作模式时,对读取到的业务数据进行预处理,得到目标数据;获取预先配置的、包括业务数据的处理流程的代码文件,确定目标业务应用的目标流式运算平台,将代码文件中的代码转换为应用于目标流式计算平台的目标代码;将目标数据和转换后的代码文件进行打包,将打包后得到的目标数据包发布到目标流式计算平台。本申请实施例实现自动将业务处理流程对应的代码转换为应用于各目标流式计算平台的代码,降低了程序开发的难度。的难度。的难度。

【技术实现步骤摘要】
数据包发布的方法、装置、电子设备及可读存储介质


[0001]本申请涉及数据处理
,具体而言,本申请涉及一种数据包发布方法、装置、电子设备及可读存储介质。

技术介绍

[0002]随着互联网的更进一步发展,信息浏览、搜索、关系交互传递型,以及电子商务、互联网旅游生活产品等将生活中的流通环节在线化。对于实时性的要求进一步提升,而信息的交互和沟通正在从点对点往信息链甚至信息网的方向发展,这样必然带来数据在各个维度的交叉关联,数据爆炸已不可避免,因此,流式处理应运而生。流式处理可以很大程度上获取数据架子,并具备快速的洞察力。
[0003]流式处理目前对应有4种流式计算框架,分别为ApacheStorm(简称Storm框架)、ApacheSpark(简称Spark框架)、ApacheFlink框架(简称Flink框架)以及ApacheSamza(简称Samza框架),它们都具有低延迟、可扩展和容错性诸多优点,但同时又有诸多不同之处,比如3者对数据流的传递方式不同,Storm框架的延迟较低,其他的框架的延迟相对于Storm框架而言较高等。
[0004]这4种流式计算框架应用于不同的流式计算平台,分别为Storm流式计算平台、Spark流式计算平台、Flink流式计算平台以及Samza流式计算平台,这些流式计算平台各自也具备其对应的流式计算框架的优缺点,开发人员在开发某业务对应的应用程序时,通常会开发一套应用于某流式计算平台的代码,当想要将该目标业务应用于别的流式计算平台时,需要额外再开发一套代码以适应另外的流式处理平台,这很大程度上增加了程序开发的难度,导致开发成本较高。

技术实现思路

[0005]本申请实施例提供了一数据包发布的方法、装置、电子设备、计算机可读存储介质及计算机程序产品,可以解决开发应用于不同的流式计算平台的成本较高的问题。所述技术方案如下:
[0006]根据本申请实施例的一个方面,提供了一种数据包发布的方法,该方法包括:
[0007]根据业务的业务属性,从多个待读取数据的业务中确定出目标业务;
[0008]基于所述目标业务与数据源之间的对应关系,读取目标业务对应的数据源中的业务数据;
[0009]当与目标业务对应的工作模式为第一工作模式时,对所述业务数据进行预处理,得到目标数据;
[0010]获取预先为目标业务配置的、包括业务数据的处理流程的代码文件
[0011]确定目标业务应用的目标流式运算平台,将代码文件中的代码转换为应用于目标流式计算平台的目标代码;
[0012]将目标数据和转换后的代码文件进行打包,并将打包后得到的目标数据包发布到
目标流式计算平台。
[0013]在一个可能的实现方式中,根据业务的业务属性,从多个待读取数据的业务中确定出目标业务,包括:
[0014]获取多个待读取数据的业务的业务属性,根据业务属性分别确定多个待读取数据的业务分别对应的业务类型;业务类型包括普通类型、实时类型、批处理类型;
[0015]若待读取数据的业务同时符合实时类型和批处理类型,则确定待读取数据的业务为目标业务。
[0016]在一个可能的实现方式中,读取目标业务对应的数据源中的业务数据,之后还包括:
[0017]在对业务数据读取过程中,当与目标业务对应的工作模式改变为第二工作模式时,停止对读取到的业务数据进行预处理,将业务数据存储至缓冲区。
[0018]在一个可能的实现方式中,对读取到的业务数据进行预处理,得到目标数据,包括:
[0019]为读取到的业务数据配置业务参数,将业务数据、业务参数进行封装,得到目标数据;业务参数包括业务数据的唯一标识、所属批次号以及所属批次的批次数据总量。
[0020]在一个可能的实现方式中,将代码文件中的代码转换为应用于目标流式计算平台的目标代码,包括:
[0021]对代码文件进行解析,得到执行业务流程的各个数据处理节点以及各个数据处理节点在执行业务流程时的执行顺序;
[0022]根据执行顺序构建包含各数据处理节点的目标拓扑图;目标拓扑图中的拓扑节点表征数据处理节点;目标拓扑图的有向边表征执行顺序;
[0023]获取目标流式计算平台对应的代码生成规则,根据代码生成规则以及目标拓扑图将代码文件中的代码转换为应用于目标流式计算平台的目标代码。
[0024]在一个可能的实现方式中,根据代码生成规则以及目标拓扑图将代码文件中的代码转换为应用于目标流式计算平台的目标代码,包括:
[0025]由下而上遍历目标拓扑图的各个拓扑节点,针对每一拓扑节点,确定当前时刻遍历到的拓扑节点对应的当前数据处理节点,并在代码文件中确定当前数据处理节点对应的代码块;
[0026]根据代码生成规则对代码块进行转换,以使得转换后的代码块可应用于目标流式计算平台。
[0027]在一个可能的实现方式中,将打包后得到的目标数据包发布到目标流式计算平台,之后还包括:
[0028]监听目标数据包在目标流式计算平台的运行状况,若监听到异常,则定位异常所在的数据处理节点,并对数据处理节点的所在的代码块进行修正。
[0029]根据本申请实施例的另一个方面,提供了一种数据包发布的装置,该装置包括:
[0030]目标业务确定模块,用于根据业务的业务属性,从多个待读取数据的业务中确定出目标业务;
[0031]业务数据读取模块,用于基于目标业务与数据源之间的对应关系,读取目标业务对应的业务数据;
[0032]预处理模块,用于当与目标业务对应的工作模式为第一工作模式,对读取到的业务数据进行预处理,得到目标数据;
[0033]代码文件获取模块,用于获取预先为目标业务配置的、包括业务数据的处理流程的代码文件;
[0034]转换模块,用于确定目标业务应用的目标流式运算平台,将代码文件中的代码转换为应用于目标流式计算平台的目标代码;
[0035]数据包发布模块,用于将目标数据和转换后的代码文件进行打包,并将打包后得到的目标数据包发布到目标流式计算平台。
[0036]根据本申请实施例的另一个方面,提供了一种电子设备,该电子设备包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行程序时实现如第一方面所提供的方法的步骤。
[0037]根据本申请实施例的再一个方面,提供了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如第一方面所提供的方法的步骤。
[0038]根据本申请实施例的又一个方面,提供了一种计算机程序产品,该计算机程序产品包括计算机指令,该计算机指令存储在计算机可读存储介质中,当计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行实现如第一方面所提供的方法的步骤。
[0039]本申请实施例提供的技术方案带来的有益效果是:
[0040]本申请实施例根据业务的业务属性,从多个本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种数据包发布的方法,其特征在于,包括:根据业务的业务属性,从多个待读取数据的业务中确定出目标业务;基于所述目标业务与数据源之间的对应关系,读取所述目标业务对应的数据源中的业务数据;当与所述目标业务对应的工作模式为第一工作模式时,对所述业务数据进行预处理,得到目标数据;获取预先为所述目标业务配置的、包括所述业务数据的处理流程的代码文件;确定所述目标业务应用的目标流式运算平台,将所述代码文件中的代码转换为应用于所述目标流式计算平台的目标代码;将所述目标数据和转换后的代码文件进行打包,并将打包后得到的目标数据包发布到所述目标流式计算平台。2.根据权利要求1所述的方法,其特征在于,根据业务的业务属性,从多个待读取数据的业务中确定出目标业务,包括:获取多个待读取数据的业务的业务属性,根据所述业务属性分别确定多个所述待读取数据的业务分别对应的业务类型;所述业务类型包括普通类型、实时类型以及批处理类型;若所述待读取数据的业务同时符合实时类型和批处理类型,则确定所述待读取数据的业务为目标业务。3.根据权利要求1所述的方法,其特征在于,所述读取所述目标业务对应的数据源中的业务数据,之后还包括:在对所述业务数据读取过程中,当与所述目标业务对应的工作模式改变为第二工作模式时,停止对读取到的所述业务数据进行预处理,将所述业务数据存储至缓冲区。4.根据权利要求1所述的方法,其特征在于,所述对读取到的所述业务数据进行预处理,得到目标数据,包括:为读取到的所述业务数据配置业务参数,将所述业务数据、所述业务参数进行封装,得到目标数据;所述业务参数包括所述业务数据的唯一标识、所属批次号以及所属批次的批次数据总量。5.根据权利要求1所述的方法,其特征在于,将所述代码文件中的代码转换为应用于所述目标流式计算平台的目标代码,包括:对所述代码文件进行解析,得到执行所述业务流程的各个数据处理节点以及各个数据处理节点在执行所述业务流程时的执行顺序;根据所述执行顺序构建包含各数据处理节点的目标拓扑图;所述目标拓扑图中的拓扑节点表征所述数据处理节点;所述目标拓扑图的有向边表征所述执行顺序;获取所述目标流式计算平台对应的代码生...

【专利技术属性】
技术研发人员:刘磊
申请(专利权)人:中电金信软件有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1