CN115729683A - 任务处理方法、装置、***、计算机设备和存储介质 - Google Patents
任务处理方法、装置、***、计算机设备和存储介质 Download PDFInfo
- Publication number
- CN115729683A CN115729683A CN202111029047.7A CN202111029047A CN115729683A CN 115729683 A CN115729683 A CN 115729683A CN 202111029047 A CN202111029047 A CN 202111029047A CN 115729683 A CN115729683 A CN 115729683A
- Authority
- CN
- China
- Prior art keywords
- task
- target
- processed
- service
- data
- 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.)
- Pending
Links
Images
Landscapes
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本申请涉及一种任务处理方法、装置、***、计算机设备和存储介质,所述方法包括:获取包括有目标服务标识和目标集群标识的任务信息,并基于任务信息生成待处理任务;确定与目标集群标识对应的目标集群中各边缘节点的节点信息;基于节点信息和任务信息,从至少一个边缘节点中筛选出与待处理任务相匹配的目标边缘节点;将待处理任务发送至目标边缘节点,以触发目标边缘节点从目标集群中的至少一个设备处获取待处理数据,并根据预先部署的与目标服务标识对应的目标算法服务对待处理数据进行处理;接收目标边缘节点返回的数据处理结果,并基于数据处理结果确定与待处理任务对应的任务处理结果。采用本方法能够节约带宽资源。
Description
技术领域
本申请涉及计算机技术领域,特别是涉及一种任务处理方法、装置、***、计算机设备和存储介质。
背景技术
随着科学技术的发展,任务的处理变得越来越频繁。目前,当需要对任务进行处理时,一般是通过终端获取与待处理任务相关的待处理数据,并将待处理数据直接上报至云端,由云端统一完成海量数据的接收,并对接收到的海量数据进行处理,得到任务处理结果。比如,在智慧零售领域,一般会在终端侧架设多个摄像头,当需要对商场的客流量进行统计时,每个终端侧的摄像头均会将采集得到的海量图像上报至云端,从而云端通过预先部署的机器学习模型对接收到的海量图像进行图像处理,以确定商场的客流量。
然而,若直接将终端侧采集得到的海量待处理数据上报至云端,则需要非常大的云-端带宽,从而耗费大量的带宽资源。
发明内容
基于此,有必要针对上述技术问题,提供一种能够节约带宽资源的任务处理方法、装置、***、计算机设备、存储介质和计算机程序产品。
一种任务处理方法,应用于服务器,所述方法包括:
获取包括有目标服务标识和目标集群标识的任务信息,并基于所述任务信息生成待处理任务;
确定与所述目标集群标识对应的目标集群中各边缘节点的节点信息;所述目标集群中包括部署在预设区域内的至少一个边缘节点和至少一个边缘终端;
基于所述节点信息和所述任务信息,从所述至少一个边缘节点中筛选出与所述待处理任务相匹配的目标边缘节点;
将所述待处理任务发送至所述目标边缘节点,以触发所述目标边缘节点从所述目标集群中的至少一个设备处获取待处理数据,并根据预先部署的与所述目标服务标识对应的目标算法服务对所述待处理数据进行处理;
接收所述目标边缘节点返回的数据处理结果,并基于所述数据处理结果确定与所述待处理任务对应的任务处理结果。
一种任务处理装置,所述装置包括:
任务生成模块,用于获取包括有目标服务标识和目标集群标识的任务信息,并基于所述任务信息生成待处理任务;
节点确定模块,用于确定与所述目标集群标识对应的目标集群中各边缘节点的节点信息;所述目标集群中包括部署在预设区域内的至少一个边缘节点和至少一个边缘终端;基于所述节点信息和所述任务信息,从所述至少一个边缘节点中筛选出与所述待处理任务相匹配的目标边缘节点;
数据接收模块,用于将所述待处理任务发送至所述目标边缘节点,以触发所述目标边缘节点从所述目标集群中的至少一个设备处获取待处理数据,并根据预先部署的与所述目标服务标识对应的目标算法服务对所述待处理数据进行处理;接收所述目标边缘节点返回的数据处理结果,并基于所述数据处理结果确定与所述待处理任务对应的任务处理结果。
一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现本申请实施例提供的任一种任务处理方法中的步骤。
一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现本申请实施例提供的任一种任务处理方法中的步骤。
一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中,计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行本申请实施例提供的任一种任务处理方法中的步骤。
上述任务处理方法、装置、计算机设备、存储介质和计算机程序,通过获取任务信息,可基于任务信息生成待处理任务。通过获取任务信息中的目标集群标识,可基于目标集群标识优先筛选出目标集群中的各边缘节点的节点信息,从而后续只需将任务信息与目标集群内的各边缘节点的节点信息进行信息匹配,即可得到相匹配的目标边缘节点,而无需将任务信息与全部的边缘节点信息均进行信息匹配,如此大大提升了信息匹配的匹配效率。通过确定与待处理任务相匹配的目标边缘节点,可将待处理任务发送至目标边缘节点,以触发目标边缘节点获取待处理数据,并根据预先部署的目标算法服务对待处理数据进行处理,得到数据处理结果。由于目标边缘节点是与待处理任务相匹配的,因此,通过目标边缘节点执行待处理任务,可提升待处理任务的处理成功率,得到正确的数据处理结果。通过接收目标边缘节点返回的数据处理结果,可基于数据处理结果确定与待处理任务对应的任务处理结果,如此,便实现了任务的处理。由于本申请是直接通过边缘节点完成待处理数据的处理,再将数据处理结果返回至服务器,而数据处理结果的数据大小一般小于待处理数据的数据大小,因此,相比于传统的将待处理数据发送至服务器,本申请可节约数据发送时所耗费的带宽资源。
一种任务处理方法,应用于边缘节点,所述方法包括:
接收服务器下发的待处理任务;其中,所述待处理任务为服务器基于待处理任务的任务信息中的目标集群标识选中目标集群后,基于目标集群中各个边缘节点的节点信息与所述任务信息的匹配程度,从而选中与所述待处理任务相匹配的边缘节点后下发至选中的边缘节点的;
确定所述目标集群中与所述边缘节点部署于相同区域中的边缘终端;
从所述边缘终端、以及所述目标集群中除自身之外的其他边缘节点中的至少一个设备处,获取待处理数据,并调用与所述任务信息中的目标服务标识相对应的目标算法服务,对所述待处理数据进行处理,得到数据处理结果;
将所述数据处理结果返回至服务器,以使服务器通过所述数据处理结果确定与所述待处理任务对应的任务处理结果。
一种任务处理装置,包括
任务接收模块,用于接收服务器下发的待处理任务;其中,所述待处理任务为服务器基于待处理任务的任务信息中的目标集群标识选中目标集群后,基于目标集群中各个边缘节点的节点信息与所述任务信息的匹配程度,从而选中与所述待处理任务相匹配的边缘节点后下发至选中的边缘节点的;
处理结果确定模块,用于确定所述目标集群中与所述边缘节点部署于相同区域中的边缘终端;从所述边缘终端、以及所述目标集群中除自身之外的其他边缘节点中的至少一个设备处,获取待处理数据,并调用与所述任务信息中的目标服务标识相对应的目标算法服务,对所述待处理数据进行处理,得到数据处理结果;
结果返回模块,用于将所述数据处理结果返回至服务器,以使服务器通过数据处理结果确定与所述待处理任务对应的任务处理结果。
一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现本申请实施例提供的任一种任务处理方法中的步骤。
一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现本申请实施例提供的任一种任务处理方法中的步骤。
一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中,计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行本申请实施例提供的任一种任务处理方法中的步骤。
上述任务处理方法、装置、计算机设备、存储介质和计算机程序,通过接收服务器下发的待处理任务,可根据待处理任务的任务信息中的目标集群标识确定相应的目标集群,并确定同属于目标集群中的边缘终端。通过确定目标集群和边缘终端,可从边缘终端、以及目标集群中除自身之外的其他边缘节点中的至少一个设备处,获取待处理数据,从而可调用与任务信息中的目标服务标识相对应的目标算法服务,对待处理数据进行处理,得到数据处理结果。通过获取数据处理结果,可将数据处理结果返回至服务器,以使服务器根据数据处理结果确定待处理任务的任务处理结果。由于本申请是直接通过边缘节点完成待处理数据的处理,再将数据处理结果返回至服务器,而数据处理结果的数据大小一般小于待处理数据的数据大小,因此,相比于传统的将待处理数据发送至服务器,本申请可节约数据发送时所耗费的带宽资源。
一种任务处理***,其特征在于,包括服务器和部署于不同区域的集群,一个集群中包括有部署在相同预设区域内的至少一个边缘终端和至少一个边缘节点,所述服务器中设置有任务编辑器和云代理,所述边缘节点中设置有与所述云代理相适应的边端代理,还部署有多个算法服务,其中:
所述服务器中的任务编辑器,用于获取包括有目标服务标识和目标集群标识的任务信息,并基于所述任务信息生成待处理任务;
所述任务编辑器,还用于确定与所述目标集群标识对应的目标集群中各边缘节点的节点信息,并基于所述节点信息和所述任务信息,从所述至少一个边缘节点中筛选出与所述待处理任务相匹配的目标边缘节点;
所述服务器中的云代理,用于将所述待处理任务发送至所述目标边缘节点;
所述目标边缘节点中的边端代理,用于接收服务器下发的待处理任务,并将所述待处理任务传递至与所述目标服务标识相对应的目标算法服务;
所述边缘节点中的目标算法服务,用于基于所述待处理任务,从所述目标集群中与所述边缘节点部署于相同区域中的边缘终端,以及所述目标集群中除自身之外的其他边缘节点中的至少一个设备处,获取待处理数据,并对所述待处理数据进行处理,得到数据处理结果;
所述边端代理,还用于将所述数据处理结果返回至服务器;
所述服务器,用于根据接收的所述数据处理结果确定与所述待处理任务对应的任务处理结果。
上述任务处理***,通过部署服务器和至少一个集群,可通过服务器生成待处理任务,并将待处理任务下发至相应的目标边缘节点。通过部署至少一个集群,可通过集群内的目标边缘节点接收待处理任务,并从集群内的边缘终端、以及目标集群中除自身之外的其他边缘节点中的至少一个设备处,获取待处理数据,从而可调用与任务信息中的目标服务标识相对应的目标算法服务,对待处理数据进行处理,得到数据处理结果。通过获取数据处理结果,可将数据处理结果返回至服务器,以使服务器根据数据处理结果确定待处理任务的任务处理结果。由于本申请是直接通过边缘节点完成待处理数据的处理,再将数据处理结果返回至服务器,而数据处理结果的数据大小一般小于待处理数据的数据大小,因此,相比于传统的将待处理数据发送至服务器,本申请可节约数据发送时所耗费的带宽资源。
附图说明
图1为一个实施例中任务处理方法的应用环境图;
图2为一个实施例中任务处理方法的流程示意图;
图3为一个实施例中任务处理的整体流程示意图;
图4为一个实施例中边缘节点和服务器之间的交互示意图;
图5为另一个实施例中边缘节点和服务器之间的交互示意图;
图6为一个实施例中任务处理方法的流程示意图;
图7为一个实施例中任务处理的架构示意图;
图8为一个实施例中任务处理***的整体示意图;
图9为一个具体实施例中任务处理的流程示意图;
图10为另一个具体实施例中任务处理的流程示意图;
图11为一个实施例中任务处理装置的结构框图;
图12为另一个实施例中任务处理装置的结构框图;
图13为一个实施例中计算机设备的内部结构图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
图1为一个实施例中描述任务处理方法的应用环境图。参照图1,该任务处理方法应用于任务处理***100。该任务处理***100包括边缘终端102、边缘节点104和服务器106。可预先在预设区域内部署至少一个边缘节点104和至少一个边缘终端102。当获取得到任务信息时,服务器106可根据任务信息生成相应的待处理任务,并将任务信息与各边缘节点的节点信息进行匹配处理,以基于匹配结果确定相应的目标边缘节点。服务器106将生成的待处理任务发送至目标边缘节点,以使目标边缘节点从边缘终端102处获取待处理数据,并调用预先部署的算法服务对该待处理数据进行处理,得到数据处理结果,将数据处理结果返回至服务器106。服务器106对接收到的数据处理结果进行进一步的处理,以确定与待处理任务对应的任务处理结果。
其中,边缘终端102可以是摄像头、摄像机、相机、传感器或其他具有数据采集功能的设备。边缘节点102可以是路由器、智能手机、平板电脑、笔记本电脑、台式计算机、车载终端等,但并不局限于此。服务器106可以是独立的物理服务器,也可以是多个服务器构成的服务器集群或者分布式***,还可以是提供云计算服务的云服务器。边缘终端102和边缘节点104可通过有线或无线通信方式进行直接或间接地连接,边缘节点104以及服务器106可以通过有线或无线通信方式进行直接或间接地连接,边缘终端102和边缘节点104由于可以于同一预设区域内,因此可在该区域内部署局域网,通过局域网连接边缘终端102和边缘节点104。本申请在此不做限制。
在一个实施例中,如图2所示,提供了一种任务处理方法,以该方法应用于图1中的服务器为例进行说明,包括以下步骤:
步骤S202,获取包括有目标服务标识和目标集群标识的任务信息,并基于任务信息生成待处理任务。
其中,服务标识指的是唯一标识一个算法服务的信息。算法服务指的是对算法和运行该算法所需环境的封装,例如,可将训练完成的人脸识别模型和运行该人脸识别模型所需的环境进行封装,得到人脸识别服务,从而后续可通过调用人脸识别服务实现人脸的识别。集群标识指的是唯一标识一个集群的信息,该集群可以包括部署在预设区域内的至少一个边缘节点和至少一个边缘终端,比如,集群可以包括部署在同一个商场内的至少一个边缘节点和至少一个边缘终端,也即,商场和集群可以处于一一对应的关系。边缘节点指的是靠近边缘终端的节点,其可以是某个机房或者某个物理设备,比如,边缘节点可以为边缘网关、家庭网关和IoT网关等设备。边缘终端指的是终端设备,例如,边缘终端可以为部署在商场内的摄像头或相机等。
具体地,服务器中可部署有任务信息获取平台,当用户期望调用边缘节点执行待处理任务时,用户可通过任务信息获取平台输入相应的任务信息,从而服务器可基于用户输入的任务信息生成相应的待处理任务。在一个实施例中,用户可通过任务信息获取平台输入目标集群标识和目标服务标识,从而服务器可通过包括有目标集群标识和目标服务标识的任务信息,生成相应的待处理任务。
在一个实施例中,服务器中部署有任务编辑器,通过任务编辑器可生成待处理任务。比如,任务编辑器中存储有任务标识与服务标识之间的对应关系、服务标识和算法参数之间的对应关系、以及集群标识与边缘终端标识之间的对应关系。当需要生成待处理任务时,用户可通过任务信息获取平台指定目标集群标识和待处理任务的目标任务标识,从而任务编辑器可根据用户指定的目标集群标识,并通过集群标识与边缘终端标识之间的对应关系,确定与该目标集群标识相对应的至少一个目标边缘终端标识,以及任务编辑器根据指定的目标任务标识,并通过任务标识与服务标识之间的对应关系,确定与该目标任务标识相对应的至少一个目标服务标识,进一步地,任务编辑器根据所确定的目标服务标识,并通过服务标识和算法参数之间的对应关系,确定各目标服务标识各自对应的目标算法参数。其中,算法参数指的是算法服务运行时所需的参数,例如,算法参数可以为用以启动算法服务的初始值。
当获取得到目标集群标识、目标服务标识、目标边缘终端标识以及目标算法参数时,任务编辑器将目标集群标识、目标服务标识、目标边缘终端标识以及目标算法参数作为任务信息,并通过任务信息生成相应的待处理任务。比如,当用户期望对A商场的客流量进行统计时,用户可通过任务信息获取平台确定目标集群标识为与A商场相应的集群标识,以及确定目标任务标识为与客流量统计任务相对应的任务标识,从而任务编辑器可根据目标集群标识和目标任务标识,确定部署于A商场中的边缘终端,并确定用以进行客流量统计的算法服务,以及确定该算法服务运行时所需要的算法参数。进一步地,任务编辑器通过所确定的集群、边缘终端、算法服务和算法参数生成相应的待处理任务,从而后续只需执行该待处理任务,即可确定A商场的客流量。
步骤S204,确定与目标集群标识对应的目标集群中各边缘节点的节点信息;目标集群中包括部署在预设区域内的至少一个边缘节点和至少一个边缘终端。
其中,在传统技术中,一般是通过终端侧采集待处理图像,并通过终端侧直接将待处理图像发送至云端服务器,由云端服务器对待处理图像进行处理。比如,在传统技术中,当需要对商场内的客流量进行统计时,可由云端服务器部署的机器学习模型对待处理图像进行处理,从而通过模型输出的结果确定相应的客流量。然而,通过终端直接将待处理图像发送至云端服务器,则会耗费大量的带宽资源,因此,为了节约带宽资源,本申请实施例构造有边缘终端-边缘节点-服务器的任务处理架构,通过任务处理架构中的服务器生成待处理任务,并将待处理任务下发至相应集群内的边缘节点,以使边缘节点从集群内的边缘终端处获取待处理图像,通过预先部署的算法服务对获取得到的待处理图像进行处理,得到与待处理任务相对应的数据处理结果,并将数据处理结果返回至服务器。容易理解地,为了便于大数据的传输,一个集群内的边缘节点和边缘终端可处于同一局域网内,而边缘节点和服务器可通过外网进行数据传输。
具体地,各集群内的各边缘节点可定时获取自身的节点信息,并将节点信息发送至服务器,以使服务器将接收到的节点信息存储至节点信息库中。其中,节点信息指的是与边缘节点相关的信息,节点信息具体可包括边缘节点所属集群的集群标识、边缘节点所部署的算法服务的服务标识、所部署的算法服务的运行状态以资源量等。
为了确定待处理任务应下发的边缘节点,当获取得到任务信息时,服务器可根据任务信息中的目标集群标识,从节点信息库中筛选出与目标集群标识对应的目标集群中各边缘节点的节点信息。
在一个实施例中,确定与目标集群标识对应的目标集群中各边缘节点的节点信息,包括:从节点信息库中筛选出包含有目标集群标识的候选节点信息。其中,节点信息库存储有每个集群上报的各自所包括的边缘节点的节点信息;节点信息包括边缘节点所属集群的集群标识、已部署算法服务的服务标识、已部署算法服务的运行状态标识、和资源量;将候选节点信息作为与目标集群标识对应的目标集群中各边缘节点的节点信息。
具体地,服务器可收集各边缘节点发送的节点信息,并将节点信息存储至节点信息库中。由于节点信息中包括有目标集群标识,因此服务器可从节点信息库中筛选出包括有目标节点信息的候选节点信息,并将候选节点信息作为与目标集群标识对应的目标集群中各边缘节点的节点信息。
在其中一个实施例中,服务器中可部署有云代理(云agent),边缘节点中可部署有边缘代理(边缘agent)。边缘代理和云代理之间可建立一个长连接通道,通过长连接通过进行数据的传输。边缘代理实时收集边缘节点中各算法服务的运行状态和心跳、边缘节点的资源消耗情况、边缘节点所支持的算法服务、边缘节点所属集群,并将算法服务的运行状态和心跳、资源消耗情况、所支持的算法服务和所属集群作为节点信息发送至云代理。
在其中一个实施例中,可在每个边缘节点中均部署一个边缘代理,可也多个边缘节点共同对应一个边缘代理,例如,可在集群中的中心边缘节点中部署边缘代理,从而中心边缘节点中的边缘代理可收集同一集群中其余边缘节点的节点信息,并将收集到的节点信息统一上传至云代理。
上述实施例中,通过部署云代理和边缘代理,可通过云代理和边缘代理打破内外网之间的壁垒,使得边缘节点和服务器能够进行数据的传输。通过将边缘节点的节点信息发送至服务器,可使得服务器只需将节点信息与任务信息进行信息匹配,即可快速确定能够用以执行待处理任务的目标边缘节点。
步骤S206,基于节点信息和任务信息,从至少一个边缘节点中筛选出与待处理任务相匹配的目标边缘节点。
具体地,由于不同边缘节点中可部署有不同的算法服务,而执行不同的待处理任务需调用不同的算法服务,因此,还需将筛选出的节点信息与任务信息进行进一步的信息匹配处理,以确定相匹配的用以执行待处理任务的目标边缘节点。当获取得到目标集群中各边缘节点的节点信息时,服务器可将节点信息与任务信息进行信息匹配处理,以从多个节点信息中筛选出相匹配的目标节点信息,从而将与该目标节点信息相对应的边缘节点,作为与待处理任务相匹配的目标边缘节点。
在一个实施例中,基于节点信息和任务信息,从至少一个边缘节点中筛选出与待处理任务相匹配的目标边缘节点,包括:从节点信息中筛选出包括有目标服务标识和目标状态标识的目标候选节点信息;其中,目标状态标识表征相应边缘节点处于正常运行状态;从目标候选节点信息中筛选出资源量满足空闲条件的目标节点信息;将与目标节点信息相对应的边缘节点,作为与待处理任务相匹配的目标边缘节点。
具体地,当从节点信息库中筛选出部署于目标集群中的边缘节点的节点信息时,服务器进一步地确定筛选出的节点信息中是否包括有目标服务标识和目标状态标识,并在节点信息中存在目标服务标识和目标状态标识时,可认为与该节点信息相对应的边缘节点部署有用以执行待处理任务的算法服务,且该算法服务处于正常运行状态,从而此时服务器将包括有目标服务标识和目标状态标识的节点信息作为目标候选节点信息。服务器确定筛选出的目标候选节点信息的信息数量,并在信息数量大于1时,确定各目标候选节点信息中的资源量,将资源量满足空闲条件的目标候选节点信息作为目标节点信息,将与目标节点信息相对应的边缘节点,作为与待处理任务相匹配的目标边缘节点。
其中,当节点信息中的状态标识为目标状态标识时,可认为与该节点信息相对应的边缘节点处于正常运行状态,相应的,其上部署的算法服务也处于正常运行状态。当节点信息中的资源量满足空闲条件资源时,可认为与该节点信息相对应的边缘节点具备充足的计算机资源用以执行待处理任务。
在其中一个实施例中,当目标候选节点信息的信息数量为1时,服务器直接将该目标候选节点信息作为目标节点信息。
在其中一个实施例中,服务器可将目标候选节点信息中具有最大资源量的节点信息,作为目标节点信息,也即,将具有最大空闲资源的边缘节点组作为目标边缘节点。
上述实施例中,通过从节点信息中筛选出至少一个目标候选节点信息,使得各目标候选节点信息各自对应的边缘节点均具备能力执行该待处理任务,从而减少了将待处理任务下发至相应的边缘节点后,该边缘节点却无法执行该待处理任务的概率,进而提升了待处理任务的处理成功率。通过从目标候选节点中筛选出满足资源空闲条件的目标节点信息,并将待处理任务下发至与目标节点信息相对应的目标边缘节点,使得集群内的各边缘节点能够达到负载均衡。
步骤S208,将待处理任务发送至目标边缘节点,以触发目标边缘节点从目标集群中的至少一个设备处获取待处理数据,并根据预先部署的与目标服务标识对应的目标算法服务对待处理数据进行处理。
具体地,当基于目标节点信息确定相应的目标边缘节点时,服务器可将生成的待处理任务下发至目标边缘节点,以使目标边缘节点对接收到的待处理任务进行解析,得到任务信息。目标边缘节点根据任务信息从目标集群中的至少一个设备处获取待处理数据,并根据预先部署的与目标服务标识相对应的目标算法服务,对待处理数据进行处理,得到数据处理结果。其中,设备可以包括边缘设备和边缘终端。
在一个实施例中,待处理任务的任务信息中可包括有目标边缘终端标识和目标节点标识中的至少一种,目标边缘节点可基于目标边缘终端标识从边缘终端出获取待处理数据,例如,目标边缘节点可从边缘终端处获取原始的待处理图像,目标边缘节点还可从与目标节点标识相对应的边缘节点处获取待处理数据,例如,目标边缘节点可从同一集群内的与目标节点标识相对应的边缘节点处获取对原始图像进行图像解码后的数据,并将该数据作为待处理数据。
比如,当需要针对A商场进行客流量统计时,待处理任务的任务信息中即可包括有部署于A商场的边缘终端的目标边缘终端标识,从而目标边缘节点可基于目标边缘终端标识,从部署与A商场的边缘终端处获取待处理图像,并对待处理图像进行图像解码、人脸人体识别和轨迹识别,以执行客流量统计任务。
又比如,由于执行待处理任务的首个步骤一般均为对待处理图像进行图像解码,因此,为了便于待处理任务的执行,集群中可部署有专门用以进行图像解码的边缘节点,通过该边缘节点实时获取边缘终端采集的待处理图像,并对待处理图像进行图像解码处理,得到图像解码结果。当需要针对A商场进行客流量统计时,待处理任务的任务信息中即可包括有集群中用以对待处理图像进行图像解码的边缘节点的目标节点标识,从而目标边缘节点可基于目标节点标识从相应边缘节点处获取图像解码结果,并对图像解码结果进行人脸人体识别和轨迹识别,以执行客流量统计任务。
在一个实施例中,边缘节点中可部署有算法管线(Pipeline),一个算法管线可包括有至少一个算法服务,例如,底图算法管线可包括有取流解码服务,轨迹算法管线可包括有取流解码服务、人脸人体检测服务和轨迹识别服务。当获取得到待处理任务时,目标边缘节点可通过调用算法管线执行该待处理任务。容易理解地,由于是通过任务信息中的目标服务标识来确定目标边缘节点的,因此,目标边缘节点中的算法管线所包括的算法服务的服务标识,也与任务信息中的目标服务标识相对应。比如,客流统计任务的任务信息中可包括有取流解码服务标识、人脸人体检测服务标识和轨迹识别服务标识,用以执行客流统计任务的目标边缘节点中的算法管线也可对应于取流解码服务标识、人脸人体检测服务标识和轨迹识别服务标识。
其中,算法管线中的各算法服务可按流水线方式进行调用,也即算法管线中的各算法服务具有先后的执行顺序,比如,在轨迹算法管线中,可优先调用取流解码服务,通过取流解码服务获取待处理图像,并对待处理图像进行解码,得到图像解码结果,进一步地,算法管线可将图像解码结果输入至人脸人体检测服务,以使人脸人体检测服务对图像解码结果进行人脸人体识别,得到人脸人体识别结果。相应的,管线服务还可将人脸人体识别结果输入至轨迹识别服务中,通过轨迹识别服务,并基于人脸人体识别结果,确定商场内顾客的运行轨迹,从而后续可通过顾客的运行轨迹确定预设时间段内的客流量。
在一个实施例中,服务器可通过云代理将待处理任务下发至目标边缘节点中的边缘代理。边缘代理将待处理任务透传至算法管线,以使算法管线获取相应的待处理数据,并对待处理数据进行处理。
步骤S210,接收目标边缘节点返回的数据处理结果,并基于数据处理结果确定与待处理任务对应的任务处理结果。
具体地,服务器可接收目标边缘节点返回的数据处理结果,并对接收到的数据处理结果进行进一步地处理,以得到与待处理任务对应的任务处理结果。比如,当待处理任务为客流量统计任务时,相应的数据处理结果即可为轨迹数据,服务器可对轨迹数据进行轨迹统计,得到进入商场的运行轨迹和离开商场的运行轨迹,并综合进入商场的运行轨迹和离开商场的运行轨迹,得到商场内的客流量。
在一个实施例中,参考图3,如图3所示,服务器中可部署有任务编辑器、服务发布器、节点管理中心、镜像仓库和云代理。其中,镜像仓库中存储有算法服务镜像,服务发布器用以从镜像仓库中提取出未发布的算法服务镜像,并对算法服务镜像进行发布处理,得到目标服务镜像,并将目标服务镜像发送至节点管理中心。节点管理中心用以确定目标服务镜像所对应的待调度集群和待调度边缘节点,并将目标服务镜像下发至待调度集群中的待调度边缘节点,以使得待调度边缘节点运行目标服务镜像以提供相应的算法服务。
集群中可包括有至少一个边缘节点和至少一个边缘设备,边缘节点中部署有边缘代理和包括有至少一个算法服务的算法管线。通过边缘设备可采集待处理数据,通过算法管线可对待处理数据进行处理,通过边缘代理可将对待处理数据进行处理后得到的数据处理结果发送至服务器。图3示出了一个实施例中任务处理的整体流程示意图。
在一个实施例中,参考图4,图4示出了一个实施例中边缘节点和服务器之间的交互示意图。用户可通过任务编辑器创建任务模板,其中,任务模板中包括有任务标识与算法服务标识之间的对应关系、以及算法服务标识与算法参数之间的对应关系,从而用户只需输入目标集群标识和任务标识,任务编辑器即可根据任务模板自动生成相应的待处理任务。当生成待处理任务时,任务编辑器可将待处理任务发送至云代理,以使云代理向任务编辑器返回待处理任务的结果订阅信息,从而任务编辑器可基于结果订阅信息获取执行待处理任务所得到的数据处理结果。
进一步地,云代理可接收边端代理上报的节点信息,并定期查询未下发的待处理任务,将未下发的待处理任务的任务信息与节点信息进行信息匹配处理,以确定相应的目标边缘节点,并将待处理任务下发至目标边缘节点。目标边缘节点中的边缘代理可获取本端所部署的算法服务,并将本端所部署的算法服务作为节点信息上报至云代理。当目标边缘节点中的边缘代理接收到待处理任务时,边缘代理可将待处理任务透传至算法容器,算法容器中部署有算法管线,从而算法管线可执行待处理任务,得到数据处理结果。进一步地,算法管线可根据预设的数据结构对数据处理结果进行封装,并将封装后的数据处理结果发送至云代理,以使云代理将封装后的数据处理结果缓存至数据中心,进而任务编辑器可从数据中心中提取相应的数据处理结果,并通过数据处理结果得到待处理任务的任务处理结果。
上述任务处理方法中,通过获取任务信息,可基于任务信息生成待处理任务。通过获取任务信息中的目标集群标识,可基于目标集群标识优先筛选出目标集群中的各边缘节点的节点信息,从而后续只需将任务信息与目标集群内的各边缘节点的节点信息进行信息匹配,即可得到相匹配的目标边缘节点,而无需将任务信息与全部的边缘节点信息均进行信息匹配,如此大大提升了信息匹配的匹配效率。通过确定与待处理任务相匹配的目标边缘节点,可将待处理任务发送至目标边缘节点,以触发目标边缘节点获取待处理数据,并根据预先部署的目标算法服务对待处理数据进行处理,得到数据处理结果。由于目标边缘节点是与待处理任务相匹配的,因此,通过目标边缘节点执行待处理任务,可提升待处理任务的处理成功率,得到正确的数据处理结果。通过接收目标边缘节点返回的数据处理结果,可基于数据处理结果确定与待处理任务对应的任务处理结果,如此,便实现了任务的处理。由于本申请是直接通过边缘节点完成待处理数据的处理,再将数据处理结果返回至服务器,而数据处理结果的数据大小一般小于待处理数据的数据大小,因此,相比于传统的将待处理数据发送至服务器,本申请可节约数据发送时所耗费的带宽资源。
此外,传统的多个边缘端侧是直接将原始图像数据发送至服务器,而将原始图像数据发送至服务器则会导致原始图像数据据暴露在公网环境下,从而易造成隐私数据泄露等安全问题。而本申请通过在边缘节点处完成图像数据的接收和图像数据的处理,可将原始图像数据闭环在集群内部,从而减少了数据隐私泄露的概率,进而提升了数据的安全性。
在一个实施例中,获取包括有目标服务标识和目标集群标识的任务信息,并基于任务信息生成待处理任务,包括:当获取得到业务执行指令时,对业务执行指令进行解析,得到业务执行指令的指令信息;指令信息包括有至少一个任务信息;分别基于每个任务信息中的目标集群标识、以及与目标集群标识相对应的至少一个目标服务标识,生成相应的待处理任务。
具体地,用户可通过服务器的任务信息获取平台触发业务执行指令,比如,任务信息获取平台可展示有“统计各商场的客流量”的业务触发控件,用户可通过点击该业务触发控件来触发服务器对每个商场的客流量均进行统计。服务器可响应于用户的点击操作,生成相应的业务执行指令。其中,服务器预先存储有业务触发控件与指令信息之间的对应关系,比如,当业务触发控件为“统计各商场的客流量”时,相应的指令信息即可包括有每个商场各自对应的目标集群标识、和每个集群各自对应的目标服务标识,其中,对于多个目标集群标识中的每个目标集群标识,均将当前目标集群标识、以及与当前目标集群标识相对应的至少一个目标服务标识,作为一个任务信息,也即指令信息中可包括有多个任务信息。
进一步地,服务器提取指令信息中的任务信息,并根据任务信息中的目标集群标识和目标服务标识,生成相应的待处理任务。比如,服务器可根据与A商城对应的目标集群标识和目标服务标识,生成对A商城进行客流量统计的待处理任务,以及根据与B商城对应的目标集群标识和目标服务标识,生成对B商城进行客流量统计的任务。其中,待处理任务中的目标集群标识用以确定该待处理任务待下发的目标集群,待处理任务中的目标服务器标识用以确定该待处理任务待下发的目标集群内的目标边缘节点,从而目标边缘节点可接收下发至的待处理任务,并通过调用与目标服务标识对应的算法服务,执行该待处理任务。
在其中一个实施例中,当服务器中的任务编辑器生成多个待处理任务时,任务编辑器可对每个待处理任务均进行持久化处理,将各待处理任务存储至存储至数据库中,从而后续云代理可定期从数据库中提取未下发的待处理任务,并将未下发的待处理任务下发至相应的目标边缘节点。
上述实施例中,由于只需对业务执行指令进行解析,即可生成多个待处理任务,如此,大大提升了待处理任务的生成效率。
在一个实施例中,接收目标边缘节点返回的数据处理结果,并基于数据处理结果确定与待处理任务对应的任务处理结果,包括:接收目标边缘节点返回的数据处理结果,并将数据处理结果中的结构化数据存储至存储队列、以及将非结构化数据存储至数据库;当满足处理条件时,从存储队列中提取出与待处理任务对应的结构化数据、以及从数据库中提取出与待处理任务对应的非结构化数据;对提取出的结构化数据和非结构化数据进行处理,得到待处理任务的任务处理结果。
具体地,当目标边缘节点接收到待处理任务时,目标边缘节点可获取相应的待处理数据,通过与目标服务标识相对应的算法服务对待处理数据进行处理,得到数据处理结果,并将数据处理结果返回至服务器。由于是统一将数据处理结果返回至服务器,因此,为了减轻服务器的运算压力,服务器可优先将接收到的待处理数据进行缓存,之后再对缓存的待处理数据进行后续处理。当服务器接收到各目标边缘节点返回的数据处理结果时,服务器可判断接收到的数据处理结果的数据类型,当数据处理结果所包括的数据为结构化数据时,服务器将该数据处理结果缓存至存储队列,当数据处理结果所包括的数据为非结构化数据时,服务器可将该数据处理结果存储至数据库。容易理解的,服务器也可将数据处理结果中的结构化数据存储至存储队列,将数据处理结果中的非结构化数据存储至数据库。本实施例在此不作限定。
进一步地,对于多个已下发至目标边缘节点的待处理任务中的每个待处理任务,服务器均确定当前待处理任务是否已达到处理条件,并在达到处理条件时,从存储队列中提取出与当前待处理任务相对应的结构化数据、以及从数据库中提取出与当前待处理任务相对应的非结构化数据。其中,处理条件可根据需求自由设置,比如,可通过定时器触发服务器从存储队列中提取出与当前待处理任务相对应的结构化数据、以及从数据库中提取出与当前待处理任务相对应的非结构化数据。可在将当前待处理任务下发至目标边缘节点时,启动该定时器,并在定时器到达定时时间时,从存储队列中提取出与当前待处理任务相对应的结构化数据、以及从数据库中提取出与当前待处理任务相对应的非结构化数据。
进一步地,服务器对提取出的结构化数据和非结构化数据进行处理,并根据提取出的结构化数据和非结构化数据确定待处理任务的任务处理结果。比如,当结构化数据为轨迹数据、非结构化数据为身份标识数据时,服务器可根据身份标识和轨迹数据,得到同一顾客在商场内的运行轨迹,从而基于不同顾客在商场内的运行轨迹,得到商场的客流量。
本实施例中,由于存储队列适合用以存储结构化数据,数据库适合用以存储非结构化数据,通过将结构化数据存储至存储队列,将非结构化数据存储至数据库,可提升数据存储的存储效率。
在一个实施例中,待处理任务至少包括客流统计任务、视频质检任务和图像解码任务中的一种;客流统计任务的任务信息中至少包括取流解码服务标识、人脸人体检测服务标识和轨迹识别服务标识中的一种,视频质检任务的任务信息中至少包括取流解码服务标识、人脸人体检测服务标识和动作识别服务标识中的一种,图像解码任务的任务信息中包括取流解码服务标识。
具体地,待处理任务可包括客流统计任务、视频质检任务和图像解码任务。其中,客流统计任务指的是对预设区域内的客流量进行统计,比如,对商场内的客流量进行统计。视频质检任务指的是对边缘终端采集得到的视频中的关键环节进行检测,比如,商场内可设置有保险销售区域,在保险销售过程中,架设于保险销售区域中的边缘终端可采集保险销售过程中的视频图像,并将视频图像发送中边缘节点,以使边缘节点对视频图像中的签字环节、证件展示环节等关键环节进行质检,以确定签字环节中的签字过程、证件展示环节中的证件展示过程是否符合要求。图像解码任务指的是对视频图像进行取流解码。通过执行图像解码任务,可获取边缘终端采集得到的视频图像,并对视频图像进行清洗和格式转换,从而得到解码后的图像解码数据。
相应的,客流统计任务的任务信息中包括取流解码服务标识、人脸人体检测服务标识和轨迹识别服务标识。算法服务包括与取流解码服务标识相对应的取流解码服务、与人脸人体检测服务标识相对应的人脸人体检测服务、以及与轨迹识别服务标识相对应的轨迹识别服务。其中,取流解码服务用以获取边缘终端采集得到而视频图像,并对视频图像进行解码,得到图像解码数据。人脸人体检测服务用以对图像解码数据进行人脸人体检测,得到人脸人体检测结果。轨迹识别服务用以基于人脸人体检测结果进行轨迹的识别,得到轨迹数据。
视频质检任务的任务信息中包括取流解码服务标识、人脸人体检测服务标识和动作识别标识。其中,与动作识别标识相对应的动作识别服务用以基于人脸人体检测结果进行动作的识别,得到动作识别数据。图像解码任务的任务信息中包括取流解码服务标识,相应的,用以执行图像解码任务的目标边缘节点中可部署有与取流解码服务标识相对应的取流解码服务。
本实施例中,通过生成多种不同的待处理任务,可基于不同的待处理任务得到不同的任务处理结果,从而大大丰富了待处理任务的多样性。
在一个实施例中,数据处理结果包括轨迹数据、动作识别数据、图像解码数据;接收目标边缘节点返回的数据处理结果,并基于数据处理结果确定与待处理任务对应的任务处理结果,包括:当待处理任务为客流统计任务时,接收目标边缘节点返回的轨迹数据,并基于轨迹数据得到统计区域内的客流量;当待处理任务为视频质检任务时,接收目标边缘节点返回的动作识别数据,并基于动作识别数据得到视频质检结果;当待处理任务为图像解码任务时,接收目标边缘节点返回的图像解码数据,基于图像解码数据得到图像解码结果。
具体地,当待处理任务为客流统计任务时,返回的数据处理结果即可包括轨迹数据,从而服务器只需对轨迹数据进行处理,即可得到统计时段内进入商场的轨迹数量和离开商场的轨迹数量,并通过进入商场的轨迹数量和离开商场的轨迹数量得到统计时段内的客流量。当待处理任务为视频质检任务时,返回的数据处理结果即可包括动作识别数据,从而服务器只需对动作识别数据进行解析,即可确定视频质检结果,比如,可通过动作识别数据确定保险销售环节中是否进行了签字和证件展示。当待处理任务为图像解码任务时,返回的数据处理结果即可包括图像解码数据,从而服务器可根据图像解码数据确定相应的图像解码结果,比如可根据图像解码数据确定是否已成功进行图像解码。
本实施例中,通过边缘节点对待处理数据进行处理,并将数据处理结果返回至服务器,以使服务器仅需对数据处理结果进行简单处理,即可得到待处理任务的任务处理结果,从而大大减轻了服务器的负载压力,从而提升了服务器的任务处理效率。
在一个实施例中,上述任务处理方法还包括算法服务调度的步骤,算法服务调度步骤包括:从镜像仓库中获取至少一个待发布算法服务的服务镜像,并通过指定的发布资源对每个算法服务镜像进行发布处理,得到目标服务镜像;确定各目标服务镜像各自对应的待调度集群和待调度边缘节点;将目标服务镜像下发至待调度集群中的待调度边缘节点,使得每个边缘节点均运行各自接收的目标服务镜像以提供相应的算法服务。
具体地,在通过边缘节点执行待处理任务之前,还需要将算法服务下发至相应的边缘节点。镜像仓库中存储有多个服务镜像,其中,服务镜像指的是算法服务的镜像。当需要对服务镜像进行发布时,管理人员可指定待发布的服务镜像和用以发布服务镜像所需的计算机资源,从而服务器可根据管理人员的指定操作,从镜像仓库中获取待发布算法服务的服务镜像,并通过发布服务镜像所需的计算机资源,将待发布算法服务的服务镜像进行发布,将其转换为在线服务镜像,得到目标服务镜像。
进一步地,管理人员可指定各目标服务镜像各自对应的待调度集群和待调度边缘节点,以使服务器可根据管理人员的指定操作,将目标算法服务下发至待调度集群中的待调度边缘节点,从而边缘节点可运行接收到的目标服务镜像以提供相应的算法服务。比如,当期望基于A集群中的B边缘节点进行轨迹数据的获取时,即可指定将取流解码服务镜像、人脸人体检测服务镜像和轨迹识别服务镜像下发至A集群中的B边缘节点。
在其中一个实施例中,管理人员可获取待训练的机器学习模型,并通过训练数据对待训练的机器学习模型进行训练,从而得到训练好的机器学习模型。进一步地,管理人员可根据训练好的机器学习模型和该机器学习模型运行时所需的运行环境,生成相应的服务镜像,并将服务镜像存储至镜像仓库中。
在其中一个实施例中,服务器中可部署有服务发布器和节点管理中心,其中,服务发布器用以对服务镜像进行发布,得到目标服务镜像,并将目标服务镜像发送至节点管理中心。节点管理中心用以将接收到的目标服务镜像下发至相应的边缘节点。其中,服务发布器还用以将目标服务镜像的镜像标识和下发至的边缘节点的节点标识对应存储至任务编辑器。
在其中一个实施例中,参考图5,图5示出了一个实施例中服务器与边缘节点之间的交互示意图。服务器中可部署有节点管理中心、终端管理中心、镜像仓库、服务发布器和任务编辑器。其中,节点管理中心用以构建集群,并对集群中的边缘节点进行管理,管理方式包括但不限于是对边缘节点进行注册、增加集群内的边缘节点、删减集群内的边缘节点等。终端管理中心用以对集群内的边缘终端进行管理,管理方式包括但不限于是对边缘终端进行注册、增加集群内的边缘终端、删减集群内的边缘终端等。用户还可构建服务镜像,并将服务镜像存储至镜像仓库,服务发布器可向镜像仓库发送服务镜像获取请求,从而镜像仓库可响应服务镜像获取请求,将待发布算法服务的服务镜像返回至服务发布器。用户可指定用以进行服务镜像发布的计算机资源,从而服务镜像可通过用户指定的计算机资源进行服务镜像的发布,得到目标服务镜像。进一步地,服务发布器将目标服务镜像发送至节点管理中心,以使节点管理中心确定目标服务镜像的待调度集群和待调度边缘节点,并将目标服务镜像发送至待调度集群中的待调度边缘节点。当目标服务镜像发送至待调度边缘节点时,服务发布器通知任务编辑器,该目标服务镜像已下发至相应边缘节点。
上述实施例中,通过将算法服务镜像下发至相应的边缘节点,使得边缘节点可直接运行接收到的服务镜像以提供相应的算法服务。
在一个实施例中,如图6所示,提供了一种任务处理方法,以该方法应用于图1中的边缘节点为例进行说明,包括以下步骤:
步骤S602,接收服务器下发的待处理任务;其中,待处理任务为服务器基于待处理任务的任务信息中的目标集群标识选中目标集群后,基于目标集群中各个边缘节点的节点信息与任务信息的匹配程度,从而选中与待处理任务相匹配的边缘节点后下发至选中的边缘节点的。
步骤S604,确定所目标集群中与所述边缘节点部署于相同区域中的边缘终端。
具体地,边缘节点可接收服务器下发的待处理任务,并确定自身所属的目标集群、以及确定归属于目标集群的边缘终端。其中,待处理任务的具体下发过程可参考上述步骤S202至步骤S210所描述的实施例。
在一个实施例中,当需要确定自身所属集群时,边缘节点可向服务器中的节点管理中心发送集群确定请求,以使节点管理中心根据集群确定请求中的边缘节点标识查找相应的集群标识,并将查找得到的集群标识返回至边缘节点。同理,边缘节点还可向终端管理中心发送终端确定请求,以使终端管理中心向边缘节点返回同属于一个集群的边缘终端的终端标识。
步骤S606,从边缘终端、以及目标集群中除自身之外的其他边缘节点中的至少一个设备处,获取待处理数据,并调用与任务信息中的目标服务标识相对应的目标算法服务,对待处理数据进行处理,得到数据处理结果。
具体地,边缘节点可从所确定的边缘终端、以及目标集群中除自身之外的其他边缘节点中的至少一个设备处,获取待处理数据。比如,边缘节点可从边缘终端处获取待处理图像,并将待处理图像作为待处理数据,或者从目标集群中除自身之外的其他边缘节点处获取对待处理图像进行取流解码后得到的图像解码数据,并将图像解码数据作为待处理数据。进一步地,边缘节点确定待处理任务的任务信息中的目标服务标识,并调用与目标服务标识相对应的目标算法服务对待处理数据进行处理,得到数据处理结果。比如,边缘节点可通过调用取流解码服务、人脸人体检测服务和轨迹识别服务对从边缘终端处获取得到的待处理图像进行处理,得到轨迹数据。又比如,边缘节点可通过人脸人体检测服务和轨迹识别服务对从其余边缘节点处获取的图像解码数据进行处理,得到轨迹数据。
在一个实施例中,待处理任务的任务信息中还可包括有目标边缘终端标识,边缘节点可从与目标边缘终端标识相对应的目标边缘终端处获取待处理数据。
步骤S608,将数据处理结果返回至服务器,以使服务器通过数据处理结果确定与待处理任务对应的任务处理结果。
具体地,当算法服务生成数据处理结果时,边缘终端可将数据处理结果返回至服务器,以使服务器根据接收到的数据处理结果确定相应待处理任务的任务处理结果。其中,服务器确定任务处理结果的具体确定过程可参考上述步骤S210所描述的实施例。
上述任务处理方法,通过接收服务器下发的待处理任务,可根据待处理任务的任务信息中的目标集群标识确定相应的目标集群,并确定同属于目标集群中的边缘终端。通过确定目标集群和边缘终端,可从边缘终端、以及目标集群中除自身之外的其他边缘节点中的至少一个设备处,获取待处理数据,从而可调用与任务信息中的目标服务标识相对应的目标算法服务,对待处理数据进行处理,得到数据处理结果。通过获取数据处理结果,可将数据处理结果返回至服务器,以使服务器根据数据处理结果确定待处理任务的任务处理结果。由于本申请是直接通过边缘节点完成待处理数据的处理,再将数据处理结果返回至服务器,而数据处理结果的数据大小一般小于待处理数据的数据大小,因此,相比于传统的将待处理数据发送至服务器,本申请可节约数据发送时所耗费的带宽资源。
在一个实施例中,调用与任务信息中的目标服务标识相对应的目标算法服务,对待处理数据进行处理,得到数据处理结果,包括:确定任务信息中每个目标服务标识各自对应的目标算法服务;根据各目标算法服务的调用顺序,确定多个目标算法服务中的当前目标算法服务;通过当前目标算法服务对待处理数据和前序处理结果中的至少一种进行处理,得到当前处理结果;前序处理结果是在当前目标算法服务之前已被调用的前序算法服务所输出的处理结果;将当前处理结果作为后续调用处理所对应的前序处理结果,并按照调用顺序返回至下一个目标算法服务的调用处理,直至得到每个目标算法服务各自输出的数据处理结果。
具体地,当获取得到待处理任务的任务信息时,边缘节点可从任务信息中提取出目标服务标识,并确定每个目标服务标识各自对应的目标算法服务。由于当前算法服务的运行可能需要依赖于其他算法服务所输出数据处理结果,因此,边缘节点中记载有各个算法服务各自对应的前序算法服务和后续算法服务。比如,在当前算法服务为人脸人体检测服务时,相应的前序算法服务可为流解码服务标识,后续算法服务可为轨迹识别服务。其中,当前算法服务的前序算法服务指的是在当前算法服务之前执行的算法服务,当前算法服务需要依赖于前序算法服务输出的前序处理结果进行服务的执行。当前算法服务的后续算法服务指的是在当前算法服务之后执行的算法服务,后续算法服务需要依赖于当前算法服务输出的当前处理结果进行服务的执行。
进一步地,边缘节点根据记载的各个算法服务各自对应的前序算法服务和后续算法服务,确定各目标算法服务各自对应的调用顺序,并根据调用顺序确定多个目标算法服务中的当前目标算法服务,比如,在待处理任务还未执行时,将具有最前调用顺序的目标算法服务作为当前目标算法服务。边缘节点调用目标算法服务,并通过目标算法服务对待处理数据和前序处理结果中的至少一种进行处理,得到当前处理结果。其中,前序处理结果指的是前序算法服务输出的数据处理结果。进一步地,边缘节点将当前处理结果输入至后续算法服务,以使后续算法服务对当前处理结果进行数据处理,得到后续处理结果。如此迭代,直至得到每个目标算法服务各自输出的数据处理结果。
在其中一个实施例中,边缘节点可部署有容器,通过容器运行算法管线。一个算法管线可包括至少一个算法服务,算法管线中的各算法服务可如流水线般依次执行,从而得到相应的数据处理结果。
上述实施例中,由于边缘节点中的各目标算法服务是按流水线进行调度运行的,因此可提升目标算法服务的调度效率。
在一个实施例中,将数据处理结果返回至服务器,包括:确定各目标算法服务各自输出的数据处理结果的数据类型,并从数据处理结果中筛选出数据类型为结构类型的目标数据处理结果;根据输出目标数据处理结果的目标算法服务所属的服务类型,确定相应目标数据处理结果的结果类型;根据结果类型的优先级,将目标数据处理结果转存至相应的上报队列,并按照上报队列的优先级,上报上报队列中的目标数据处理结果;当上报队列中的目标数据处理结果上报完毕时,将数据类型为非结构类型的数据处理结果进行上报。
具体地,由于边缘节点在一段时间内可能执行多个待处理任务,从而得到多个数据处理结果,因此,为了避免因带宽资源不足而导致数据上报失败,边缘节点可确定各数据处理结果的上报优先级,并按照优先级对各数据处理结果进行上报。进一步地,边缘节点从多个数据数据处理结果中筛选出数据类型为结构类型的目标数据处理结果,也即边缘节点将包含有结构数据的数据处理结果作为目标数据处理结果,并确定输出目标数据处理结果的目标算法服务所属的服务类型,根据服务类型,确定相应目标数据处理结果的结果类型。其中,服务类型指的是目标算法服务的类型,比如,当目标算法服务为取流解码服务时,相应的服务类型即为取流解码类型,当目标算法服务为人脸人体检测服务时,相应的服务类型即为人脸人体检测类型。服务类型可与结果类型相对应,比如,当服务类型为取流解码类型时,相应的结果类型也可为取流解码类型,当服务类型为人脸人体检测类型时,相应的结果类型也可为人脸人体检测类型。
边缘节点中预先存储有结果类型与优先级之间的对应关系,以及预先生成有对应于不同优先级的上报队列。当确定各目标数据处理结果各自对应的结果类型时,边缘节点可根据结果类型与优先级之间的对应关系,确定各目标数据处理结果各自对应的优先级,根据结果类型的优先级,将目标数据处理结果转存至相应的上报队列。比如,可将具有第一优先级的目标数据处理结果转存至具有第一优先级的上报队列,将具有第二优先级的目标数据处理结果转存至具有第二优先级的上报队列。进一步地,边缘节点按照各上报队列的优先级,依次将上报队列中的目标数据处理结果进行上报,并在上报队列中的目标数据处理结果上报完毕时,将数据类型为非结构类型的数据处理结果进行上报。
在其中一个实施例中,边缘节点可优先将轨迹数据进行上报,对解码数据进行暂缓上报。在其中一个实施例中,边缘节点可通过边缘代理将各数据处理结果上报至服务器,并在确定数据处理结果上报失败时,将上报失败的数据处理结果缓存至缓存队列,以使后续对缓存队列中的数据处理结果进行重新上报。
上述实施例中,由于是按照优先级对各数据处理结果进行上报的,使得服务器可基于优先接收到的数据处理结果确定相应的任务处理结果,从而提升了任务处理结果的确定效率。
在一个实施例中,上述任务处理方法还包括节点信息的生成步骤,节点信息的生成步骤包括:获取本地边缘节点所属目标集群的目标集群标识、已部署算法服务的目标服务标识、已部署算法服务的运行状态、和资源量;根据目标集群标识、已部署算法服务的目标服务标识、已部署算法服务的运行状态、和资源量,生成相应的节点信息,并将节点信息上报至服务器。
具体地,由于服务器是根据节点信息,确定各待处理任务各自对应的边缘节点,因此,边缘节点还需将自身的节点信息上报至服务器。边缘节点自身所属目标集群的目标集群标识、已部署算法服务的目标服务标识、已部署算法服务的运行状态、和资源量,并将目标集群标识、已部署算法服务的目标服务标识、已部署算法服务的运行状态、和资源量,生成相应的节点信息,通过边代理将节点信息发送至服务器。在其中一个实施例中,边缘节点可在向服务器请求下发待处理任务时,将节点信息同步发送至服务器,边缘节点也可定时向服务器发送自身的节点信息。本实施在此不作限定。
在其中一个实施例中,参考图7,图7示出了一个实施例中任务处理的架构示意图。参考图7,任务处理的架构包括云端、边端和终端,其中,终端部署有多个边缘终端,用以采集待处理数据,边缘端部署有多个边缘节点,用以收集节点信息并将节点信息上报至云端,以及通过调用算法管线对待处理任务进行处理。云端部署有镜像仓库、服务发布器、终端管理中心、设备管理中心、数据存储中心、任务编辑器和云代理。各模块相辅相成,共同实现任务的处理。
本实施例中,通过将节点信息上报至服务器,使得服务器可基于节点信息快速确定用以执行待处理任务的目标边缘节点,从而提升了目标边缘节点的确定效率。此外,由于节点信息中包括有算法服务的运行状态、和资源量,使得服务器可将待处理任务下发至算法服务运行正常且资源量满足空闲资源条件的目标边缘节点中,从而减少了因算法服务运行异常或者空闲资源不足而导致待处理任务失败的概率。
在一个实施例中,如图8所示,提供了一种任务处理***,包括服务器和部署于不同区域的集群,一个集群中包括有部署在相同预设区域内的至少一个边缘终端和至少一个边缘节点,服务器中设置有任务编辑器和云代理,边缘节点中设置有与云代理相适应的边端代理,还部署有多个算法服务,其中:服务器中的任务编辑器,用于获取包括有目标服务标识和目标集群标识的任务信息,并基于任务信息生成待处理任务;任务编辑器,还用于确定与目标集群标识对应的目标集群中各边缘节点的节点信息,并基于节点信息和任务信息,从至少一个边缘节点中筛选出与待处理任务相匹配的目标边缘节点;服务器中的云代理,用于将待处理任务发送至目标边缘节点;目标边缘节点中的边端代理,用于接收服务器下发的待处理任务,并将待处理任务传递至与目标服务标识相对应的目标算法服务;边缘节点中的目标算法服务,用于基于待处理任务,从目标集群中与边缘节点部署于相同区域中的边缘终端,以及目标集群中除自身之外的其他边缘节点中的至少一个设备处,获取待处理数据,并对待处理数据进行处理,得到数据处理结果;边端代理,还用于将数据处理结果返回至服务器;服务器,用于根据接收的数据处理结果确定与待处理任务对应的任务处理结果。
具体地,当需要对各商场进行客流量统计时,任务编辑器可生成对各商场进行客流量统计的业务指令,并对该业务指令进行拆分得到多个任务信息,基于各任务信息生成多个待处理任务,其中,每个待处理任务均可为针对一个商场进行客流量统计。任务处理器对待处理任务进行持久化处理,将待处理任务存储至数据库中,以使后续从数据库中提取待处理任务,并即将待处理任务下发至边缘节点。任务编辑器可从数据库中提取待处理任务,将待处理任务存储至云任务队列中,并对云任务队列中的待处理任务进行处理,比如,将待处理任务下发至相应的边缘节点、对待处理任务进行任务更新、暂停待处理任务的执行以及删除待处理任务等。在下发待处理任务之前,云代理可收集各边缘节点的节点信息,以使任务编辑器根据节点信息确定各待处理任务各自对应的目标边缘节点,并触发云代理将待处理任务下发至相应的目标边缘节点。
目标边缘节点中的边端代理可接收服务器下发的待处理任务,并将接收到的待处理任务存储至边任务队列中。边端代理依次提取边任务队列中的待处理任务,将提取出的待处理任务透传至算法管线,通过算法管线从边缘终端处获取待处理数据,对待处理数据进行处理,得到相应的数据处理结果。进一步地,边端代理实时对各待处理任务的任务执行状态进行监控,并将监控数据上报至服务器。边端代理还可以确定各数据处理结果的优先级,按照优先级将各数据处理结果缓存至具有相应优先级的上报队列中,并对上报队列中的数据处理结果进行上报。以使服务器根据接收到的数据处理结果,得到各商场的客流量。
上述任务处理***中,是直接通过边缘节点完成待处理数据的处理,再将数据处理结果返回至服务器,而数据处理结果的数据大小一般小于待处理数据的数据大小,因此,相比于传统的将待处理数据发送至服务器,本申请可节约数据发送时所耗费的带宽资源。
本申请还提供一种应用场景,该应用场景应用上述的任务处理方法。具体地,该任务处理方法在该应用场景的应用如下:
可针对每个教室均设置一个集群,集群内的边缘终端可在考试时,对相应教室内的场景进行采集,得到待处理数据,并将待处理数据发送至同一集群内的边缘节点。当边缘节点接收到服务器下发的动作识别任务时,边缘节点可对接收到的待处理数据进行动作识别,得到动作识别结果,并将动作识别结果返回至服务器,以使服务器根据动作识别结果确定教室内是否有学生执行了异常动作,例如是否有学生正在作弊。
上述应用场景仅为示意性的说明,可以理解,本申请各实施例所提供的业务相关数据上报方法的应用不局限于上述场景,比如,在智慧零售领域中,还可以针对每个商场均设置一个集群,从而服务器可将客流量统计任务下发至与待统计商场相对应的集群内的边缘节点,以使边缘节点从边缘终端处获取待处理图像,并调用相应的算法服务对待处理图像进行处理,得到数据处理结果,从而服务器可基于边缘节点返回的数据处理结果,确定待统计商场的客流量。
在一个具体实施例中,参考图9,上述任务处理方法包括:
S902,从镜像仓库中获取至少一个待发布算法服务的服务镜像,并通过指定的发布资源对每个算法服务镜像进行发布处理,得到目标服务镜像。
S904,确定各目标服务镜像各自对应的待调度集群和待调度边缘节点;将目标服务镜像下发至待调度集群中的待调度边缘节点,使得每个边缘节点均运行各自接收的目标服务镜像以提供相应的算法服务。
S906,当获取得到业务执行指令时,对业务执行指令进行解析,得到业务执行指令的指令信息;指令信息包括有至少一个任务信息。
S908,分别基于每个任务信息中的目标集群标识、以及与目标集群标识相对应的至少一个目标服务标识,生成相应的待处理任务;待处理任务至少包括客流统计任务、视频质检任务和图像解码任务中的一种。
S910,从节点信息库中筛选出包含有目标集群标识的候选节点信息;其中,节点信息库存储有每个集群上报的各自所包括的边缘节点的节点信息;节点信息包括边缘节点所属目标集群的目标集群标识、已部署算法服务的目标服务标识、已部署算法服务的运行状态标识、和资源量。
S912,将候选节点信息作为与目标集群标识对应的目标集群中各边缘节点的节点信息;目标集群中包括部署在预设区域内的至少一个边缘节点和至少一个边缘终端。
S914,从节点信息中筛选出包括有目标服务标识和目标状态标识的目标候选节点信息;其中,目标状态标识表征相应边缘节点处于正常运行状态。
S916,从目标候选节点信息中筛选出资源量满足空闲条件的目标节点信息;将与目标节点信息相对应的边缘节点,作为与待处理任务匹配的目标边缘节点。
S918,将待处理任务发送至目标边缘节点,以触发目标边缘节点从目标集群中的至少一个设备处获取待处理数据,并根据预先部署的与目标服务标识对应的目标算法服务对待处理数据进行处理。
S920,接收目标边缘节点返回的数据处理结果,并将数据处理结果中的结构化数据存储至存储队列、以及将非结构化数据存储至数据库。
S922,当满足处理条件时,从存储队列中提取出与待处理任务对应的结构化数据、以及从数据库中提取出与待处理任务对应的非结构化数据;对提取出的结构化数据和非结构化数据进行处理,得到待处理任务的任务处理结果。
上述任务处理方法中,通过获取任务信息,可基于任务信息生成待处理任务。通过获取任务信息中的目标集群标识,可基于目标集群标识优先筛选出目标集群中的各边缘节点的节点信息,从而后续只需将任务信息与目标集群内的各边缘节点的节点信息进行信息匹配,即可得到相匹配的目标边缘节点,而无需将任务信息与全部的边缘节点信息均进行信息匹配,如此大大提升了信息匹配的匹配效率。通过确定与待处理任务相匹配的目标边缘节点,可将待处理任务发送至目标边缘节点,以触发目标边缘节点获取待处理数据,并根据预先部署的目标算法服务对待处理数据进行处理,得到数据处理结果。由于目标边缘节点是与待处理任务相匹配的,因此,通过目标边缘节点执行待处理任务,可提升待处理任务的处理成功率,得到正确的数据处理结果。通过接收目标边缘节点返回的数据处理结果,可基于数据处理结果确定与待处理任务对应的任务处理结果,如此,便实现了任务的处理。由于本申请是直接通过边缘节点完成待处理数据的处理,再将数据处理结果返回至服务器,而数据处理结果的数据大小一般小于待处理数据的数据大小,因此,相比于传统的将待处理数据发送至服务器,本申请可节约数据发送时所耗费的带宽资源。
在一个实施例中,参考图10,上述任务处理方法包括:
S1002,获取本地边缘节点所属目标集群的目标集群标识、已部署算法服务的目标服务标识、已部署算法服务的运行状态、和资源量。
S1004,根据目标集群标识、已部署算法服务的目标服务标识、已部署算法服务的运行状态、和资源量,生成相应的节点信息,并将节点信息上报至服务器。
S1006,接收服务器下发的待处理任务;其中,待处理任务为服务器基于待处理任务的任务信息中的目标集群标识选中目标集群后,基于目标集群中各个边缘节点的节点信息与任务信息的匹配程度,从而选中与待处理任务相匹配的边缘节点后下发至选中的边缘节点的。
S1008,确定目标集群中与边缘节点部署于相同区域中的边缘终端;从边缘终端、以及目标集群中除自身之外的其他边缘节点中的至少一个设备处,获取待处理数据。
S1010,确定任务信息中每个目标服务标识各自对应的目标算法服务;根据各目标算法服务的调用顺序,确定多个目标算法服务中的当前目标算法服务。
S1012,通过当前目标算法服务对待处理数据和前序处理结果中的至少一种进行处理,得到当前处理结果;前序处理结果是在当前目标算法服务之前已被调用的前序算法服务所输出的处理结果。
S1014,将当前处理结果作为后续调用处理所对应的前序处理结果,并按照调用顺序返回至下一个目标算法服务的调用处理,直至得到每个目标算法服务各自输出的数据处理结果。
S1016,确定各目标算法服务各自输出的数据处理结果的数据类型,并从数据处理结果中筛选出数据类型为结构类型的目标数据处理结果;根据输出目标数据处理结果的目标算法服务所属的服务类型,确定相应目标数据处理结果的结果类型。
S1018,根据结果类型的优先级,将目标数据处理结果转存至相应的上报队列,并按照上报队列的优先级,上报上报队列中的目标数据处理结果;当上报队列中的目标数据处理结果上报完毕时,将数据类型为非结构类型的数据处理结果进行上报。
上述任务处理方法,通过接收服务器下发的待处理任务,可根据待处理任务的任务信息中的目标集群标识确定相应的目标集群,并确定同属于目标集群中的边缘终端。通过确定目标集群和边缘终端,可从边缘终端、以及目标集群中除自身之外的其他边缘节点中的至少一个设备处,获取待处理数据,从而可调用与任务信息中的目标服务标识相对应的目标算法服务,对待处理数据进行处理,得到数据处理结果。通过获取数据处理结果,可将数据处理结果返回至服务器,以使服务器根据数据处理结果确定待处理任务的任务处理结果。由于本申请是直接通过边缘节点完成待处理数据的处理,再将数据处理结果返回至服务器,而数据处理结果的数据大小一般小于待处理数据的数据大小,因此,相比于传统的将待处理数据发送至服务器,本申请可节约数据发送时所耗费的带宽资源。
应该理解的是,虽然图2、图6、图9-图10的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图2、图6、图9-图10中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
在一个实施例中,如图11所示,提供了一种任务处理装置1100,该装置可以采用软件模块或硬件模块,或者是二者的结合成为计算机设备的一部分,该装置具体包括:任务生成模块1102、节点确定模块1104和数据接收模块1106,其中:
任务生成模块1102,用于获取包括有目标服务标识和目标集群标识的任务信息,并基于任务信息生成待处理任务。
节点确定模块1104,用于确定与目标集群标识对应的目标集群中各边缘节点的节点信息;目标集群中包括部署在预设区域内的至少一个边缘节点和至少一个边缘终端;基于节点信息和任务信息,从至少一个边缘节点中筛选出与待处理任务相匹配的目标边缘节点。
数据接收模块1106,用于将待处理任务发送至目标边缘节点,以触发目标边缘节点从目标集群中的至少一个设备处获取待处理数据,并根据预先部署的与目标服务标识对应的目标算法服务对待处理数据进行处理;接收目标边缘节点返回的数据处理结果,并基于数据处理结果确定与待处理任务对应的任务处理结果。
在一个实施例中,任务生成模块1102还用于当获取得到业务执行指令时,对业务执行指令进行解析,得到业务执行指令的指令信息;指令信息包括有至少一个任务信息;分别基于每个任务信息中的目标集群标识、以及与目标集群标识相对应的至少一个目标服务标识,生成相应的待处理任务。
在一个实施例中,节点确定模块1104还包括集群确定模块1141,用于从节点信息库中筛选出包含有目标集群标识的候选节点信息;其中,节点信息库存储有每个集群上报的各自所包括的边缘节点的节点信息;节点信息包括边缘节点所属目标集群的目标集群标识、已部署算法服务的目标服务标识、已部署算法服务的运行状态标识、和资源量;将候选节点信息作为与目标集群标识对应的目标集群中各边缘节点的节点信息。
在一个实施例中,节点确定模块1104还用于从节点信息中筛选出包括有目标服务标识和目标状态标识的目标候选节点信息;其中,目标状态标识表征相应边缘节点处于正常运行状态;从目标候选节点信息中筛选出资源量满足空闲条件的目标节点信息;将与目标节点信息相对应的边缘节点,作为与待处理任务相匹配的目标边缘节点。
在一个实施例中,数据接收模块1106还用于任务结果确定模块1161,用于确定待处理任务的任务处理结果;待处理任务至少包括客流统计任务、视频质检任务和图像解码任务中的一种;客流统计任务的任务信息中至少包括取流解码服务标识、人脸人体检测服务标识和轨迹识别服务标识中的一种,视频质检任务的任务信息中至少包括取流解码服务标识、人脸人体检测服务标识和动作识别服务标识中的一种,图像解码任务的任务信息中包括取流解码服务标识。
在一个实施例中,数据处理结果包括轨迹数据、动作识别数据、图像解码数据;任务结果确定模块1161还用于当待处理任务为客流统计任务时,接收目标边缘节点返回的轨迹数据,并基于轨迹数据得到统计区域内的客流量;当待处理任务为视频质检任务时,接收目标边缘节点返回的动作识别数据,并基于动作识别数据得到视频质检结果;当待处理任务为图像解码任务时,接收目标边缘节点返回的图像解码数据,基于图像解码数据得到图像解码结果。
在一个实施例中,任务处理装置1100还用于从镜像仓库中获取至少一个待发布算法服务的服务镜像,并通过指定的发布资源对每个算法服务镜像进行发布处理,得到目标服务镜像;确定各目标服务镜像各自对应的待调度集群和待调度边缘节点;将目标服务镜像下发至待调度集群中的待调度边缘节点,使得每个边缘节点均运行各自接收的目标服务镜像以提供相应的算法服务。
在一个实施例中,如图12所示,提供了一种任务处理装置1200,该装置可以采用软件模块或硬件模块,或者是二者的结合成为计算机设备的一部分,该装置具体包括:任务接收模块1202、处理结果确定模块1204和结果返回模块1206,其中:
任务接收模块1202,用于接收服务器下发的待处理任务;其中,待处理任务为服务器基于待处理任务的任务信息中的目标集群标识选中目标集群后,基于目标集群中各个边缘节点的节点信息与任务信息的匹配程度,从而选中与待处理任务相匹配的边缘节点后下发至选中的边缘节点的。
处理结果确定模块1204,用于确定目标集群中与边缘节点部署于相同区域中的边缘终端;从边缘终端、以及目标集群中除自身之外的其他边缘节点中的至少一个设备处,获取待处理数据,并调用与任务信息中的目标服务标识相对应的目标算法服务,对待处理数据进行处理,得到数据处理结果。
结果返回模块1206,用于将数据处理结果返回至服务器,以使服务器通过数据处理结果确定与待处理任务对应的任务处理结果。
在一个实施例中,处理结果确定模块1204还用于确定任务信息中每个目标服务标识各自对应的目标算法服务;根据各目标算法服务的调用顺序,确定多个目标算法服务中的当前目标算法服务;通过当前目标算法服务对待处理数据和前序处理结果中的至少一种进行处理,得到当前处理结果;前序处理结果是在当前目标算法服务之前已被调用的前序算法服务所输出的处理结果;将当前处理结果作为后续调用处理所对应的前序处理结果,并按照调用顺序返回至下一个目标算法服务的调用处理,直至得到每个目标算法服务各自输出的数据处理结果。
在一个实施例中,结果返回模块1206,还用于确定各目标算法服务各自输出的数据处理结果的数据类型,并从数据处理结果中筛选出数据类型为结构类型的目标数据处理结果;根据输出目标数据处理结果的目标算法服务所属的服务类型,确定相应目标数据处理结果的结果类型;根据结果类型的优先级,将目标数据处理结果转存至相应的上报队列,并按照上报队列的优先级,上报上报队列中的目标数据处理结果;当上报队列中的目标数据处理结果上报完毕时,将数据类型为非结构类型的数据处理结果进行上报。
在一个实施例中,任务处理装置1200还用于获取本地边缘节点所属目标集群的目标集群标识、已部署算法服务的目标服务标识、已部署算法服务的运行状态、和资源量;根据目标集群标识、已部署算法服务的目标服务标识、已部署算法服务的运行状态、和资源量,生成相应的节点信息,并将节点信息上报至服务器。
关于任务处理装置的具体限定可以参见上文中对于任务处理方法的限定,在此不再赘述。上述任务处理装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图13所示。该计算机设备包括通过***总线连接的处理器、存储器和网络接口。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作***、计算机程序和数据库。该内存储器为非易失性存储介质中的操作***和计算机程序的运行提供环境。该计算机设备的数据库用于存储任务处理数据。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种任务处理方法。
本领域技术人员可以理解,图13中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,还提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现上述各方法实施例中的步骤。
在一个实施例中,提供了一种计算机可读存储介质,存储有计算机程序,该计算机程序被处理器执行时实现上述各方法实施例中的步骤。
在一个实施例中,提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述各方法实施例中的步骤。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(Read-Only Memory,ROM)、磁带、软盘、闪存或光存储器等。易失性存储器可包括随机存取存储器(Random Access Memory,RAM)或外部高速缓冲存储器。作为说明而非局限,RAM可以是多种形式,比如静态随机存取存储器(Static Random Access Memory,SRAM)或动态随机存取存储器(Dynamic Random Access Memory,DRAM)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。
Claims (18)
1.一种任务处理方法,其特征在于,应用于服务器,所述方法包括:
获取包括有目标服务标识和目标集群标识的任务信息,并基于所述任务信息生成待处理任务;
确定与所述目标集群标识对应的目标集群中各边缘节点的节点信息;所述目标集群中包括部署在预设区域内的至少一个边缘节点和至少一个边缘终端;
基于所述节点信息和所述任务信息,从所述至少一个边缘节点中筛选出与所述待处理任务相匹配的目标边缘节点;
将所述待处理任务发送至所述目标边缘节点,以触发所述目标边缘节点从所述目标集群中的至少一个设备处获取待处理数据,并根据预先部署的与所述目标服务标识对应的目标算法服务对所述待处理数据进行处理;
接收所述目标边缘节点返回的数据处理结果,并基于所述数据处理结果确定与所述待处理任务对应的任务处理结果。
2.根据权利要求1所述的方法,其特征在于,所述获取包括有目标服务标识和目标集群标识的任务信息,并基于所述任务信息生成待处理任务,包括:
当获取得到业务执行指令时,对所述业务执行指令进行解析,得到所述业务执行指令的指令信息;所述指令信息包括有至少一个任务信息;
分别基于每个所述任务信息中的目标集群标识、以及与所述目标集群标识相对应的至少一个目标服务标识,生成相应的待处理任务。
3.根据权利要求1所述的方法,其特征在于,所述确定与所述目标集群标识对应的目标集群中各边缘节点的节点信息,包括:
从节点信息库中筛选出包含有目标集群标识的候选节点信息;其中,所述节点信息库存储有每个集群上报的各自所包括的边缘节点的节点信息;
将所述候选节点信息作为与所述目标集群标识对应的目标集群中各边缘节点的节点信息。
4.根据权利要求1所述的方法,其特征在于,所述基于所述节点信息和所述任务信息,从所述至少一个边缘节点中筛选出与所述待处理任务相匹配的目标边缘节点,包括:
从所述节点信息中筛选出包括有所述目标服务标识和目标状态标识的目标候选节点信息;其中,所述目标状态标识表征相应边缘节点处于正常运行状态;
从所述目标候选节点信息中筛选出资源量满足空闲条件的目标节点信息;
将与所述目标节点信息相对应的边缘节点,作为与所述待处理任务相匹配的目标边缘节点。
5.根据权利要求1所述的方法,其特征在于,所述接收所述目标边缘节点返回的数据处理结果,并基于所述数据处理结果确定与所述待处理任务对应的任务处理结果,包括:
接收所述目标边缘节点返回的数据处理结果,并将所述数据处理结果中的结构化数据存储至存储队列、以及将非结构化数据存储至数据库;
当满足处理条件时,从所述存储队列中提取出与所述待处理任务对应的结构化数据、以及从所述数据库中提取出与所述待处理任务对应的非结构化数据;
对提取出的所述结构化数据和所述非结构化数据进行处理,得到所述待处理任务的任务处理结果。
6.根据权利要求1所述的方法,其特征在于,所述待处理任务至少包括客流统计任务、视频质检任务和图像解码任务中的一种;
所述客流统计任务的任务信息中至少包括取流解码服务标识、人脸人体检测服务标识和轨迹识别服务标识中的一种,所述视频质检任务的任务信息中至少包括取流解码服务标识、人脸人体检测服务标识和动作识别服务标识中的一种,所述图像解码任务的任务信息中包括取流解码服务标识。
7.根据权利要求6所述的方法,其特征在于,所述数据处理结果包括轨迹数据、动作识别数据、图像解码数据;
所述接收所述目标边缘节点返回的数据处理结果,并基于所述数据处理结果确定与所述待处理任务对应的任务处理结果,包括:
当所述待处理任务为客流统计任务时,接收所述目标边缘节点返回的轨迹数据,并基于所述轨迹数据得到统计区域内的客流量;
当所述待处理任务为视频质检任务时,接收所述目标边缘节点返回的动作识别数据,并基于所述动作识别数据得到视频质检结果;
当所述待处理任务为图像解码任务时,接收所述目标边缘节点返回的图像解码数据,基于所述图像解码数据得到图像解码结果。
8.根据权利要求1至7中任一项所述的方法,其特征在于,所述方法还包括:
从镜像仓库中获取至少一个待发布算法服务的服务镜像,并通过指定的发布资源对每个所述算法服务镜像进行发布处理,得到目标服务镜像;
确定各所述目标服务镜像各自对应的待调度集群和待调度边缘节点;
将所述目标服务镜像下发至所述待调度集群中的待调度边缘节点,使得每个边缘节点均运行各自接收的目标服务镜像以提供相应的算法服务。
9.一种任务处理方法,其特征在于,应用于边缘节点,所述方法包括:
接收服务器下发的待处理任务;其中,所述待处理任务为服务器基于待处理任务的任务信息中的目标集群标识选中目标集群后,基于目标集群中各个边缘节点的节点信息与所述任务信息的匹配程度,从而选中与所述待处理任务相匹配的边缘节点后下发至选中的边缘节点的;
确定所述目标集群中与所述边缘节点部署于相同区域中的边缘终端;
从所述边缘终端、以及所述目标集群中除自身之外的其他边缘节点中的至少一个设备处,获取待处理数据,并调用与所述任务信息中的目标服务标识相对应的目标算法服务,对所述待处理数据进行处理,得到数据处理结果;
将所述数据处理结果返回至服务器,以使服务器通过所述数据处理结果确定与所述待处理任务对应的任务处理结果。
10.根据权利要求9所述的方法,其特征在于,所述调用与所述任务信息中的目标服务标识相对应的目标算法服务,对所述待处理数据进行处理,得到数据处理结果,包括:
确定所述任务信息中每个目标服务标识各自对应的目标算法服务;
根据各所述目标算法服务的调用顺序,确定多个所述目标算法服务中的当前目标算法服务;
通过当前目标算法服务对所述待处理数据和前序处理结果中的至少一种进行处理,得到当前处理结果;所述前序处理结果是在所述当前目标算法服务之前已被调用的前序算法服务所输出的处理结果;
将所述当前处理结果作为后续调用处理所对应的前序处理结果,并按照所述调用顺序返回至下一个目标算法服务的调用处理,直至得到每个目标算法服务各自输出的数据处理结果。
11.根据权利要求10所述的方法,其特征在于,所述将所述数据处理结果返回至服务器,包括:
确定各所述目标算法服务各自输出的数据处理结果的数据类型,并从所述数据处理结果中筛选出数据类型为结构类型的目标数据处理结果;
根据输出所述目标数据处理结果的目标算法服务所属的服务类型,确定相应目标数据处理结果的结果类型;
根据所述结果类型的优先级,将所述目标数据处理结果转存至相应的上报队列,并按照所述上报队列的优先级,上报所述上报队列中的目标数据处理结果;
当所述上报队列中的目标数据处理结果上报完毕时,将数据类型为非结构类型的数据处理结果进行上报。
12.根据权利要求9至11任意一项所述的方法,其特征在于,所述方法还包括:
获取本地边缘节点所属目标集群的目标集群标识、已部署算法服务的目标服务标识、已部署算法服务的运行状态、和资源量;
根据所述目标集群标识、已部署算法服务的目标服务标识、已部署算法服务的运行状态、和资源量,生成相应的节点信息,并将所述节点信息上报至服务器。
13.一种任务处理***,其特征在于,包括服务器和部署于不同区域的集群,一个集群中包括有部署在相同预设区域内的至少一个边缘终端和至少一个边缘节点,所述服务器中设置有任务编辑器和云代理,所述边缘节点中设置有与所述云代理相适应的边端代理,还部署有多个算法服务,其中:
所述服务器中的任务编辑器,用于获取包括有目标服务标识和目标集群标识的任务信息,并基于所述任务信息生成待处理任务;
所述任务编辑器,还用于确定与所述目标集群标识对应的目标集群中各边缘节点的节点信息,并基于所述节点信息和所述任务信息,从所述至少一个边缘节点中筛选出与所述待处理任务相匹配的目标边缘节点;
所述服务器中的云代理,用于将所述待处理任务发送至所述目标边缘节点;
所述目标边缘节点中的边端代理,用于接收服务器下发的待处理任务,并将所述待处理任务传递至与所述目标服务标识相对应的目标算法服务;
所述边缘节点中的目标算法服务,用于基于所述待处理任务,从所述目标集群中与所述边缘节点部署于相同区域中的边缘终端,以及所述目标集群中除自身之外的其他边缘节点中的至少一个设备处,获取待处理数据,并对所述待处理数据进行处理,得到数据处理结果;
所述边端代理,还用于将所述数据处理结果返回至服务器;
所述服务器,用于根据接收的所述数据处理结果确定与所述待处理任务对应的任务处理结果。
14.一种任务处理装置,其特征在于,所述装置包括:
任务生成模块,用于获取包括有目标服务标识和目标集群标识的任务信息,并基于所述任务信息生成待处理任务;
节点确定模块,用于确定与所述目标集群标识对应的目标集群中各边缘节点的节点信息;所述目标集群中包括部署在预设区域内的至少一个边缘节点和至少一个边缘终端;基于所述节点信息和所述任务信息,从所述至少一个边缘节点中筛选出与所述待处理任务相匹配的目标边缘节点;
数据接收模块,用于将所述待处理任务发送至所述目标边缘节点,以触发所述目标边缘节点从所述目标集群中的至少一个设备处获取待处理数据,并根据预先部署的与所述目标服务标识对应的目标算法服务对所述待处理数据进行处理;接收所述目标边缘节点返回的数据处理结果,并基于所述数据处理结果确定与所述待处理任务对应的任务处理结果。
15.一种任务处理装置,其特征在于,所述装置包括:
任务接收模块,用于接收服务器下发的待处理任务;其中,所述待处理任务为服务器基于待处理任务的任务信息中的目标集群标识选中目标集群后,基于目标集群中各个边缘节点的节点信息与所述任务信息的匹配程度,从而选中与所述待处理任务相匹配的边缘节点后下发至选中的边缘节点的;
处理结果确定模块,用于确定所述目标集群中与所述边缘节点部署于相同区域中的边缘终端;从所述边缘终端、以及所述目标集群中除自身之外的其他边缘节点中的至少一个设备处,获取待处理数据,并调用与所述任务信息中的目标服务标识相对应的目标算法服务,对所述待处理数据进行处理,得到数据处理结果;
结果返回模块,用于将所述数据处理结果返回至服务器,以使服务器通过所述数据处理结果确定与所述待处理任务对应的任务处理结果。
16.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至12中任一项所述的方法的步骤。
17.一种计算机可读存储介质,存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至12中任一项所述的方法的步骤。
18.一种计算机程序产品,包括计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至12中任一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111029047.7A CN115729683A (zh) | 2021-09-01 | 2021-09-01 | 任务处理方法、装置、***、计算机设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111029047.7A CN115729683A (zh) | 2021-09-01 | 2021-09-01 | 任务处理方法、装置、***、计算机设备和存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115729683A true CN115729683A (zh) | 2023-03-03 |
Family
ID=85292506
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111029047.7A Pending CN115729683A (zh) | 2021-09-01 | 2021-09-01 | 任务处理方法、装置、***、计算机设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115729683A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116501510A (zh) * | 2023-06-29 | 2023-07-28 | 恒生电子股份有限公司 | 数据处理方法、业务处理方法及*** |
CN117195054A (zh) * | 2023-09-15 | 2023-12-08 | 苏州优鲜生网络科技有限公司 | 基于集群的跨节点数据识别方法与*** |
-
2021
- 2021-09-01 CN CN202111029047.7A patent/CN115729683A/zh active Pending
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116501510A (zh) * | 2023-06-29 | 2023-07-28 | 恒生电子股份有限公司 | 数据处理方法、业务处理方法及*** |
CN117195054A (zh) * | 2023-09-15 | 2023-12-08 | 苏州优鲜生网络科技有限公司 | 基于集群的跨节点数据识别方法与*** |
CN117195054B (zh) * | 2023-09-15 | 2024-03-26 | 苏州优鲜生网络科技有限公司 | 基于集群的跨节点数据识别方法与*** |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107577805B (zh) | 一种面向日志大数据分析的业务服务*** | |
Tse et al. | Global zoom/pan estimation and compensation for video compression | |
Ali et al. | RES: Real-time video stream analytics using edge enhanced clouds | |
CN109684052B (zh) | 事务分析方法、装置、设备及存储介质 | |
CN109885624B (zh) | 数据处理方法、装置、计算机设备和存储介质 | |
CN106790706B (zh) | 一种数据资源优化的方法、平台及*** | |
Picoreti et al. | Multilevel observability in cloud orchestration | |
CN115729683A (zh) | 任务处理方法、装置、***、计算机设备和存储介质 | |
CN111277848B (zh) | 直播间互动消息的处理方法、装置、电子设备及存储介质 | |
WO2019206100A1 (zh) | 一种特征工程编排方法及装置 | |
CN110781180B (zh) | 一种数据筛选方法和数据筛选装置 | |
CN111935663B (zh) | 传感器数据流的处理方法、装置、介质及电子设备 | |
CN113687958A (zh) | 数据处理方法、***、计算机设备和存储介质 | |
Zhang et al. | A serverless cloud-fog platform for dnn-based video analytics with incremental learning | |
Passas et al. | Artificial Intelligence for network function autoscaling in a cloud-native 5G network | |
CN112669353B (zh) | 数据处理方法、装置、计算机设备和存储介质 | |
CN113392081B (zh) | 数据处理***及方法 | |
CN112363940B (zh) | 一种数据处理方法、装置、存储介质及服务器 | |
CN116132623A (zh) | 一种基于视频监控的智能分析方法、***及设备 | |
CN111901561B (zh) | 监控***中的视频数据处理方法、装置、***及存储介质 | |
CN112866332A (zh) | 基于云边融合实现突发事件识别预警的***、方法、装置、处理器及其存储介质 | |
CN111757115A (zh) | 一种视频流处理方法及装置 | |
WIT et al. | 5G Experimentation Environment for 3rd Party Media Services D2. 9 Continuous QoS/QoE Monitoring Engine Development-Initial | |
CN116382813B (zh) | 用于智慧城市管理的视频实时处理ai引擎*** | |
Mao et al. | A semantic segmentation algorithm for distributed energy data storage optimization based on neural networks |
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 | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: DE Ref document number: 40088356 Country of ref document: HK |