CN111158891A - 基于Flink技术的分析任务处理方法、装置及存储介质 - Google Patents

基于Flink技术的分析任务处理方法、装置及存储介质 Download PDF

Info

Publication number
CN111158891A
CN111158891A CN202010254832.1A CN202010254832A CN111158891A CN 111158891 A CN111158891 A CN 111158891A CN 202010254832 A CN202010254832 A CN 202010254832A CN 111158891 A CN111158891 A CN 111158891A
Authority
CN
China
Prior art keywords
task
analysis task
target
flink
target analysis
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.)
Granted
Application number
CN202010254832.1A
Other languages
English (en)
Other versions
CN111158891B (zh
Inventor
詹聪
唐志斌
蔡青
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Wuhan Zhongke Tongda High New Technology Co Ltd
Original Assignee
Wuhan Zhongke Tongda High New Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Wuhan Zhongke Tongda High New Technology Co Ltd filed Critical Wuhan Zhongke Tongda High New Technology Co Ltd
Priority to CN202010254832.1A priority Critical patent/CN111158891B/zh
Publication of CN111158891A publication Critical patent/CN111158891A/zh
Application granted granted Critical
Publication of CN111158891B publication Critical patent/CN111158891B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/4881Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本申请实施例公开了一种基于Flink技术的分析任务处理方法、装置及存储介质,该基于Flink技术的分析任务处理方法在分析任务执行时,通过获取目标分析任务的任务逻辑数据包,查找预先为目标分析任务配置的参数和命令模板,自动拼接得到执行目标分析任务的完整shell命令,通过shell命令完成目标分析任务的执行,本申请实施例中现有技术中无法自动处理外部大数据平台的分析任务请求,且针对外部大数据平台的分析任务请求只能手动拼接复杂的命令参数的情况,简化了大数据分析场景下的操作复杂度,自动进行分析任务的shell命令的拼接,操作简单容易,降低了对分析任务操作者的要求,无需操作者进行复杂的工作,避免人为操作的过程中出现的错误。

Description

基于Flink技术的分析任务处理方法、装置及存储介质
技术领域
本发明涉及大数据处理技术领域,具体涉及一种基于Flink技术的分析任务处理方法、装置及存储介质。
背景技术
大数据计算处理的技术有很多,比如Hadoop(批处理),Storm(流处理),Samza(流处理),Flink(批式流处理)等这些技术,无论使用哪种技术进行大数据分析的时候,都需要对处理任务进行分配空间和资源,以及对所有的作业进行控制管理。
目前这些大数据处理技术框架本身都有自带的作业管理功能,也有其他的应用框架提供了单一功能的作业管理和资源分配功能,功能更强大和专业,比如Flink和yarn的集成模式。而在Flink和yarn的集成模式中,对于每个任务作业的操作,首先需要手动上传jar包到Flink服务器,然后使用命令来进行运行jar包,这个针对使用和维护的人员技术要求很高,操作复杂,在执行任务的时候,需要根据不同的任务手动拼接复杂的命令参数,然后在Flink服务器上执行拼接的linux命令,工作繁杂,且容易出错。
发明内容
本申请实施例提供一种基于Flink技术的分析任务处理方法、装置及存储介质,现有技术中无法自动处理外部大数据平台的分析任务请求,且针对外部大数据平台的分析任务请求只能手动拼接复杂的命令参数的情况,简化了大数据分析场景下的操作复杂度,自动进行分析任务的shell命令的拼接,操作简单容易,降低了对分析任务操作者的要求,无需操作者进行复杂的工作,避免人为操作的过程中出现的错误。
一方面,本申请提供一种基于Flink技术的分析任务处理方法,所述方法包括:
获取外部大数据平台发送的目标分析任务请求,所述目标分析任务请求包括目标分析任务的标识和目标分析任务的业务参数;
获取执行所述目标分析任务的任务逻辑数据包;
根据所述目标分析任务的标识,在Flink大数据分析管理系统对应的数据库中查找预先为所述目标分析任务配置的Flink服务器信息、参数信息及命令模板,所述Flink服务器信息中包括用于登录执行所述目标分析任务的目标Flink服务器的登录信息,以及在所述目标Flink服务器中上传所述目标分析任务的任务逻辑数据包的指定路径;
根据所述参数信息,拼接形成所述目标分析任务的运行参数键值对;
利用所述目标分析任务的业务参数替换所述命令模板中对应的业务参数,生成执行所述目标分析任务的命令参数;
根据所述运行参数键值对和所述目标分析任务的命令参数进行拼接,形成执行所述目标分析任务的shell命令;
根据所述目标Flink服务器的登录信息建立与所述目标Flink服务器的远程连接,将所述shell命令发送到所述目标Flink服务器,以通过所述任务逻辑数据包执行所述目标分析任务。
在本申请一些实施例中,在所述获取执行所述目标分析任务的任务逻辑数据包之前,所述方法还包括:
为所述目标分析任务配置Flink服务器信息;
为所述目标分析任务配置参数信息;
为所述目标分析任务配置命令模板;
为所述目标分析任务配置任务信息。
在本申请一些实施例中,所述为所述目标分析任务配置Flink服务器信息包括:
为所述目标分析任务配置目标Flink服务器名称、目标Flink服务器ip地址、目标Flink服务器端口、目标Flink服务器账号、目标Flink服务器密码、目标Flink服务器运行路径、目标Flink服务器中上传所述目标分析任务的任务逻辑数据包的指定路径。
在本申请一些实施例中,所述参数信息中的各参数包括参数名称、参数键名和参数键值,所述为所述目标分析任务配置参数信息,包括:
若所述目标分析任务为过车频率分析离线任务,为所述目标分析任务配置过车记录es索引、esip地址、es端口、es集群地址、视频大数据系统数据库连接地址、视频大数据系统数据库连接账户、视频大数据系统数据库连接密码、车牌号校验格式;
若所述目标分析任务为车辆关联imsi分析定时任务,为所述目标分析任务配置电围数据es索引、过车记录es索引、esip地址、es端口、时间校正次数、数据接入地址、车辆编码、imsi编码。
在本申请一些实施例中,所述命令模板中各命令模板包括命令名称、命令排序、命令类型、命令键值以及命令格式,所述命令模板中包括停止任务命令和启动任务命令的模板。
在本申请一些实施例中,所述为所述目标分析任务配置任务信息,包括:
为所述目标分析任务配置任务编号、任务名称、任务逻辑数据包名、任务类型选择及任务主类名。
在本申请一些实施例中,所述方法还包括:
获取对所述目标分析任务的执行情况的查询请求;
根据所述查询请求生成查询指令;
将所述查询指令发送给所述yarn平台,以在所述yarn平台查询所述目标分析任务的执行情况;
接收所述yarn平台反馈的目标分析任务的执行情况,并更新所述目标分析任务的执行状态。
在本申请一些实施例中,所述方法还包括:
在所述目标分析任务执行失败时,获取所述目标Flink服务器发送的任务失败提示;
重新将所述shell命令发送到所述目标Flink服务器,以通过所述任务逻辑数据包再次执行所述目标分析任务。
另一方面,本申请提供一种基于Flink技术的分析任务处理装置,所述装置包括:
第一获取模块,用于获取外部大数据平台发送的目标分析任务请求,所述目标分析任务请求包括目标分析任务的标识和目标分析任务的业务参数;
第二获取模块,用于获取执行所述目标分析任务的任务逻辑数据包;
查找模块,用于根据所述目标分析任务的标识,在所述Flink大数据分析管理系统对应的数据库中查找预先为所述目标分析任务配置的Flink服务器信息、参数信息及命令模板,所述Flink服务器信息中包括用于登录执行所述目标分析任务的目标Flink服务器的登录信息,以及在所述目标Flink服务器中上传所述目标分析任务的任务逻辑数据包的指定路径;
拼接模块,用于根据所述参数信息,拼接形成所述目标分析任务的运行参数键值对;利用所述目标分析任务的业务参数替换所述命令模板中对应的业务参数,生成执行所述目标分析任务的命令参数;根据所述运行参数键值对和所述目标分析任务的命令参数进行拼接,形成执行所述目标分析任务的shell命令;
任务执行模块,用于根据所述目标Flink服务器的登录信息建立与所述目标Flink服务器的远程连接,将所述shell命令发送到所述目标Flink服务器,以通过所述任务逻辑数据包执行所述目标分析任务。
在本申请一些实施例中,所述装置还包括配置模块,所述配置模块用于:
在所述获取执行所述目标分析任务的任务逻辑数据包之前,为所述目标分析任务配置Flink服务器信息;
为所述目标分析任务配置参数信息;
为所述目标分析任务配置命令模板;
为所述目标分析任务配置任务信息。
在本申请一些实施例中,所述配置模块具体用于:为所述目标分析任务配置目标Flink服务器名称、目标Flink服务器ip地址、目标Flink服务器端口、目标Flink服务器账号、目标Flink服务器密码、目标Flink服务器运行路径、目标Flink服务器中上传所述目标分析任务的任务逻辑数据包的指定路径。
在本申请一些实施例中,所述参数信息中的各参数包括参数名称、参数键名和参数键值,所述配置模块具体用于:
若所述目标分析任务为过车频率分析离线任务,为所述目标分析任务配置过车记录es索引、esip地址、es端口、es集群地址、视频大数据系统数据库连接地址、视频大数据系统数据库连接账户、视频大数据系统数据库连接密码、车牌号校验格式;
若所述目标分析任务为车辆关联imsi分析定时任务,为所述目标分析任务配置电围数据es索引、过车记录es索引、esip地址、es端口、时间校正次数、数据接入地址、车辆编码、imsi编码。
在本申请一些实施例中,所述命令模板中各命令模板包括命令名称、命令排序、命令类型、命令键值以及命令格式,所述命令模板中包括停止任务命令和启动任务命令的模板。
在本申请一些实施例中,所述配置模块具体用于:为所述目标分析任务配置任务编号、任务名称、任务逻辑数据包名、任务类型选择及任务主类名。
在本申请一些实施例中,所述装置还包括任务状态更新模块,所述任务状态更新模块用于:
获取对所述目标分析任务的执行情况的查询请求;
根据所述查询请求生成查询指令;
将所述查询指令发送给所述yarn平台,以在所述yarn平台查询所述目标分析任务的执行情况;
接收所述yarn平台反馈的目标分析任务的执行情况,并更新所述目标分析任务的执行状态。
在本申请一些实施例中,所述任务执行模块还用于:在所述目标分析任务执行失败时,获取所述目标Flink服务器发送的任务失败提示;重新将所述shell命令发送到所述目标Flink服务器,以通过所述任务逻辑数据包再次执行所述目标分析任务。
另一方面,本申请还提供一种服务器,所述服务器包括:
一个或多个处理器;
存储器;以及
一个或多个应用程序,其中所述一个或多个应用程序被存储于所述存储器中,并配置为由所述处理器执行以实现所述的基于Flink技术的分析任务处理方法。
另一方面,本申请还提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器进行加载,以执行所述的基于Flink技术的分析任务处理方法中的步骤。
本申请实施例中在分析任务执行时,通过获取目标分析任务的任务逻辑数据包,查找预先为目标分析任务配置的参数和命令模板,自动拼接得到执行目标分析任务的完整shell命令,通过shell命令完成目标分析任务的执行,本申请实施例中由于可以针对外部大数据平台的目标分析任务请求,可以自动拼接得到执行目标分析任务的完整shell命令,避免了现有技术中无法自动处理外部大数据平台的分析任务请求,且针对外部大数据平台的分析任务请求只能手动拼接复杂的命令参数的情况,简化了大数据分析场景下的操作复杂度,自动进行分析任务的shell命令的拼接,操作简单容易,降低了对分析任务操作者的要求,无需操作者进行复杂的工作,避免人为操作的过程中出现的错误。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的Flink大数据分析管理系统的场景示意图;
图2是本申请实施例提供的Flink服务器配置的一个界面示意图;
图3是本申请实施例提供的Flink运行参数配置的一个界面示意图;
图4是本申请实施例提供的Flink任务命令配置的一个界面示意图;
图5是本申请实施例提供的Flink任务信息配置的一个界面示意图;
图6是本申请实施例中提供的基于Flink技术的分析任务处理方法的一个实施例流程示意图;
图7是本申请实施例中提供的为所述目标分析任务配置信息的一个实施例流程示意图;
图8是本申请实施例中提供的查询目标分析任务执行状态的一个实施例流程示意图;
图9是本申请实施例中提供的基于Flink技术的分析任务处理装置的一个实施例结构示意图;
图10是本申请实施例中提供的服务器的一个实施例结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
在本发明的描述中,需要理解的是,术语“中心”、“纵向”、“横向”、“长度”、“宽度”、“厚度”、“上”、“下”、“前”、“后”、“左”、“右”、“竖直”、“水平”、“顶”、“底”、“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个所述特征。在本发明的描述中,“多个”的含义是两个或两个以上,除非另有明确具体的限定。
在本申请中,“示例性”一词用来表示“用作例子、例证或说明”。本申请中被描述为“示例性”的任何实施例不一定被解释为比其它实施例更优选或更具优势。为了使本领域任何技术人员能够实现和使用本发明,给出了以下描述。在以下描述中,为了解释的目的而列出了细节。应当明白的是,本领域普通技术人员可以认识到,在不使用这些特定细节的情况下也可以实现本发明。在其它实例中,不会对公知的结构和过程进行详细阐述,以避免不必要的细节使本发明的描述变得晦涩。因此,本发明并非旨在限于所示的实施例,而是与符合本申请所公开的原理和特征的最广范围相一致。
本申请实施例提供一种基于Flink技术的分析任务处理方法、装置及存储介质,以下分别进行详细说明。
请参阅图1,图1为本申请实施例所提供的Flink大数据分析管理系统的场景示意图,该Flink大数据分析管理系统可以包括控制服务器100和多个Flink服务器200,控制服务器100和Flink服务器200网络连接,控制服务器100中集成有基于Flink技术的分析任务处理装置,如图1中的服务器,控制服务器100可以与Flink服务器200进行数据交互。
其中,本申请中Flink大数据分析管理系统是Apache Flink的框架和分布式处理引擎,用于对无界和有界数据流进行有状态计算。本申请中Flink大数据分析管理系统中多个Flink服务器及多个分布式Flink引擎,由于Flink引擎作为新一代的实时组件,具有吞吐量高、实时性高、优秀的内存管理和流控等优点,因此可极大提高业务数据的处理效率。
本申请实施例中控制服务器100主要用于获取外部大数据平台发送的目标分析任务请求,所述目标分析任务请求包括目标分析任务的标识和目标分析任务的业务参数;获取执行所述目标分析任务的任务逻辑数据包;根据所述目标分析任务的标识,在Flink大数据分析管理系统对应的数据库中查找预先为所述目标分析任务配置的Flink服务器信息、参数信息及命令模板,所述Flink服务器信息中包括用于登录执行所述目标分析任务的目标Flink服务器的登录信息,以及在所述目标Flink服务器中上传所述目标分析任务的任务逻辑数据包的指定路径;根据所述参数信息,拼接形成所述目标分析任务的运行参数键值对;利用所述目标分析任务的业务参数替换所述命令模板中对应的业务参数,生成执行所述目标分析任务的命令参数;根据所述运行参数键值对和所述目标分析任务的命令参数进行拼接,形成执行所述目标分析任务的shell命令;根据所述目标Flink服务器的登录信息建立与所述目标Flink服务器的远程连接,将所述shell命令发送到所述目标Flink服务器,以通过所述任务逻辑数据包执行所述目标分析任务。
本申请实施例中,该服务器100可以是独立的服务器,也可以是服务器组成的服务器网络或服务器集群,例如,本申请实施例中所描述的服务器100,其包括但不限于计算机、网络主机、单个网络服务器、多个网络服务器集或多个服务器构成的云服务器。其中,云服务器由基于云计算(Cloud Computing)的大量计算机或网络服务器构成。本发明的实施例中,控制服务器与用户终端之间可通过任何通信方式实现通信,包括但不限于,基于第三代合作伙伴计划(3rd Generation Partnership Project,3GPP)、长期演进(Long TermEvolution,LTE)、全球互通微波访问(Worldwide Interoperability for MicrowaveAccess, WiMAX)的移动通信,或基于TCP/IP协议族(TCP/IP Protocol Suite,TCP/IP)、用户数据报协议(User Datagram Protocol,UDP)的计算机网络通信等。
本领域技术人员可以理解,图1中示出的应用环境,仅仅是与本申请方案一种应用场景,并不构成对本申请方案应用场景的限定,其他的应用环境还可以包括比图1中所示更多或更少的Flink服务器,或者服务器网络连接关系,例如图1中仅示出1个服务器和1个Flink服务器,可以理解的,该Flink大数据分析管理系统还可以包括一个或多个与控制服务器网络连接的其他Flink服务器,具体此处不作限定。
另外,如图1所示,该Flink大数据分析管理系统还可以包括存储器300,用于存储Flink大数据分析管理系统对应的数据库,该数据库中具体可以包括各种分析任务的信息,例如分析任务的配置信息,参数信息,命令模板等,具体此处不做限定。
本申请实施例中,Flink大数据分析管理系统可以包括如下功能:
(1)Flink服务器管理
如图2所示,其中主机即为Flink服务器,Flink服务器管理功能,主要是进行录入Flink服务器信息,包括Flink服务器名称、Flink服务器ip、Flink服务器port(端口)、Flink服务器账号、Flink服务器密码、Flink服务器运行路径、任务逻辑数据包(即Jar包)存放路径等信息,并且把这些信息存储到Flink服务器信息表中,这些信息是用来登录Flink服务器,指定上传jar包路径和Flink程序运行路径。
(2)参数管理
如图3所示,参数管理功能,主要是进行录入参数信息,包括参数名称、参数键名和参数键值等信息,用于替换命令中的参数和dsl语句中的参数。
(3)命令管理
如图4所示,命令管理功能,主要进行录入Flink命令,包括命令名称、命令排序、命令类型和命令键值,配置的命令用来判断如何执行大数据分析任务,以及具体的命令格式。
(4)任务管理
如图5所示,任务管理功能,主要进行录入Flink任务信息,包括任务编号、任务名称、任务jar名、任务类型、任务主类名、主机、参数、执行命令、终止命令、定时任务表达式等信息,配置定时这些信息用来执行具体的任务,同时可以上传jar包,按照配置的定时任务表达式定时执行大数据分析任务。
(5)任务调度管理
任务调度功能,主要展示所有的任务状态,包括任务名称、任务调度主机、任务调度状态、分析任务编号、分析请求报文、启动完成报文等信息,同时本功能还对外提供任务状态查询服务。
需要说明的是,图1所示的Flink大数据分析管理系统的场景示意图仅仅是一个示例,本申请实施例描述的Flink大数据分析管理系统以及场景是为了更加清楚的说明本申请实施例的技术方案,并不构成对于本申请实施例提供的技术方案的限定,本领域普通技术人员可知,随着Flink大数据分析管理系统的演变和新业务场景的出现,本申请实施例提供的技术方案对于类似的技术问题,同样适用。
首先,本申请实施例中提供一种基于Flink技术的分析任务处理方法,该基于Flink技术的分析任务处理方法应用于基于Flink技术的分析任务处理装置,基于Flink技术的分析任务处理装置位于控制服务器100。
如图6所示,为本申请实施例中基于Flink技术的分析任务处理方法的一个实施例流程示意图,该基于Flink技术的分析任务处理方法包括:
601、获取外部大数据平台发送的目标分析任务请求。
其中,外部大数据平台可以是Flink大数据分析管理系统之外,与Flink大数据分析管理系统网络连接的大数据平台,例如产生大量车辆图像数据的车辆大数据平台,物流大数据平台等,该外部大数据平台接入本申请实施例中Flink大数据分析管理系统,后续可以利用Flink大数据分析管理系统对外部大数据平台进行分析管理。
由于外部大数据平台与本申请中Flink大数据分析管理系统是两个独立的平台,外部大数据平台一般是外部处理预设类型数据的平台,例如车辆视频大数据平台,物流大数据平台等,因此,外部大数据平台与本申请中Flink大数据分析管理系统中对于业务数据及各种命令管理方式及均不相同,目前,在Flink大数据分析管理系统中可以直接创建任务执行对应的分析任务,但对于外部大数据平台的业务分析请求,无法自动处理外部大数据平台的分析任务请求,且针对外部大数据平台的分析任务请求只能手动拼接复杂的命令参数,过程过于复杂,本申请中一个改进点是在Flink大数据分析管理系统自动处理外部大数据平台的分析任务请求。
当外部大数据平台有数据分析的需求时,可以向本申请实施例中Flink大数据分析管理系统中控制服务器发送的目标分析任务请求,以在Flink大数据分析管理系统实现目标分析任务的执行。
另外,所述目标分析任务请求包括目标分析任务的标识和目标分析任务的业务参数,具体的,目标分析任务的标识可以是目标分析任务的身份标识号(Identity document,ID),例如,任务编号或任务名称等。目标分析任务的业务参数可以是目标分析任务执行的具体场景的业务参数,例如目标分析任务为过车频率分析离线任务时,目标分析任务的业务参数可以包括过车时间段、车牌号码、选择卡口设备和过车频次等条件参数信息。
602、获取执行所述目标分析任务的任务逻辑数据包。
本申请实施例中,目标分析任务可以是离线分析任务,也可以是定时分析任务,若目标分析任务是离线分析任务,则获取执行所述目标分析任务的任务逻辑数据包的方式可以是获取用户上传的所述目标分析任务的任务逻辑数据包,若目标分析任务是定时分析任务,则获取执行所述目标分析任务的任务逻辑数据包的方式可以是获取本地执行所述目标分析任务的任务逻辑数据包。
通常在编写一个基于Flink的分析任务的时候,肯定会有依赖的jar包,本申请实施例中,执行所述目标分析任务的任务逻辑数据包即为执行所述目标分析任务的jar包(java程序包),可以理解的是,如果未来基于Flink的分析任务依赖的任务逻辑数据包可以是其他形式,在本申请的发明构思下任务逻辑数据包的格式具体也可以不做限制。
对于不同的业务数据进行大数据分析,提供命令和业务参数的入口,需要开发单独的代码jar包,以供不同的分析任务使用。
本申请实施例中涉及的目标分析业务可以是定时任务或离线任务,离线任务是对外部提供接口服务,在应用系统中可以对这些任务进行监控和处理等操作,同时也对外部提供任务状态信息服务。定时任务是进行一些需要定时分析处理的任务,在应用系统中可以对这些任务设置时间间隔,以及进行监控和处理等操作。
定时任务中,比如车辆关联imsi分析定时任务,具体为VIRelationAnalysisTask.jar包,在VIRelationAnalysisTask.jar包中需要实现分析逻辑,首先在系统中配置好同一地点的卡口设备和wifi设备的关联关系,根据卡口设备获取的过车记录信息和wifi设备获取的电围数据,对5秒内同一地点的车辆和手机的imsi进行配对,最后对于所有范围的配对信息取交集,这样最终就会分析人和车辆和手机之间的一个关联关系。通过管理平台的定时任务功能,执行的越久,分析的数据就越多,最终对所有的人、车、手机都建会建立一个关联关系。
离线任务中,比如过车频率分析任务,在jar包中需要实现过车频率的分析逻辑,根据过车记录数据,按照分析任务要求,设置时间段、车牌号、卡口设备和过车频次等信息,然后进行分析统计,车辆视频大数据系统(外部大数据平台)中根据业务创建分析任务,该分析任务调用Flink管理平台的过车频率分析离线任务包(例如预先上传过车频率分析离线任务的jar包),离线任务完成拼接执行命令,调用jar包执行分析功能。
603、根据所述目标分析任务的标识,在所述Flink大数据分析管理系统对应的数据库中查找预先为所述目标分析任务配置的Flink服务器信息、参数信息及命令模板。
其中,所述Flink服务器信息中包括用于登录执行所述目标分析任务的目标Flink服务器的登录信息,在所述目标Flink服务器中上传所述目标分析任务的任务逻辑数据包的指定路径以及目标Flink服务器中启动Flink服务的程序运行路径,其中,该指定路径是当目标分析任务是离线分析任务,用于保存用户上传的所述目标分析任务的任务逻辑数据包的路径。
本申请实施例中,在所述获取执行所述目标分析任务的任务逻辑数据包之前,可以预先为所述目标分析任务配置好Flink服务器信息、参数信息、命令模板和任务信息,此时,如图7所示,所述基于Flink技术的分析任务处理方法还可以包括:
701、为所述目标分析任务配置Flink服务器信息。
其中,所述为所述目标分析任务配置Flink服务器信息具体包括:为所述目标分析任务配置目标Flink服务器名称、目标Flink服务器ip地址、目标Flink服务器端口、目标Flink服务器账号、目标Flink服务器密码、目标Flink服务器运行路径、目标Flink服务器中上传所述目标分析任务的任务逻辑数据包的指定路径。具体配置信息,可以参考图2。
702、为所述目标分析任务配置参数信息。
所述参数信息为执行所述目标分析任务的运行参数,所述参数信息中的各参数包括参数名称、参数键名和参数键值,具体配置方式可以如图3所示。
具体的,所述为所述目标分析任务配置参数信息,可以包括:若所述目标分析任务为过车频率分析离线任务,为所述目标分析任务配置过车记录es索引、esip地址、es端口、es集群地址、视频大数据系统数据库连接地址、视频大数据系统数据库连接账户、视频大数据系统数据库连接密码、车牌号校验格式。若所述目标分析任务为车辆关联imsi分析定时任务,为所述目标分析任务配置电围数据es索引、过车记录es索引、esip地址、es端口、时间校正次数、数据接入地址(可以是上述视频大数据系统数据库连接地址,也可以是Flink大数据分析管理系统对应的数据库的接入地址)、车辆编码、imsi编码。
其中,es为ElasticSearch的缩写,ElasticSearch是一个基于Lucene的搜索服务器。它提供了一个分布式多用户能力的全文搜索引擎,基于RESTful web接口。Elasticsearch是用Java语言开发的,并作为Apache许可条款下的开放源码发布,是一种流行的企业级搜索引擎。ElasticSearch用于云计算中,能够达到实时搜索,稳定,可靠,快速,安装使用方便。本申请实施例中es索引、esip地址、es端口、es集群地址,分别表示给予ElasticSearch全文搜索引擎的索引、ip地址、端口及集群地址。
此外,视频大数据系统即本申请实施例中描述的外部大数据平台,即若所述目标分析任务为过车频率分析离线任务,外部大数据平台为视频大数据系统,具体为车辆视频大数据系统,视频大数据系统设置有对应的数据库,用于保存采集设备采集的车辆图像数据。视频大数据系统数据库连接地址、视频大数据系统数据库连接账户、视频大数据系统数据库连接密码是用于本申请Flink大数据分析管理系统访问视频大数据系统,以获取视频大数据系统数据库中的数据。
imsi为国际移动用户识别码(International Mobile Subscriber Identity),是用于区分蜂窝网络中不同用户的、在所有蜂窝网络中不重复的识别码。本申请实施例中imsi编码可以用户手机的imsi编码。采集用户手机的imsi码的原因是:在一卡口地方,卡口的摄像头采集了车辆信息,也有用户的照片了,用户在卡口附近连接了wifi,通过wifi采集了用户的手机信息(手机的imsi编码),那么后续即可根据手机的imsi编码和车辆、用户的信息在一个时间点上,一个地方都出现了,就知道这些车辆和手机、用户是有关系的,在车辆关联imsi分析定时任务中即需要分析这些关联关系。
其中,电围数据为电子围栏数据,为电子围栏系统采集的数据,例如可以包括目标区域(如卡口)往来人群中关键模板的活动轨迹和过往记录,以及包括目标区域人群来本地的活动情况等。
需要说明的是,若所述目标分析任务为车辆关联imsi分析定时任务,Flink大数据分析管理系统中为该车辆关联imsi分析定时任务设置有一个全局的定时器,定时轮询Flink大数据分析管理系统的定时任务,如果定时任务在当前周期中,就会启动定时任务进行执行车辆关联imsi分析定时任务,车辆关联imsi分析任务执行的时候,就开始执行定时任务逻辑数据包(即jar包)。
703、为所述目标分析任务配置命令模板。
所述命令模板中各命令模板包括命令名称、命令排序、命令类型、命令键值以及命令格式,所述命令模板中包括停止任务命令和启动任务命令的模板。
具体的,可以根据分析任务的不同分别配置不同的命令模板,例如若所述目标分析任务为车辆关联imsi分析定时任务,为所述目标分析任务配置车辆关联imsi分析定时任务的命令模板,若所述目标分析任务为过车频率分析离线任务,为所述过车频率分析离线任务配置所述过车频率分析离线任务的命令模板。
在命令模板中,通用的代码均相同,可以编辑一次之后通用,只是根据目标分析任务的不同,对应的业务参数不同,后续可以通过具体业务参数的替换,实现得到不同分析任务的命令。
在一些具体实施例中,停止任务命令配置如下,命令类型是Flink任务终止命令,命令值是:yarn application -kill $applicationId。
启动任务命令配置如下,命令类型是exec jar执行命令,命令值是:cd $flink_path/&&./flink run -m yarn-cluster -d -ynm $task_name -yjm 1024 -ytm 3072 -ys3 -p 6 $jar_path/$task_name.jar $param。
704、为所述目标分析任务配置任务信息。
其中,所述为所述目标分析任务配置任务信息,可以包括:为所述目标分析任务配置任务编号、任务名称、任务逻辑数据包名、任务类型选择及任务主类名。
具体的,车辆关联imsi分析定时任务,配置任务信息如下:任务编号、任务名称、任务jar包名是VIRelationAnalysisTask、任务类型选择定时任务、任务主类名是VIRelationAnalysisTask,参数信息选择步骤702车联关联imsi分析任务所有参数,执行命令选择步骤703的启动任务命令,终止命令选择步骤703的停止任务命令。
过车频率分析离线任务,配置任务信息如下:任务编号、任务名称、任务jar包名是FrequencyAnalysisTask、任务类型选择离线批处理任务、任务主类名是FrequencyAnalysisTask,参数信息选择步骤702的过车频率分析任务所有参数,执行命令选择选择步骤703的启动任务命令,终止命令选择选择步骤703的停止任务命令。
604、根据所述参数信息,拼接形成所述目标分析任务的运行参数键值对。
所述参数信息为步骤603中预先为所述目标分析任务配置的参数信息。如图3所示,在获取执行目标分析任务的参数信息之后,即可拼接形成所述目标分析任务的运行参数键值对。
具体的,根据所述参数信息,拼接形成所述目标分析任务的运行参数键值对,即按照预设标准JSON数据协议将所述参数信息,自动拼接转换为JSON运行参数字符串(以文件形式存在,格式为.json文件)。具体实施时,在标准JSON数据协议预设完成后,将所述参数信息,自动拼接生成所述目标分析任务的JSON格式运行参数键值对,即生成符合预定义协议所述目标分析任务的JSON文件(.json文件)。
605、利用所述目标分析任务的业务参数替换所述命令模板中对应的业务参数,生成执行所述目标分析任务的命令参数。
命令模板中的业务参数对应的主要占位符有$flink_path、$jar_path、$task_name、$param,其中$flink_path、$jar_path可以替换为Flink服务器信息中flink服务器中启动Flink服务的程序运行路径和Jar包存放路径(即上述所述目标分析任务的任务逻辑数据包的指定路径),$task_name替换为任务信息中的任务jar包名称VIRelationAnalysisTask(即所述目标分析任务的任务逻辑数据包的名称)。
当然,对于具体类型的分析任务,其对应的命令模板还可以包括其他一些具体业务场景的业务参数,例如过车频率分析离线任务中,其对应的命令模板中还可能包括过车时间段、车牌号码、选择卡口设备和过车频次条件对应的业务模板参数,在步骤601中获取目标分析任务的业务参数(实际业务参数)之后,即可替换掉命令模板中业务模板参数。
本申请实施例中,命令模板为基于json的DSL语句,DSL 是 Domain SpecificLanguage 的缩写,中文翻译为领域特定语言,在利用所述目标分析任务的业务参数替换所述命令模板中对应的业务参数,生成执行所述目标分析任务的命令参数之后,该执行所述目标分析任务的命令参数同样为基于json的DSL语句。
606、根据所述运行参数键值对和所述目标分析任务的命令参数进行拼接,形成执行所述目标分析任务的shell命令。
在具体实施方式中,根据所述运行参数键值对和所述目标分析任务的命令参数进行拼接,形成执行所述目标分析任务的shell命令,可以采用$param占位符对所述运行参数键值对和所述目标分析任务的命令参数进行拼接,形成执行所述目标分析任务的shell命令。
具体方式为:$param=''运行参数键值对'' ''目标分析任务的命令参数''。
Shell 是一个用 C 语言编写的程序,它是用户使用 Linux 的桥梁。Shell 既是一种命令语言,又是一种程序设计语言,Shell 脚本(shell script),是一种为 shell 编写的脚本程序。本申请实施例 shell 命令是指 shell 脚本。
607、根据所述目标Flink服务器的登录信息建立与所述目标Flink服务器的远程连接,将所述shell命令发送到所述目标Flink服务器,以通过所述任务逻辑数据包执行所述目标分析任务。
通过目标Flink服务器配置信息中目标Flink服务器的登录信息,使用安全外壳协议(Secure Shell, SSH)与目标Flink服务器建立远程连接,将所述shell命令发送到所述目标Flink服务器,以通过所述任务逻辑数据包执行所述目标分析任务。
本申请实施例中在分析任务执行时,通过获取目标分析任务的任务逻辑数据包,查找预先为目标分析任务配置的参数和命令模板,自动拼接得到执行目标分析任务的完整shell命令,通过shell命令完成目标分析任务的执行,本申请实施例中由于可以自动拼接得到执行目标分析任务的完整shell命令,现有技术中无法自动处理外部大数据平台的分析任务请求,且针对外部大数据平台的分析任务请求只能手动拼接复杂的命令参数的情况,简化了大数据分析场景下的操作复杂度,自动进行分析任务的shell命令的拼接,操作简单容易,降低了对分析任务操作者的要求,无需操作者进行复杂的工作,避免人为操作的过程中出现的错误。
本申请实施例中所述Flink大数据分析管理系统为基于Flink和yarn的集成平台,具体的,基于Flink和yarn的集成模式为现有技术,此处不再详细赘述,此时所述Flink大数据分析管理系统中还包括用于查询分析任务执行状态的yarn平台,如图8所示,所述方法还包括:
801、获取对所述目标分析任务的执行情况的查询请求。
802、根据所述查询请求生成查询指令。
803、将所述查询指令发送给yarn平台,以在所述yarn平台查询所述目标分析任务的执行情况。
其中,yarn平台为Apache Hadoop YARN ,是一种新的 Hadoop 资源管理器,它是一个通用资源管理系统,可为上层应用提供统一的资源管理和调度,它的引入为集群在利用率、资源统一管理和数据共享等方面带来了巨大好处。
804、接收所述yarn平台反馈的目标分析任务的执行情况,并更新所述目标分析任务的执行状态。
本申请实施例中,分析任务可以有4种任务状态:分析中、分析完成、手动停止、分析失败,系统中定时分析任务可以定时查看任务状态为分析中的任务,发送命令给yarn平台,查询任务执行结果,并更新任务状态,通过记录任务执行过程和状态,确定目标时更新任务状态,有效实现分析任务的监控和控制。
在本申请一些实施例中,还可以自动监控目标分析任务是否执行失败,具体的,即在所述目标分析任务执行失败(例如目标分析任务的状态为分析失败)时,获取所述目标Flink服务器发送的任务失败提示;重新将所述shell命令发送到所述目标Flink服务器,以通过所述任务逻辑数据包再次执行所述目标分析任务。
例如,若目标分析任务的状态为分析失败,则可以自动重新执行目标分析任务,而在现有技术手动拼接命令的基础上,若执行失败,只能再次手动拼接命令,无法基于自动检测,自动重新执行目标分析任务,可以提高目标分析任务的执行成功率,再次执行目标分析任务时无需操作者干预,静默执行目标分析任务。
为了更好实施本申请实施例中基于Flink技术的分析任务处理方法,在基于Flink技术的分析任务处理方法基础之上,本申请实施例中还提供一种基于Flink技术的分析任务处理装置,如图9所示,所述基于Flink技术的分析任务处理装置900包括:
第一获取模块901,用于获取外部大数据平台发送的目标分析任务请求,所述目标分析任务请求包括目标分析任务的标识和目标分析任务的业务参数;
第二获取模块902,用于获取执行所述目标分析任务的任务逻辑数据包;
查找模块903,用于根据所述目标分析任务的标识,在所述Flink大数据分析管理系统对应的数据库中查找预先为所述目标分析任务配置的Flink服务器信息、参数信息及命令模板,所述Flink服务器信息中包括用于登录执行所述目标分析任务的目标Flink服务器的登录信息,以及在所述目标Flink服务器中上传所述目标分析任务的任务逻辑数据包的指定路径;
拼接模块904,用于根据所述参数信息,拼接形成所述目标分析任务的运行参数键值对;利用所述目标分析任务的业务参数替换所述命令模板中对应的业务参数,生成执行所述目标分析任务的命令参数;根据所述运行参数键值对和所述目标分析任务的命令参数进行拼接,形成执行所述目标分析任务的shell命令;
任务执行模块905,用于根据所述目标Flink服务器的登录信息建立与所述目标Flink服务器的远程连接,将所述shell命令发送到所述目标Flink服务器,以通过所述任务逻辑数据包执行所述目标分析任务。
本申请实施例中基于Flink技术的分析任务处理装置900在分析任务执行时,通过获取目标分析任务的任务逻辑数据包,查找预先为目标分析任务配置的参数和命令模板,自动拼接得到执行目标分析任务的完整shell命令,通过shell命令完成目标分析任务的执行,本申请实施例中由于可以自动拼接得到执行目标分析任务的完整shell命令,避免了现有技术中手动拼接复杂的命令参数,简化了大数据分析场景下的操作复杂度,自动进行分析任务的shell命令的拼接,操作简单容易,降低了对分析任务操作者的要求,无需操作者进行复杂的工作,避免人为操作的过程中出现的错误。
在本申请一些实施例中,所述装置还包括配置模块,所述配置模块用于:
在所述获取执行所述目标分析任务的任务逻辑数据包之前,为所述目标分析任务配置Flink服务器信息;
为所述目标分析任务配置参数信息;
为所述目标分析任务配置命令模板;
为所述目标分析任务配置任务信息。
在本申请一些实施例中,所述配置模块具体用于:为所述目标分析任务配置目标Flink服务器名称、目标Flink服务器ip地址、目标Flink服务器端口、目标Flink服务器账号、目标Flink服务器密码、目标Flink服务器运行路径、目标Flink服务器中上传所述目标分析任务的任务逻辑数据包的指定路径。
在本申请一些实施例中,所述参数信息中的各参数包括参数名称、参数键名和参数键值,所述配置模块具体用于:
若所述目标分析任务为过车频率分析离线任务,为所述目标分析任务配置过车记录es索引、esip地址、es端口、es集群地址、视频大数据系统数据库连接地址、视频大数据系统数据库连接账户、视频大数据系统数据库连接密码、车牌号校验格式;
若所述目标分析任务为车辆关联imsi分析定时任务,为所述目标分析任务配置电围数据es索引、过车记录es索引、esip地址、es端口、时间校正次数、数据接入地址、车辆编码、imsi编码。
在本申请一些实施例中,所述命令模板中各命令模板包括命令名称、命令排序、命令类型、命令键值以及命令格式,所述命令模板中包括停止任务命令和启动任务命令的模板。
在本申请一些实施例中,所述配置模块具体用于:为所述目标分析任务配置任务编号、任务名称、任务逻辑数据包名、任务类型选择及任务主类名。
在本申请一些实施例中,所述装置还包括任务状态更新模块,所述任务状态更新模块用于:
获取对所述目标分析任务的执行情况的查询请求;
根据所述查询请求生成查询指令;
将所述查询指令发送给所述yarn平台,以在所述yarn平台查询所述目标分析任务的执行情况;
接收所述yarn平台反馈的目标分析任务的执行情况,并更新所述目标分析任务的执行状态。
在本申请一些实施例中,所述任务执行模块还用于:在所述目标分析任务执行失败时,获取所述目标Flink服务器发送的任务失败提示;重新将所述shell命令发送到所述目标Flink服务器,以通过所述任务逻辑数据包再次执行所述目标分析任务。
本申请实施例还提供一种服务器,其集成了本申请实施例所提供的任一种基于Flink技术的分析任务处理装置,所述服务器包括:
一个或多个处理器;
存储器;以及
一个或多个应用程序,其中所述一个或多个应用程序被存储于所述存储器中,并配置为由所述处理器执行上述基于Flink技术的分析任务处理方法实施例中,任一实施例中所述的基于Flink技术的分析任务处理方法中的步骤。
本申请实施例还提供一种服务器,其集成了本申请实施例所提供的任一种基于Flink技术的分析任务处理装置。如图10所示,其示出了本申请实施例所涉及的服务器的结构示意图,具体来讲:
该服务器可以包括一个或者一个以上处理核心的处理器1001、一个或一个以上计算机可读存储介质的存储器1002、电源1003和输入单元1004等部件。本领域技术人员可以理解,图10中示出的服务器结构并不构成对服务器的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。其中:
处理器1001是该服务器的控制中心,利用各种接口和线路连接整个服务器的各个部分,通过运行或执行存储在存储器1002内的软件程序和/或模块,以及调用存储在存储器1002内的数据,执行服务器的各种功能和处理数据,从而对服务器进行整体监控。可选的,处理器1001可包括一个或多个处理核心;优选的,处理器1001可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器1001中。
存储器1002可用于存储软件程序以及模块,处理器1001通过运行存储在存储器1002的软件程序以及模块,从而执行各种功能应用以及数据处理。存储器1002可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据服务器的使用所创建的数据等。此外,存储器1002可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。相应地,存储器1002还可以包括存储器控制器,以提供处理器1001对存储器1002的访问。
服务器还包括给各个部件供电的电源1003,优选的,电源1003可以通过电源管理系统与处理器1001逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。电源1003还可以包括一个或一个以上的直流或交流电源、再充电系统、电源故障检测电路、电源转换器或者逆变器、电源状态指示器等任意组件。
该服务器还可包括输入单元1004,该输入单元1004可用于接收输入的数字或字符信息,以及产生与用户设置以及功能控制有关的键盘、鼠标、操作杆、光学或者轨迹球信号输入。
尽管未示出,服务器还可以包括显示单元等,在此不再赘述。具体在本实施例中,服务器中的处理器1001会按照如下的指令,将一个或一个以上的应用程序的进程对应的可执行文件加载到存储器1002中,并由处理器1001来运行存储在存储器1002中的应用程序,从而实现各种功能,如下:
获取外部大数据平台发送的目标分析任务请求,所述目标分析任务请求包括目标分析任务的标识和目标分析任务的业务参数;
获取执行所述目标分析任务的任务逻辑数据包;
根据所述目标分析任务的标识,在所述Flink大数据分析管理系统对应的数据库中查找预先为所述目标分析任务配置的Flink服务器信息、参数信息及命令模板,所述Flink服务器信息中包括用于登录执行所述目标分析任务的目标Flink服务器的登录信息,以及在所述目标Flink服务器中上传所述目标分析任务的任务逻辑数据包的指定路径;
根据所述参数信息,拼接形成所述目标分析任务的运行参数键值对;
利用所述目标分析任务的业务参数替换所述命令模板中对应的业务参数,生成执行所述目标分析任务的命令参数;
根据所述运行参数键值对和所述目标分析任务的命令参数进行拼接,形成执行所述目标分析任务的shell命令;
根据所述目标Flink服务器的登录信息建立与所述目标Flink服务器的远程连接,将所述shell命令发送到所述目标Flink服务器,以通过所述任务逻辑数据包执行所述目标分析任务。
本领域普通技术人员可以理解,上述实施例的各种方法中的全部或部分步骤可以通过指令来完成,或通过指令控制相关的硬件来完成,该指令可以存储于一计算机可读存储介质中,并由处理器进行加载和执行。
为此,本申请实施例提供一种计算机可读存储介质,该存储介质可以包括:只读存储器(ROM,Read Only Memory)、随机存取记忆体(RAM,Random Access Memory)、磁盘或光盘等。其上存储有计算机程序,所述计算机程序被处理器进行加载,以执行本申请实施例所提供的任一种基于Flink技术的分析任务处理方法中的步骤。例如,所述计算机程序被处理器进行加载可以执行如下步骤:
获取外部大数据平台发送的目标分析任务请求,所述目标分析任务请求包括目标分析任务的标识和目标分析任务的业务参数;
获取执行所述目标分析任务的任务逻辑数据包;
根据所述目标分析任务的标识,在所述Flink大数据分析管理系统对应的数据库中查找预先为所述目标分析任务配置的Flink服务器信息、参数信息及命令模板,所述Flink服务器信息中包括用于登录执行所述目标分析任务的目标Flink服务器的登录信息,以及在所述目标Flink服务器中上传所述目标分析任务的任务逻辑数据包的指定路径;
根据所述参数信息,拼接形成所述目标分析任务的运行参数键值对;
利用所述目标分析任务的业务参数替换所述命令模板中对应的业务参数,生成执行所述目标分析任务的命令参数;
根据所述运行参数键值对和所述目标分析任务的命令参数进行拼接,形成执行所述目标分析任务的shell命令;
根据所述目标Flink服务器的登录信息建立与所述目标Flink服务器的远程连接,将所述shell命令发送到所述目标Flink服务器,以通过所述任务逻辑数据包执行所述目标分析任务。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见上文针对其他实施例的详细描述,此处不再赘述。
具体实施时,以上各个单元或结构可以作为独立的实体来实现,也可以进行任意组合,作为同一或若干个实体来实现,以上各个单元或结构的具体实施可参见前面的方法实施例,在此不再赘述。
以上各个操作的具体实施可参见前面的实施例,在此不再赘述。
以上对本申请实施例所提供的一种基于Flink技术的分析任务处理方法、装置及存储介质进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。

Claims (8)

1.一种基于Flink技术的分析任务处理方法,其特征在于,所述方法包括:
获取外部大数据平台发送的目标分析任务请求,所述目标分析任务请求包括目标分析任务的标识和目标分析任务的业务参数;
获取执行所述目标分析任务的任务逻辑数据包;
根据所述目标分析任务的标识,在Flink大数据分析管理系统对应的数据库中查找预先为所述目标分析任务配置的Flink服务器信息、参数信息及命令模板,所述Flink服务器信息中包括用于登录执行所述目标分析任务的目标Flink服务器的登录信息,以及在所述目标Flink服务器中上传所述目标分析任务的任务逻辑数据包的指定路径;
根据所述参数信息,拼接形成所述目标分析任务的运行参数键值对;
利用所述目标分析任务的业务参数替换所述命令模板中对应的业务参数,生成执行所述目标分析任务的命令参数;
根据所述运行参数键值对和所述目标分析任务的命令参数进行拼接,形成执行所述目标分析任务的shell命令;
根据所述目标Flink服务器的登录信息建立与所述目标Flink服务器的远程连接,将所述shell命令发送到所述目标Flink服务器,以通过所述任务逻辑数据包执行所述目标分析任务;
其中,在所述获取执行所述目标分析任务的任务逻辑数据包之前,所述方法还包括:
为所述目标分析任务配置Flink服务器信息;
为所述目标分析任务配置参数信息;
为所述目标分析任务配置命令模板;
为所述目标分析任务配置任务信息;
所述参数信息中的各参数包括参数名称、参数键名和参数键值,所述为所述目标分析任务配置参数信息,包括:
若所述目标分析任务为过车频率分析离线任务,为所述目标分析任务配置过车记录es索引、esip地址、es端口、es集群地址、视频大数据系统数据库连接地址、视频大数据系统数据库连接账户、视频大数据系统数据库连接密码及车牌号校验格式;
若所述目标分析任务为车辆关联imsi分析定时任务,为所述目标分析任务配置电围数据es索引、过车记录es索引、esip地址、es端口、时间校正次数、数据接入地址、车辆编码及imsi编码。
2.根据权利要求1所述的基于Flink技术的分析任务处理方法,其特征在于,所述为所述目标分析任务配置Flink服务器信息包括:
为所述目标分析任务配置目标Flink服务器名称、目标Flink服务器ip地址、目标Flink服务器端口、目标Flink服务器账号、目标Flink服务器密码、目标Flink服务器运行路径、目标Flink服务器中上传所述目标分析任务的任务逻辑数据包的指定路径。
3.根据权利要求1所述的基于Flink技术的分析任务处理方法,其特征在于,所述命令模板中各命令模板包括命令名称、命令排序、命令类型、命令键值以及命令格式,所述命令模板中包括停止任务命令和启动任务命令的模板。
4.根据权利要求1所述的基于Flink技术的分析任务处理方法,其特征在于,所述为所述目标分析任务配置任务信息,包括:
为所述目标分析任务配置任务编号、任务名称、任务逻辑数据包名、任务类型选择及任务主类名。
5.根据权利要求1所述的基于Flink技术的分析任务处理方法,其特征在于,所述方法还包括:
获取对所述目标分析任务的执行情况的查询请求;
根据所述查询请求生成查询指令;
将所述查询指令发送给yarn平台,以在所述yarn平台查询所述目标分析任务的执行情况;
接收所述yarn平台反馈的目标分析任务的执行情况,并更新所述目标分析任务的执行状态。
6.根据权利要求1所述的基于Flink技术的分析任务处理方法,其特征在于,所述方法还包括:
在所述目标分析任务执行失败时,获取所述目标Flink服务器发送的任务失败提示;
重新将所述shell命令发送到所述目标Flink服务器,以通过所述任务逻辑数据包再次执行所述目标分析任务。
7.一种基于Flink技术的分析任务处理装置,其特征在于,所述装置包括:
第一获取模块,用于获取外部大数据平台发送的目标分析任务请求,所述目标分析任务请求包括目标分析任务的标识和目标分析任务的业务参数;
第二获取模块,用于获取执行所述目标分析任务的任务逻辑数据包;
查找模块,用于根据所述目标分析任务的标识,在所述Flink大数据分析管理系统对应的数据库中查找预先为所述目标分析任务配置的Flink服务器信息、参数信息及命令模板,所述Flink服务器信息中包括用于登录执行所述目标分析任务的目标Flink服务器的登录信息,以及在所述目标Flink服务器中上传所述目标分析任务的任务逻辑数据包的指定路径;
拼接模块,用于根据所述参数信息,拼接形成所述目标分析任务的运行参数键值对;利用所述目标分析任务的业务参数替换所述命令模板中对应的业务参数,生成执行所述目标分析任务的命令参数;根据所述运行参数键值对和所述目标分析任务的命令参数进行拼接,形成执行所述目标分析任务的shell命令;
任务执行模块,用于根据所述目标Flink服务器的登录信息建立与所述目标Flink服务器的远程连接,将所述shell命令发送到所述目标Flink服务器,以通过所述任务逻辑数据包执行所述目标分析任务;
其中,所述装置还包括配置模块,所述配置模块用于:
在所述获取执行所述目标分析任务的任务逻辑数据包之前,为所述目标分析任务配置Flink服务器信息;
为所述目标分析任务配置参数信息;
为所述目标分析任务配置命令模板;
为所述目标分析任务配置任务信息;
所述参数信息中的各参数包括参数名称、参数键名和参数键值,所述配置模块具体用于:
若所述目标分析任务为过车频率分析离线任务,为所述目标分析任务配置过车记录es索引、esip地址、es端口、es集群地址、视频大数据系统数据库连接地址、视频大数据系统数据库连接账户、视频大数据系统数据库连接密码及车牌号校验格式;
若所述目标分析任务为车辆关联imsi分析定时任务,为所述目标分析任务配置电围数据es索引、过车记录es索引、esip地址、es端口、时间校正次数、数据接入地址、车辆编码及imsi编码。
8.一种计算机可读存储介质,其特征在于,其上存储有计算机程序,所述计算机程序被处理器进行加载,以执行权利要求1至6任一项所述的基于Flink技术的分析任务处理方法中的步骤。
CN202010254832.1A 2020-04-02 2020-04-02 基于Flink技术的分析任务处理方法、装置及存储介质 Active CN111158891B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010254832.1A CN111158891B (zh) 2020-04-02 2020-04-02 基于Flink技术的分析任务处理方法、装置及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010254832.1A CN111158891B (zh) 2020-04-02 2020-04-02 基于Flink技术的分析任务处理方法、装置及存储介质

Publications (2)

Publication Number Publication Date
CN111158891A true CN111158891A (zh) 2020-05-15
CN111158891B CN111158891B (zh) 2020-07-07

Family

ID=70567684

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010254832.1A Active CN111158891B (zh) 2020-04-02 2020-04-02 基于Flink技术的分析任务处理方法、装置及存储介质

Country Status (1)

Country Link
CN (1) CN111158891B (zh)

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112181986A (zh) * 2020-10-10 2021-01-05 武汉中科通达高新技术股份有限公司 一种基于Flink框架的数据分析方法及装置
CN112201047A (zh) * 2020-10-10 2021-01-08 武汉中科通达高新技术股份有限公司 一种基于Flink框架的嫌疑车辆落脚点分析方法及装置
CN112328458A (zh) * 2020-11-27 2021-02-05 杭州安恒信息技术股份有限公司 基于flink数据引擎的数据处理方法、装置
CN113076380A (zh) * 2021-04-27 2021-07-06 苏州科达科技股份有限公司 数据同步方法、装置、系统、设备及存储介质
CN113191305A (zh) * 2021-05-17 2021-07-30 武汉中科通达高新技术股份有限公司 一种基于Flink框架的数据管理方法及装置
CN113760242A (zh) * 2021-03-09 2021-12-07 北京京东振世信息技术有限公司 一种数据处理方法、装置、服务器和介质
CN113805851A (zh) * 2021-08-27 2021-12-17 上海得帆信息技术有限公司 一种Flink自动集成方法和系统
CN114579202A (zh) * 2022-03-03 2022-06-03 平安壹钱包电子商务有限公司 任务处理方法、装置、计算机设备及计算机可读存储介质
CN114996716A (zh) * 2022-06-15 2022-09-02 中国电信股份有限公司 基于插件的漏洞处理方法、装置、计算机设备和存储介质
CN115756586A (zh) * 2022-11-25 2023-03-07 中电金信软件有限公司 Flink作业的执行方法、装置、计算机设备和存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104239045A (zh) * 2014-09-05 2014-12-24 珠海市君天电子科技有限公司 未知文件的打开方法及装置
US20170083378A1 (en) * 2015-09-18 2017-03-23 Salesforce.Com, Inc. Managing processing of long tail task sequences in a stream processing framework
CN110390199A (zh) * 2018-04-20 2019-10-29 上海巍擎信息技术有限责任公司 Android系统漏洞检测方法、装置、计算机设备和存储介质
CN110781647A (zh) * 2019-10-29 2020-02-11 浪潮云信息技术有限公司 一种基于Flink实现数据格式校验的方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104239045A (zh) * 2014-09-05 2014-12-24 珠海市君天电子科技有限公司 未知文件的打开方法及装置
US20170083378A1 (en) * 2015-09-18 2017-03-23 Salesforce.Com, Inc. Managing processing of long tail task sequences in a stream processing framework
CN110390199A (zh) * 2018-04-20 2019-10-29 上海巍擎信息技术有限责任公司 Android系统漏洞检测方法、装置、计算机设备和存储介质
CN110781647A (zh) * 2019-10-29 2020-02-11 浪潮云信息技术有限公司 一种基于Flink实现数据格式校验的方法

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112201047A (zh) * 2020-10-10 2021-01-08 武汉中科通达高新技术股份有限公司 一种基于Flink框架的嫌疑车辆落脚点分析方法及装置
CN112181986A (zh) * 2020-10-10 2021-01-05 武汉中科通达高新技术股份有限公司 一种基于Flink框架的数据分析方法及装置
CN112201047B (zh) * 2020-10-10 2022-02-18 武汉中科通达高新技术股份有限公司 一种基于Flink框架的嫌疑车辆落脚点分析方法及装置
CN112328458A (zh) * 2020-11-27 2021-02-05 杭州安恒信息技术股份有限公司 基于flink数据引擎的数据处理方法、装置
CN113760242A (zh) * 2021-03-09 2021-12-07 北京京东振世信息技术有限公司 一种数据处理方法、装置、服务器和介质
CN113076380B (zh) * 2021-04-27 2022-07-26 苏州科达科技股份有限公司 数据同步方法、装置、系统、设备及存储介质
CN113076380A (zh) * 2021-04-27 2021-07-06 苏州科达科技股份有限公司 数据同步方法、装置、系统、设备及存储介质
CN113191305A (zh) * 2021-05-17 2021-07-30 武汉中科通达高新技术股份有限公司 一种基于Flink框架的数据管理方法及装置
CN113805851A (zh) * 2021-08-27 2021-12-17 上海得帆信息技术有限公司 一种Flink自动集成方法和系统
CN114579202A (zh) * 2022-03-03 2022-06-03 平安壹钱包电子商务有限公司 任务处理方法、装置、计算机设备及计算机可读存储介质
CN114996716A (zh) * 2022-06-15 2022-09-02 中国电信股份有限公司 基于插件的漏洞处理方法、装置、计算机设备和存储介质
CN115756586A (zh) * 2022-11-25 2023-03-07 中电金信软件有限公司 Flink作业的执行方法、装置、计算机设备和存储介质
CN115756586B (zh) * 2022-11-25 2024-01-19 中电金信软件有限公司 Flink作业的执行方法、装置、计算机设备和存储介质

Also Published As

Publication number Publication date
CN111158891B (zh) 2020-07-07

Similar Documents

Publication Publication Date Title
CN111158891B (zh) 基于Flink技术的分析任务处理方法、装置及存储介质
CN108306877B (zh) 基于node js的用户身份信息的验证方法、装置和存储介质
US10805171B1 (en) Understanding network entity relationships using emulation based continuous learning
CN111936974A (zh) 将现有虚拟计算资源采纳到用于管理操作的逻辑容器中
US20200186593A1 (en) Application Deployment Engine
CN107704360B (zh) 监控数据的处理方法、设备、服务器及存储介质
US11539590B2 (en) Detect impact of network maintenance in software defined infrastructure
WO2021203979A1 (zh) 运维处理方法、装置及计算机设备
CN108228444B (zh) 一种测试方法和装置
CN111143207B (zh) 一种在移动端查看模型训练通知和训练日志的方法
CN112988485A (zh) 电力物联网设备模拟测试方法及装置
US11601354B2 (en) Distributed packet capture
CN115514667A (zh) 接入服务处理方法、系统、装置、电子设备以及存储介质
WO2017088347A1 (zh) 基于云平台的应用用户使用信息管理的方法、设备及系统
WO2022033079A1 (zh) 一种皮基站配置方法、装置、存储介质和电子装置
CN111832273A (zh) 目的报文的确定方法及装置、存储介质、电子装置
CN104104701A (zh) 在线服务的配置更新的方法和系统
CN115941224A (zh) 一种网络访问信息管理方法、装置和计算机可读存储介质
CN112966262A (zh) 一种操作日志的生成方法、装置、电子设备及存储介质
CN113992739B (zh) 一种局域网ota固件升级装置、方法及系统
CN110324333B (zh) 一种数据处理方法、装置、终端及存储介质
CN109101253B (zh) 云计算系统中主机的管理方法和装置
CN113422784A (zh) 登录凭证的更新方法、装置、计算机设备及存储介质
CN110650071B (zh) 用户设备的接入管理方法、装置和管理服务器
CN107992363B (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
GR01 Patent grant
GR01 Patent grant