CN116708412A - 一种数据上传方法、装置、电子设备和存储介质 - Google Patents

一种数据上传方法、装置、电子设备和存储介质 Download PDF

Info

Publication number
CN116708412A
CN116708412A CN202310761887.5A CN202310761887A CN116708412A CN 116708412 A CN116708412 A CN 116708412A CN 202310761887 A CN202310761887 A CN 202310761887A CN 116708412 A CN116708412 A CN 116708412A
Authority
CN
China
Prior art keywords
data
data uploading
task
uploading
bandwidth
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
Application number
CN202310761887.5A
Other languages
English (en)
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.)
Apollo Zhilian Beijing Technology Co Ltd
Original Assignee
Apollo Zhilian Beijing 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 Apollo Zhilian Beijing Technology Co Ltd filed Critical Apollo Zhilian Beijing Technology Co Ltd
Priority to CN202310761887.5A priority Critical patent/CN116708412A/zh
Publication of CN116708412A publication Critical patent/CN116708412A/zh
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/06Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0896Bandwidth or capacity management, i.e. automatically increasing or decreasing capacities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/60Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
    • H04L67/61Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources taking into account QoS or priority requirements

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本公开提供了一种数据上传方法、装置、电子设备和存储介质,涉及人工智能技术领域,尤其涉及自动驾驶领域。具体实现方案为:获取待上传数据的关联信息,并将所述关联信息发送到数据上传管理端;查询所述数据上传管理端中是否存在待执行的数据上传任务;其中,待执行的数据上传任务中包括用户通过访问所述关联信息从所述待上传数据中确定的目标数据,以及用户确定的任务优先级;若存在待执行的数据上传任务,则根据任务优先级执行所述数据上传任务,以对所述数据上传任务中指定的目标数据进行上传。实现了自动驾驶车辆数据的自动上传,相比于通过人工上传的方式,提高了数据上传的效率。

Description

一种数据上传方法、装置、电子设备和存储介质
技术领域
本公开涉及人工智能技术领域,尤其涉及自动驾驶领域,具体涉及一种数据上传方法、装置、电子设备、存储介质和计算机程序产品。
背景技术
自动驾驶车辆,也可称为无人驾驶车辆,是指通过各种传感器来感知车辆周围环境,并根据感知所获得的道路、车辆位置和障碍物信息等,控制车辆的转向和速度,从而使车辆能够安全、可靠地在道路上行驶。
自动驾驶车辆在运行过程中,车辆状态数据、各种定位装置、雷达、摄像头等传感器采集获得的信息数据均需要及时的记录并存储至磁盘。
发明内容
本公开提供了一种数据上传方法、装置、电子设备、存储介质和计算机程序产品。
根据本公开的一方面,提供了一种数据上传方法,应用于数据中心中的数据上传终端,所述数据中心包括多个数据上传终端,所述方法包括:
获取待上传数据的关联信息,并将所述关联信息发送到数据上传管理端;
查询所述数据上传管理端中是否存在待执行的数据上传任务;其中,待执行的数据上传任务中包括用户通过访问所述关联信息从所述待上传数据中确定的目标数据,以及用户确定的任务优先级;
若存在待执行的数据上传任务,则根据任务优先级执行所述数据上传任务,以对所述数据上传任务中指定的目标数据进行上传。
根据本公开的一方面,提供了一种数据上传方法,应用于数据上传管理端,所述方法包括:
接收并保存数据上传终端发送的待上传数据的关联信息;
在用户访问所述数据上传管理端中保存的所述关联信息时,响应于所述用户的确定的目标数据和任务优先级,生成待执行的数据上传任务;
响应于所述数据上传终端对待执行的数据上传任务的查询,将当前存在的待执行的数据上传任务发送给所述数据上传终端,使得所述数据上传终端根据所述数据上传任务开始上传数据。
根据本公开的另一方面,提供了一种数据上传装置,配置于数据中心中的数据上传终端,所述数据中心包括多个数据上传终端,所述装置包括:
信息获取模块,用于获取待上传数据的关联信息,并将所述关联信息发送到数据上传管理端;
查询模块,用于查询所述数据上传管理端中是否存在待执行的数据上传任务;其中,待执行的数据上传任务中包括用户通过访问所述关联信息从所述待上传数据中确定的目标数据,以及用户确定的任务优先级;
数据上传模块,用于若存在待执行的数据上传任务,则根据任务优先级执行所述数据上传任务,以对所述数据上传任务中指定的目标数据进行上传。
根据本公开的另一方面,提供了一种数据上传装置,配置于数据上传管理端,所述装置包括:
信息接收模块,接收并保存数据上传终端发送的待上传数据的关联信息;
任务生成模块,用于在用户访问所述数据上传管理端中保存的所述关联信息时,响应于所述用户的确定的目标数据和任务优先级,生成待执行的数据上传任务;
任务下发模块,用于响应于所述数据上传终端对待执行的数据上传任务的查询,将当前存在的待执行的数据上传任务发送给所述数据上传终端,使得所述数据上传终端根据所述数据上传任务开始上传数据。
根据本公开的另一方面,提供了一种电子设备,包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行本公开任意实施例所述的数据上传方法。
根据本公开的另一方面,提供了一种存储有计算机指令的非瞬时计算机可读存储介质,所述计算机指令用于使计算机执行本公开任意实施例所述的数据上传方法。
根据本公开的另一方面,提供了一种计算机程序产品,包括计算机程序,计算机程序在被处理器执行时实现本公开任意实施例的数据上传方法。
根据本公开的技术,实现了自动驾驶车辆数据的自动上传,相比于通过人工上传的方式,提高了数据上传的效率。
应当理解,本部分所描述的内容并非旨在标识本公开的实施例的关键或重要特征,也不用于限制本公开的范围。本公开的其它特征将通过以下的说明书而变得容易理解。
附图说明
附图用于更好地理解本方案,不构成对本公开的限定。其中:
图1是根据本公开实施例的一种数据上传方法的流程示意图;
图2是根据本公开实施例的另一种数据上传方法的流程示意图;
图3是根据本公开实施例的另一种数据上传方法的流程示意图;
图4是根据本公开实施例的另一种数据上传方法的流程示意图;
图5是根据本公开实施例的另一种数据上传方法的流程示意图;
图6是根据本公开实施例的另一种数据上传方法的流程示意图;
图7是根据本公开实施例的另一种数据上传方法的流程示意图;
图8是根据本公开实施例的一种数据上传方法的逻辑示意图;
图9是根据本公开实施例的数据上传装置的示意图;
图10是根据本公开实施例的数据上传装置的示意图;
图11是用来实现本公开实施例的数据上传方法的电子设备的框图。
具体实施方式
以下结合附图对本公开的示范性实施例做出说明,其中包括本公开实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本公开的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
本公开实施例中,自动驾驶车辆在运行时,车辆状态数据、各种定位装置、雷达、摄像头等传感器采集获得的信息数据会记录并存储至硬盘或网络存储器设备中,其中,硬盘可选的是固态硬盘(例如SSD(Solid State Drives)硬盘)、非易失性存储硬盘(例如NVME(Non-Volatile Memory express)硬盘);网络存储器设备可以为NAS(Network AttachedStorage)设备。针对存储在硬盘或网络存储器设备中的数据,需要上传到云端,并对云端存储的数据进行处理和入库。目前,常用的数据上传方法是将硬盘插入到数据上传终端中,进而用户通过手动上传的方式,将数据上传到云端。由于这种数据上传方式需要人工手动上传,导致数据上传的效率较低。基于此,本公开方案提出了实现自动驾驶车辆数据自动上传的方法。具体的,本公开方案设计了数据上传终端和数据上传管理端协同作业,以实现数据的自动上传;其中,数据上传终端可以是设置在数据中心的服务器设备或计算机设备,而数据中心包括多个数据上传终端;硬盘等存储设备可通过接入数据上传终端,以实现数据的自动上传;数据上传管理端对数据上传终端提供所需接口,并允许用户通过交互界面进行操作。本公开的数据上传方法分别从数据上传终端和数据上传管理端进行说明,具体的方法流程可参见如下实施例。
图1是根据本公开实施例的一种数据上传方法的流程示意图。本实施例可适用于将硬盘中存储数据自动上传云端的情况,典型的,适用于自动驾驶场景中,将硬盘中保存自动驾驶车辆数据上传到云端的情况。该方法可由一种数据上传装置来执行,该装置采用软件和/或硬件的方式实现,优选是配置于电子设备中,例如配置在数据上传终端中,而数据上传终端可以是计算机设备或服务器等。如图1所示,该方法具体包括如下:
S101、获取待上传数据的关联信息,并将关联信息发送到数据上传管理端。
本公开实施例中,待上传数据是自动驾驶车辆运行过程中通过车载传感器(例如雷达、摄像头等)采集的信息数据(例如图像数据或点云数据等)和车辆状态数据;且待上传数据保存在固态硬盘设备、非易失性存储硬盘设备或网络存储器设备中。
进一步的,针对待上传数据存储的位置不同获取待上传数据的关联信息的方式不同。
可选的,若待上传数据存储在固态硬盘设备或非易失性存储硬盘设备中,则获取待上传数据的关联信息,包括:在检测到有固态硬盘设备或非易失性存储硬盘设备接入时,挂载并扫描固态硬盘设备或非易失性存储硬盘设备,以获取待上传数据的关联信息;其中,固态硬盘设备通过USB(Universal Serial Bus,通用串行总线)口接入数据上传终端;非易失性存储硬盘设备通过PCI-E(Peripheral Component Interconnect Express,高速串行计算机扩展总线)口接入数据上传终端。
若待上传数据存储在网络存储器设备中,则获取待上传数据的关联信息,包括:周期性扫描处于指定网络地址段的网络存储器设备,以获取待上传数据的关联信息;具体的,在扫描到网络存储器设备时,通过NFS(Network File System,网络文件系统)或SMB(Server Message Block,服务信息块)协议挂载该网络存储器设备,并扫描该网络存储器设备中的内容,以获取待上传数据的关联信息。需要说明的是,为了保证数据上传终端能够从网络存储器设备中获得关联信息,用户需要预先将网络存储器设备接入网络。另外,本公开方案支持网络存储器设备的数据自动上传,这是现有技术所未实现的。
需要说明的是,每个数据上传终端可以同时接入多个固态硬盘设备、非易失性存储硬盘设备、网络存储器设备。
本公开实施例中,固态硬盘设备、非易失性存储硬盘设备或网络存储器设备中保存的待上传数据是按照不同数据批次保存的,也即固态硬盘设备、非易失性存储硬盘设备或网络存储器设备中的顶层文件夹可以是用不同数据批次号命名数据文件夹,每个数据文件夹下包括该批次数据的描述信息和具体的数据内容,而数据内容可以包括具体的文件或文件夹。如此,获得的待上传数据的关联信息可以包括每个数据批次的描述信息、每个数据批次下包括的文件或文件夹、以及每个批次数据所在的存储设备以及存储设备所接入的数据上传终端等。
在得到待上传数据的关联信息后,可通过数据传输协议,将关联信息发送到数据上传管理端,例如将关联信息通过加密传输方式发送到数据上传管理端,以保证数据传输的安全性。需要说明的是,之所以将关联信息发送到数据上传管理端,是为了保证用户可以远程查询固态硬盘设备、非易失性存储硬盘设备或网络存储器设备中存储的自动驾驶车辆数据的相关信息;也即通过数据上传管理端,可以保证用户在远端了解或管理硬盘中数据。
S102、查询数据上传管理端中是否存在待执行的数据上传任务。
本公开实施例中,数据上传管理端提供了交互界面,例如web(World Wide Web,万维网)界面,用户可通过交互界面访问数据上传管理端保存的待上传数据的关联信息,并根据关联信息从待上传数据中确定目标数据,以及用户确定的任务优先级。其中,目标数据可以包括用户选中的需要上传的多个文件或文件夹,任务优先级可选的分为高优先级和低优先级,高优先级任务先执行,低优先级任务后执行,优先级可以用数字表示,例如,优先级为1表示高优先级,优先级为0表示低优先级。在用户确定目标数据和任务优先级后,生成待执行的数据上传任务,其中,生成的数据上传任务可以在数据上传管理端的数据库中进行保存,数据库中不仅保存数据上传任务的任务详情,还保存有基于数据上传任务的执行情况确定的任务状态,其中,任务状态可以是上传中、上传后处理、上传失败、上传成功等。
本实施例中,数据上传终端可以采用预先设定的轮训机制,定期查询数据上传管理端中是否存在待执行的数据上传任务,若存在,则按照S103的步骤进行数据上传。
S103、若存在待执行的数据上传任务,则根据任务优先级执行数据上传任务,以对数据上传任务中指定的目标数据进行上传。
本实施例中,由于数据上传任务中确定了数据上传任务的优先级以及需要上传的目标数据,因此,只需根据任务优先级确定当前待执行的数据上传任务是否需要执行,若需要,则加密传输协议或其他传输协议,将目标数据上传到云端,以便后续将云端存储的数据进行后处理和入库。
本公开实施例中,由于自动驾驶车辆数据可能存在网络存储器中,通过本公开方案实现了网络存储器设备中数据的自动上传;由于本公开方案实现了自动驾驶车辆数据的自动上传,相比于用户在数据上传终端上通过人工上传的方式上传数据,提高了数据上传的效率。
图2是根据本公开实施例的另一种数据上传方法的流程示意图。如图2所示,该方法具体包括如下:
S201、获取待上传数据的关联信息,并将关联信息发送到数据上传管理端。
S202、查询数据上传管理端中是否存在待执行的数据上传任务。
其中,待执行的数据上传任务中包括用户通过访问关联信息从待上传数据中确定的目标数据,以及用户确定的任务优先级。
S203、若存在待执行的数据上传任务,则根据任务优先级执行数据上传任务,以对数据上传任务中指定的目标数据进行上传。
本实施例中,目标数据可以包括用户选择上传的多个文件,因此,在进行数据上传时,可以采用并发上传的方式进行数据传输,也即执行任一数据上传任务时,可以根据预设的并发参数同时上传多个文件。需要说明的是,本实施例中,每个数据上传任务各自对应的并发参数是可以动态调整的,具体的调整过程可以参见S204-S206的步骤。
S204、将执行数据上传任务所占用的带宽发送到数据上传管理端,使得数据上传管理端对数据中心内的各数据上传终端的可用带宽进行动态调整。
本实施例中,数据上传管理端可以根据数据上传终端执行数据上传任务所占用的带宽,对数据上传终端的可用带宽进行限定,避免出现带宽浪费的情况。具体的限定过程可以参见下述实施例的描述。进而数据上传终端根据数据上传管理端分配的可用带宽,调整每个数据上传任务对应的并发参数。
S205、接收数据上传管理端分配的可用带宽。
S206、根据可用带宽,结合数据上传任务对应的任务优先级,调整数据上传任务的并发参数。
其中,并发参数用于确定执行数据上传任务时允许并发上传的文件数量。
在一种可选的实现方案中,根据可用带宽,结合数据上传任务对应的任务优先级,调整数据上传任务的并发参数,包括:
针对任一数据上传终端,若该数据上传终端执行的数据上传任务的任务优先级为高优先级,则将数据上传任务的并发参数设置为固定的初始并发数,其中,初始并发数为预先设定的固定值;若任务优先级为低优先级,且根据可用带宽确定数据上传终端的带宽未被数据上传管理端限制(也即分配的可用带宽等于该数据上传终端网卡上的可用带宽),则将数据上传任务的并发参数设置为固定的初始并发数;若任务优先级为低优先级,且根据可用带宽确定数据上传终端的带宽被数据上传管理端限制(也即分配的可用带宽小于该数据上传终端网卡上的可用带宽),则根据可用带宽a、数据上传终端当前实际占用的带宽b、每个数据上传任务的实际并发数m、正在执行的数据上传任务的数量n,确定目标并发数s;可选的,目标并发数将目标并发数和初始并发数中的最小值,作为数据上传任务的并发参数。按照上述调整并发参数,可以保证高优先级任务可以在带宽紧张时也能及时上传。
本公开方案中,数据上传终端可以根据分配的可用带宽,动态调整数据上传任务的并发参数,由此实现了对数据上传任务的有效管理。
图3是根据本公开实施例的另一种数据上传方法的流程示意图。如图3所示,该方法具体包括如下:
S301、获取待上传数据的关联信息,并将关联信息发送到数据上传管理端。
S302、查询数据上传管理端中是否存在待执行的数据上传任务。
其中,待执行的数据上传任务中包括用户通过访问关联信息从待上传数据中确定的目标数据,以及用户确定的任务优先级。
S303、若存在待执行的数据上传任务,则根据任务优先级执行数据上传任务,以对数据上传任务中指定的目标数据进行上传。
本公开实施例中,由于目标数据中包括多个文件,因此在上传目标数据中的每个文件时,数据上传终端首先检查云端存储是否已存在要上传的文件;如已存在,且文件大小与本地文件相同,则跳过该文件上传;否则将文件上传至云端存储。
S304、将数据上传任务的数据上传进度发送到数据上传管理端,使得数据上传管理端根据数据上传进度,调整数据上传任务的状态。
本公开方案中,可以实时的或周期性的将每个数据上传任务的数据上传进度发送到数据上传管理端,使得数据上传管理端根据数据上传进度,调整数据上传任务的状态;例如根据数据上传进度,确定数据未上传完毕,则将数据上传任务状态调整为上传中;如果根据数据上传进度,确定数据已上传完毕,则将数据上传任务状态调整为上传后处理,以便后续对处于上传后处理状态的任务所对应的数据进行数据处理和入库。需要说明的是,数据上传管理端除了根据数据上传进度调整数据上传任务的状态外,还可以在交互界面上可视化的显示各个数据上传任务对应的数据上传进度,使得用户可以基于交互界面实时了解数据上传的情况。
S305、在对数据上传任务中指定的目标数据进行上传时,若目标数据中任意目标文件上传失败,则保存上传失败的文件列表。
本公开实施例中,由于目标数据中包括多个待上传的文件,在并发上传目标数据包括的文件时,有的文件可能因为各种意外或故障,导致上传失败,此时需要把上传失败的文件记录下来,可选的,通过文件列表的方式记录上传失败的文件。
S306、在目标数据中其他文件上传完成后,根据文件列表,对上传失败的目标文件进行重新上传。
在目标数据中其他文件上传完成后,数据上传终端可以访问文件列表,对上传失败的目标文件进行重新上传,可以采用循环重试的方式进行上传。由此通过对上传失败的文件重新上传,由此可以保证数据上传的成功率。
需要说明的是,若存在重新上传失败的目标文件,也即存在至少一个文件经过多次重传后,依旧上传失败,此时可知该数据上传任务没有将所有数据上传完毕,也即该数据上传任务失败,此时数据上传终端则将数据上传任务失败的信息发送到数据上传管理端,使得数据上传管理端调整数据上传任务的状态,例如将该数据上传任务的状态由上传中调整为上传失败。针对上传失败的任务,数据上传管理端可以在交互界面上显示该数据上传任务失败的提醒消息,已提醒用户。
本公开实施例中,数据上传终端动过及时上传数据上传进度,使得用户可以清楚了解数据传输情况;而通过循环重试的方式,重新上传传输失败的文件,可以保证数据上传的成功率。
图4是根据本公开实施例的一种数据上传方法的流程示意图。本实施例可适用于将硬盘中存储数据自动上传云端的情况,典型的,适用于自动驾驶场景中,将硬盘中保存自动驾驶车辆数据上传到云端的情况。该方法可由一种数据上传装置来执行,该装置采用软件和/或硬件的方式实现,优选是配置于电子设备中,例如配置在数据上传管理端中,而数据上传管理端可以是计算机设备或服务器等。如图4所示,该方法具体包括如下:
S401、接收并保存数据上传终端发送的待上传数据的关联信息。
本公开实施例中,待上传数据是自动驾驶车辆运行过程中通过车载传感器(例如雷达、摄像头等)采集的信息数据(例如图像数据或点云数据等)和车辆状态数据;且待上传数据保存在固态硬盘设备、非易失性存储硬盘设备或网络存储器设备中。
可选的,若待上传数据存储在固态硬盘设备或非易失性存储硬盘设备中,则数据上传终端获取待上传数据的关联信息,包括:在检测到有固态硬盘设备或非易失性存储硬盘接入时,挂载并扫描固态硬盘设备或非易失性存储硬盘设备,以获取待上传数据的关联信息;其中,固态硬盘设备通过USB口接入数据上传终端;非易失性存储硬盘设备通过PCI-E口接入数据上传终端。
若待上传数据存储在网络存储器设备中,则数据上传终端获取待上传数据的关联信息,包括:周期性扫描处于指定网络地址段的网络存储器设备,以获取待上传数据的关联信息;具体的,在扫描到网络存储器设备时,通过NFS或SMB协议挂载该网络存储器设备,并扫描该网络存储器设备中的内容,以获取待上传数据的关联信息。需要说明的是,为了保证数据上传终端能够从网络存储器设备中获得关联信息,用户需要预先将网络存储器设备接入网络。另外,本公开方案支持网络存储器设备的数据自动上传,这是现有技术所未实现的。需要说明的是,每个数据上传终端可以同时接入多个固态硬盘设备、非易失性存储硬盘设备、网络存储器设备。
本公开实施例中,固态硬盘设备、非易失性存储硬盘设备或网络存储器设备中保存的待上传数据是按照不同数据批次保存的,也即固态硬盘设备、非易失性存储硬盘设备或网络存储器设备中的顶层文件夹可以是用不同数据批次号命名数据文件夹,每个数据文件夹下包括该批次数据的描述信息和具体的数据内容,而数据内容可以包括具体的文件或文件夹。如此,获得的待上传数据的关联信息可以包括每个数据批次的描述信息、每个数据批次下包括的文件或文件夹、以及每个批次数据所在的存储设备以及存储设备所接入的数据上传终端等。
在得到待上传数据的关联信息后,可通过数据传输协议,将关联信息发送到数据上传管理端,例如将关联信息通过加密传输方式发送到数据上传管理端,以保证数据传输的安全性。需要说明的是,之所以将关联信息发送到数据上传管理端,是为了保证用户可以远程查询固态硬盘设备、非易失性存储硬盘设备或网络存储器设备中存储的自动驾驶车辆数据的相关信息;也即通过数据上传管理端,保证用户可以在远端了解或管理硬盘中数据。
S402、在用户访问数据上传管理端中保存的关联信息时,响应于用户的确定的目标数据和任务优先级,生成待执行的数据上传任务。
本公开实施例中,数据上传管理端提供了交互界面,例如web界面,用户可通过交互界面访问数据上传管理端保存的待上传数据的关联信息,并根据关联信息从待上传数据中确定的目标数据,以及用户确定的任务优先级。其中,目标数据可以包括用户选中的需要上传的文件或文件夹,任务优先级可选的分为高优先级和低优先级,高优先级任务先执行,低优先级任务后执行,优先级可以用数字表示,例如,优先级为1表示高优先级,优先级为0表示低优先级。在用户确定目标数据和任务优先级后,生成待执行的数据上传任务,其中,生成的数据上传任务可以保存在数据上传管理端的数据库中,数据库中不仅保存数据上传任务的任务详情,还保存有基于数据上传任务的执行情况确定的任务状态,其中,任务状态可以是上传中、上传后处理、上传失败、上传成功等。
S403、响应于数据上传终端对待执行的数据上传任务的查询,将当前存在的待执行的数据上传任务发送给数据上传终端,使得数据上传终端根据数据上传任务开始上传数据。
本实施例中,数据上传终端可以采用预先设定的轮训机制,定期查询数据上传管理端中是否存在待执行的数据上传任务。而数据上传管理端响应于数据上传终端对待执行的数据上传任务的查询,将当前存在的待执行的数据上传任务发送给数据上传终端,使得数据上传终端根据数据上传任务开始上传数据。
本公开实施例中,用户只需访问数据上传管理端,选择需要上传的数据和优先级后,数据上传管理端和数据上传终端通过交互,实现数据的自动上传,避免用户到数据上传终端处通过手动方式上传,提高了数据上传效率。
图5是根据本公开实施例的另一种数据上传方法的流程示意图。如图5所示,该方法具体包括如下:
S501、接收并保存数据上传终端发送的待上传数据的关联信息。
S502、在用户访问数据上传管理端中保存的关联信息时,响应于用户的确定的目标数据和任务优先级,生成待执行的数据上传任务。
S503、响应于数据上传终端对待执行的数据上传任务的查询,将当前存在的待执行的数据上传任务发送给数据上传终端,使得数据上传终端根据数据上传任务开始上传数据。
S504、获取数据上传终端执行数据上传任务所占用的带宽。
S505、根据每个数据上传终端执行数据上传任务所占用的带宽,对各数据上传终端的可用带宽进行动态调整。
在一种可选的实现方案中,根据每个数据上传终端执行数据上传任务所占用的带宽,对各数据上传终端的可用带宽进行动态调整,包括:
针对任一数据上传终端,若数据上传终端执行的数据上传任务存在高优先级任务,则根据数据中心的总带宽B和执行高优先级任务的数据上传终端的数量M,确定第一带宽B1;例如,将数据上传终端的网卡带宽和第一带宽B1中的最小值,作为数据上传终端的可用带宽。如此可以避免出现分配的可用带宽超过网卡允许的带宽极限,还可以避免带宽资源浪费。
在另一种可选的实现方案中,根据每个数据上传终端执行数据上传任务所占用的带宽,对各数据上传终端的可用带宽进行动态调整,包括:
针对任一数据上传终端,若数据上传终端执行的数据上传任务均为低优先级任务,则根据数据中心的总带宽B、数据中心中当前执行高优先级任务的数据上传终端的数量M、执行高优先级任务的数据上传终端的实际占用带宽Bs、执行高优先级任务的数据上传终端的网卡带宽Bk,以及执行低优先级任务的数据上传终端的数量N,确定第二带宽B2;可选的,针对任一执行高优先级数据上传任务的数据上传终端,根据B、M、Bs和Bk确定最优可用带宽By,其中,By等于1.5Bs、Bk中的最小值;根据By确定各个运行高优先级任务的数据上传终端总带宽Bm;进而确定/>将数据上传终端的网卡带宽和第二带宽中的最小值,作为数据上传终端的可用带宽。如此可以为运行低优先级数据上传任务的数据上传终端分配最合理的带宽,避免带宽浪费。
在另一种可选的实现方案中,针对任一数据上传终端,若数据上传终端未执行数据上传任务,则根据数据中心的总带宽B、数据中心中当前执行高优先级任务的数据上传终端的数量M、执行高优先级任务的数据上传终端的实际占用带宽Bs、执行高优先级任务的数据上传终端的网卡带宽Bk、执行低优先级任务的数据上传终端的实际占用带宽Bd、以及未执行数据上传任务的数据上传终端的数量P,确定第三带宽B3;可选的,根据B、M、Bs和Bk确定最优可用带宽By,其中,By等于1.5Bs、Bk中的最小值;根据By确定各个运行高优先级任务的数据上传终端总带宽Bm;进而确定/>将数据上传终端的网卡带宽和第三带宽中的最小值,作为数据上传终端的可用带宽。通过给未执行数据上传任务的数据上传终端分配带宽,可以保证后续分给该数据上传终端上传任务时,能够有带宽可用数据传输。
本公开实施例中,为数据上传终端动态分配可用带宽,可以确保带宽资源的合理利用,而且还能保证运行高优先级任务的数据上传终端有足够带宽以保证高优先级数据上传任务能够在带宽紧张时正常上传数据。
图6是根据本公开实施例的另一种数据上传方法的流程示意图。如图6所示,该方法具体包括如下:
S601、接收并保存数据上传终端发送的待上传数据的关联信息。
S602、在用户访问数据上传管理端中保存的关联信息时,响应于用户的确定的目标数据和任务优先级,生成待执行的数据上传任务。
S603、响应于数据上传终端对待执行的数据上传任务的查询,将当前存在的待执行的数据上传任务发送给数据上传终端,使得数据上传终端根据数据上传任务开始上传数据
S604、接收数据上传终端发送的数据上传任务的数据上传进度,并根据数据上传进度,调整数据上传任务的状态。
可选的,若根据数据上传进度,确定数据未上传完毕,则将数据上传任务的状态标记为上传中;若根据数据上传进度,确定数据上传完毕,则将数据上传任务的状态标记为上传后处理。其中,数据上传任务被标记为上传后处理,表示该数据上传任务对应的数据可以进行后续的数据处理和入库操作,也即标记上传后处理可以作为触发数据处理和入库的条件。
需要说明的是,数据上传管理端出来根据数据上传进度调整数据上传任务的状态外,还可以再交互界面上可视化的显示各个数据上传任务对应的数据上传进度,使得用户可以基于交互界面实时了解数据上传的情况。
本公开实施例中,数据上传终端动过及时上传数据上传进度,使得用户可以清楚了解数据传输情况;而且将任务状态标记为上传后处理,可以及时触发对应任务数据的处理和入库,不需要人工去触发数据处理和入库。
图7是根据本公开实施例的另一种数据上传方法的流程示意图。如图7所示,该方法具体包括如下:
S701、接收并保存数据上传终端发送的待上传数据的关联信息。
S702、在用户访问数据上传管理端中保存的关联信息时,响应于用户的确定的目标数据和任务优先级,生成待执行的数据上传任务。
S703、响应于数据上传终端对待执行的数据上传任务的查询,将当前存在的待执行的数据上传任务发送给数据上传终端,使得数据上传终端根据数据上传任务开始上传数据。
S704、接收数据上传终端发送的数据上传任务的数据上传进度,并根据数据上传进度,调整数据上传任务的状态。
可选的,若根据数据上传进度,确定数据未上传完毕,则将数据上传任务的状态标记为上传中;若根据数据上传进度,确定数据上传完毕,则将数据上传任务的状态标记为上传后处理。其中,数据上传任务被标记为上传后处理,表示该数据上传任务对应的数据可以进行后续的数据处理和入库操作,也即标记上传后处理可以作为触发数据处理和入库的条件。
S705、在将所述数据上传任务的状态标记为上传后处理之后,向工作流引擎发出任务触发指令,使得所述工作流引擎对状态为上传后处理的数据上传任务所对应的数据进行数据处理和入库。
S706、针对状态标记为上传后处理的数据上传任务,定期从工作流引擎中确定数据处理和入库进度。
S707、若完成数据处理和入库,则将数据上传任务的状态标记为上传成功。
本实施例中,工作流引擎在接收到任务触发指令后,可以通过分布式的方式对上传到云端的数据进行数据处理、入库;如此避免了通过人工手动触发的数据处理和入库的操作,保证了数据处理和入库的及时性,进而保证了数据上传、处理、入库的效率。数据上传管理端定期轮询处于任务后处理状态下的任务,并从工作流引擎查询数据处理工作流的运行状态。如运行成功,则将任务状态置为上传成功,失败则将任务状态置为上传失败。
本公开实施例中,通过工作流引擎实现了及时将云端存储的数据进行数据处理和入库。
图8是根据本公开实施例的一种数据上传方法的逻辑示意图。参见图8,本公开实现数据上传方法包括四个部分,分别是数据上传终端、数据上传管理端、云端存储和工作流引擎。其中,数据上传终端安装到数据中心内,可以有一个至多个,每个数据上传终端可以接入多个不同类型的硬盘设备。数据上传管理端对数据上传终端提供所需接口,并允许用户通过web界面进行操作。上传管理端使用关系型数据库(如MySQL)存储上传终端、上传任务、硬盘相关的管理信息。云端存储负责存储数据上传终端上传的文件,可以是(但不限于)公有云或私有云的对象存储等。工作流引擎负责通过分布式的方式对上传的数据进行数据处理、入库。基于上述四部分实现的数据上传方法的具体流程可以参见上述实施例,在此不再赘述。
图9是根据本公开实施例的数据上传装置的结构示意图。该装置配置于数据中心中的数据上传终端,数据中心包括多个数据上传终端。如图9所示,该装置900具体包括:
信息获取模块901,用于获取待上传数据的关联信息,并将关联信息发送到数据上传管理端;
查询模块902,用于查询数据上传管理端中是否存在待执行的数据上传任务;其中,待执行的数据上传任务中包括用户通过访问关联信息从待上传数据中确定的目标数据,以及用户确定的任务优先级;
数据上传模块903,用于若存在待执行的数据上传任务,则根据任务优先级执行数据上传任务,以对数据上传任务中指定的目标数据进行上传。
在一种可选的实现方式中,还包括:
带宽信息上传模块,用于将执行数据上传任务所占用的带宽发送到数据上传管理端,使得数据上传管理端对数据中心内的各数据上传终端的可用带宽进行动态调整。
在一种可选的实现方式中,还包括:
可用带宽接收模块,用于接收数据上传管理端分配的可用带宽;
并发参数调整模块,用于根据可用带宽,结合数据上传任务对应的任务优先级,调整数据上传任务的并发参数;其中,并发参数用于确定执行数据上传任务时允许并发上传的文件数量。
在一种可选的实现方式中,并发参数调整模块还用于:
若任务优先级为高优先级,则将数据上传任务的并发参数设置为固定的初始并发数;
若任务优先级为低优先级,且根据可用带宽确定数据上传终端的带宽未被数据上传管理端限制,则将数据上传任务的并发参数设置为固定的初始并发数;
若任务优先级为低优先级,且根据可用带宽确定数据上传终端的带宽被数据上传管理端限制,则根据可用带宽、数据上传终端当前实际占用的带宽、每个数据上传任务的实际并发数、正在执行的数据上传任务的数量,确定目标并发数;将目标并发数和初始并发数中的最小值,作为数据上传任务的并发参数。
在一种可选的实现方式中,还包括:
上传进度发送模块,用于将数据上传任务的数据上传进度发送到数据上传管理端,使得数据上传管理端根据数据上传进度,调整数据上传任务的状态。
在一种可选的实现方式中,还包括:
上传检测模块,用于在对数据上传任务中指定的目标数据进行上传时,若目标数据中任意目标文件上传失败,则保存上传失败的文件列表;
重新上传模块,用于在目标数据中其他文件上传完成后,根据文件列表,对上传失败的目标文件进行重新上传。
在一种可选的实现方式中,还包括:
任务失败信息上传模块,用于若存在重新上传失败的目标文件,则将数据上传任务失败的信息发送到数据上传管理端,使得数据上传管理端调整数据上传任务的状态。
在一种可选的实现方式中,待上传数据是自动驾驶车辆运行过程中通过车载传感器采集的信息数据和车辆状态数据;且待上传数据保存在固态硬盘设备、非易失性存储硬盘或网络存储器设备中。
在一种可选的实现方式中,信息获取模块还用于:
在检测到有固态硬盘设备或非易失性存储硬盘接入时,挂载并扫描固态硬盘设备或非易失性存储硬盘,以获取待上传数据的关联信息;
周期性扫描处于指定网络地址段的网络存储器设备,以获取待上传数据的关联信息。
图10是根据本公开实施例的数据上传装置的结构示意图。该装置配置于数据上传管理端。如图10所示,该装置1000具体包括:
信息接收模块1001,接收并保存数据上传终端发送的待上传数据的关联信息;
任务生成模块1002,用于在用户访问数据上传管理端中保存的关联信息时,响应于用户的确定的目标数据和任务优先级,生成待执行的数据上传任务;
任务下发模块1003,用于响应于数据上传终端对待执行的数据上传任务的查询,将当前存在的待执行的数据上传任务发送给数据上传终端,使得数据上传终端根据数据上传任务开始上传数据。
在一种可选的实现方式中,还包括:
带宽信息获取模块,用于获取数据上传终端执行数据上传任务所占用的带宽;
带宽调整模块,用于根据每个数据上传终端执行数据上传任务所占用的带宽,对各数据上传终端的可用带宽进行动态调整。
在一种可选的实现方式中,带宽调整模块还用于:
针对任一数据上传终端,若数据上传终端执行的数据上传任务为高优先级任务,则根据数据中心的总带宽和执行高优先级任务的数据上传终端的数量,确定第一带宽;
将数据上传终端的网卡带宽和第一带宽中的最小值,作为数据上传终端的可用带宽。
在一种可选的实现方式中,带宽调整模块还用于:
针对任一数据上传终端,若数据上传终端执行的数据上传任务为低优先级任务,则根据数据中心的总带宽、数据中心中当前执行高优先级任务的数据上传终端的数量、执行高优先级任务的数据上传终端的实际占用带宽、执行高优先级任务的数据上传终端的网卡带宽,以及执行低优先级任务的数据上传终端的数量,确定第二带宽;
将数据上传终端的网卡带宽和第二带宽中的最小值,作为数据上传终端的可用带宽。
在一种可选的实现方式中,带宽调整模块还用于:
针对任一数据上传终端,若数据上传终端未执行数据上传任务,则根据数据中心的总带宽、数据中心中当前执行高优先级任务的数据上传终端的数量、执行高优先级任务的数据上传终端的实际占用带宽、执行高优先级任务的数据上传终端的网卡带宽、执行低优先级任务的数据上传终端的实际占用带宽、以及未执行数据上传任务的数据上传终端的数量,确定第三带宽;
将数据上传终端的网卡带宽和第三带宽中的最小值,作为数据上传终端的可用带宽。
在一种可选的实现方式中,还包括:
第一任务状态调整模块,用于接收数据上传终端发送的数据上传任务的数据上传进度,并根据数据上传进度,调整数据上传任务的状态。
在一种可选的实现方式中,第一任务状态调整模块还用于:
若根据数据上传进度,确定数据未上传完毕,则将数据上传任务的状态标记为上传中;
若根据数据上传进度,确定数据上传完毕,则将数据上传任务的状态标记为上传后处理。
在一种可选的实现方式中,还包括:
工作流引擎触发模块,用于在将数据上传任务的状态标记为上传后处理之后,向工作流引擎发出任务触发指令,使得工作流引擎对状态为上传后处理的数据上传任务所对应的数据进行数据处理和入库。
在一种可选的实现方式中,还包括:
进度查询模块,用于针对状态标记为上传后处理的数据上传任务,定期从工作流引擎中确定数据处理和入库进度;
第二任务状态调整模块,用于若完成数据处理和入库,则将数据上传任务的状态标记为上传成功。
上述产品可执行本公开任意实施例所提供的方法,具备执行方法相应的功能模块和有益效果。
本公开的技术方案中,所涉及的用户个人信息的收集、存储、使用、加工、传输、提供和公开等处理,均符合相关法律法规的规定,且不违背公序良俗。
根据本公开的实施例,本公开还提供了一种电子设备、一种可读存储介质和一种计算机程序产品。
图11示出了可以用来实施本公开的实施例的示例电子设备1100的示意性框图。电子设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本公开的实现。
如图11所示,设备1100包括计算单元1101,其可以根据存储在只读存储器(ROM)1102中的计算机程序或者从存储单元1108加载到随机访问存储器(RAM)1103中的计算机程序,来执行各种适当的动作和处理。在RAM 1103中,还可存储设备1100操作所需的各种程序和数据。计算单元1101、ROM 1102以及RAM 1103通过总线1104彼此相连。输入/输出(I/O)接口1105也连接至总线1104。
设备1100中的多个部件连接至I/O接口1105,包括:输入单元1106,例如键盘、鼠标等;输出单元1107,例如各种类型的显示器、扬声器等;存储单元1108,例如磁盘、光盘等;以及通信单元1109,例如网卡、调制解调器、无线通信收发机等。通信单元1109允许设备1100通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据。
计算单元1101可以是各种具有处理和计算能力的通用和/或专用处理组件。计算单元1101的一些示例包括但不限于中央处理单元(CPU)、图形处理单元(GPU)、各种专用的人工智能(AI)计算芯片、各种执行机器学习模型算法的计算单元、数字信号处理器(DSP)、以及任何适当的处理器、控制器、微控制器等。计算单元1101执行上文所描述的各个方法和处理,例如数据上传方法。例如,在一些实施例中,数据上传方法可被实现为计算机软件程序,其被有形地包含于机器可读介质,例如存储单元1108。在一些实施例中,计算机程序的部分或者全部可以经由ROM 1102和/或通信单元1109而被载入和/或安装到设备1100上。当计算机程序加载到RAM 1103并由计算单元1101执行时,可以执行上文描述的数据上传方法的一个或多个步骤。备选地,在其他实施例中,计算单元1101可以通过其他任何适当的方式(例如,借助于固件)而被配置为执行数据上传方法。
本文中以上描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、现场可编程门阵列(FPGA)、专用集成电路(ASIC)、专用标准产品(ASSP)、芯片上系统的系统(SOC)、复杂可编程逻辑设备(CPLD)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储系统、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储系统、该至少一个输入装置、和该至少一个输出装置。
用于实施本公开的方法的程序代码可以采用一个或多个编程语言的任何组合来编写。这些程序代码可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器或控制器,使得程序代码当由处理器或控制器执行时使流程图和/或框图中所规定的功能/操作被实施。程序代码可以完全在机器上执行、部分地在机器上执行,作为独立软件包部分地在机器上执行且部分地在远程机器上执行或完全在远程机器或服务器上执行。
在本公开的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或快闪存储器)、光纤、便捷式紧凑盘只读存储器(CD-ROM)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
为了提供与用户的交互,可以在计算机上实施此处描述的系统和技术,该计算机具有:用于向用户显示信息的显示装置(例如,CRT(阴极射线管)或者LCD(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给计算机。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。
可以将此处描述的系统和技术实施在包括后台部件的计算系统(例如,作为数据服务器)、或者包括中间件部件的计算系统(例如,应用服务器)、或者包括前端部件的计算系统(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:局域网(LAN)、广域网(WAN)、区块链网络和互联网。
计算机系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。服务器可以是云服务器,又称为云计算服务器或云主机,是云计算服务体系中的一项主机产品,以解决了传统物理主机与VPS服务中,存在的管理难度大,业务扩展性弱的缺陷。服务器也可以为分布式系统的服务器,或者是结合了区块链的服务器。
人工智能是研究使计算机来模拟人的某些思维过程和智能行为(如学习、推理、思考、规划等)的学科,既有硬件层面的技术也有软件层面的技术。人工智能硬件技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理等技术;人工智能软件技术主要包括计算机视觉技术、语音识别技术、自然语言处理技术及机器学习/深度学习技术、大数据处理技术、知识图谱技术等几大方向。
云计算(cloud computing),指的是通过网络接入弹性可扩展的共享物理或虚拟资源池,资源可以包括服务器、操作系统、网络、软件、应用和存储设备等,并可以按需、自服务的方式对资源进行部署和管理的技术体系。通过云计算技术,可以为人工智能、区块链等技术应用、模型训练提供高效强大的数据处理能力。
应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本公开中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本公开提供的技术方案所期望的结果,本文在此不进行限制。
上述具体实施方式,并不构成对本公开保护范围的限制。本领域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本公开的精神和原则之内所作的修改、等同替换和改进等,均应包含在本公开保护范围之内。

Claims (39)

1.一种数据上传方法,应用于数据中心中的数据上传终端,所述数据中心包括多个数据上传终端,所述方法包括:
获取待上传数据的关联信息,并将所述关联信息发送到数据上传管理端;
查询所述数据上传管理端中是否存在待执行的数据上传任务;其中,待执行的数据上传任务中包括用户通过访问所述关联信息从所述待上传数据中确定的目标数据,以及用户确定的任务优先级;
若存在待执行的数据上传任务,则根据任务优先级执行所述数据上传任务,以对所述数据上传任务中指定的目标数据进行上传。
2.根据权利要求1所述的方法,还包括:
将执行数据上传任务所占用的带宽发送到数据上传管理端,使得所述数据上传管理端对所述数据中心内的各数据上传终端的可用带宽进行动态调整。
3.根据权利要求2所述的方法,还包括:
接收所述数据上传管理端分配的可用带宽;
根据所述可用带宽,结合所述数据上传任务对应的任务优先级,调整所述数据上传任务的并发参数;其中,所述并发参数用于确定执行所述数据上传任务时允许并发上传的文件数量。
4.根据权利要求3所述的方法,其中,根据所述可用带宽,结合所述数据上传任务对应的任务优先级,调整所述数据上传任务的并发参数,包括:
若所述任务优先级为高优先级,则将所述数据上传任务的并发参数设置为固定的初始并发数;
若所述任务优先级为低优先级,且根据所述可用带宽确定所述数据上传终端的带宽未被所述数据上传管理端限制,则将所述数据上传任务的并发参数设置为固定的初始并发数;
若所述任务优先级为低优先级,且根据所述可用带宽确定所述数据上传终端的带宽被所述数据上传管理端限制,则根据所述可用带宽、数据上传终端当前实际占用的带宽、每个数据上传任务的实际并发数、正在执行的数据上传任务的数量,确定目标并发数;将所述目标并发数和所述初始并发数中的最小值,作为所述数据上传任务的并发参数。
5.根据权利要求1所述的方法,还包括:
将所述数据上传任务的数据上传进度发送到所述数据上传管理端,使得所述数据上传管理端根据数据上传进度,调整所述数据上传任务的状态。
6.根据权利要求1所述的方法,还包括:
在对所述数据上传任务中指定的目标数据进行上传时,若所述目标数据中任意目标文件上传失败,则保存上传失败的文件列表;
在所述目标数据中其他文件上传完成后,根据所述文件列表,对上传失败的目标文件进行重新上传。
7.根据权利要求6所述的方法,还包括:
若存在重新上传失败的目标文件,则将所述数据上传任务失败的信息发送到数据上传管理端,使得所述数据上传管理端调整所述数据上传任务的状态。
8.根据权利要求1-7中任一项所述的方法,其中,所述待上传数据是自动驾驶车辆运行过程中通过车载传感器采集的信息数据和车辆状态数据;且所述待上传数据保存在固态硬盘设备、非易失性存储硬盘或网络存储器设备中。
9.根据权利要求8所述的方法,其中,获取待上传数据的关联信息,包括:
在检测到有固态硬盘设备或非易失性存储硬盘接入时,挂载并扫描固态硬盘设备或非易失性存储硬盘,以获取待上传数据的关联信息;
周期性扫描处于指定网络地址段的网络存储器设备,以获取待上传数据的关联信息。
10.一种数据上传方法,应用于数据上传管理端,所述方法包括:
接收并保存数据上传终端发送的待上传数据的关联信息;
在用户访问所述数据上传管理端中保存的所述关联信息时,响应于所述用户的确定的目标数据和任务优先级,生成待执行的数据上传任务;
响应于所述数据上传终端对待执行的数据上传任务的查询,将当前存在的待执行的数据上传任务发送给所述数据上传终端,使得所述数据上传终端根据所述数据上传任务开始上传数据。
11.根据权利要求10所述的方法,还包括:
获取所述数据上传终端执行数据上传任务所占用的带宽;
根据每个数据上传终端执行数据上传任务所占用的带宽,对各数据上传终端的可用带宽进行动态调整。
12.根据权利要求11所述的方法,其中,根据每个数据上传终端执行数据上传任务所占用的带宽,对各数据上传终端的可用带宽进行动态调整,包括:
针对任一数据上传终端,若所述数据上传终端执行的数据上传任务为高优先级任务,则根据数据中心的总带宽和执行高优先级任务的数据上传终端的数量,确定第一带宽;
将所述数据上传终端的网卡带宽和第一带宽中的最小值,作为所述数据上传终端的可用带宽。
13.根据权利要求11所述的方法,其中,根据每个数据上传终端执行数据上传任务所占用的带宽,对各数据上传终端的可用带宽进行动态调整,包括:
针对任一数据上传终端,若所述数据上传终端执行的数据上传任务为低优先级任务,则根据数据中心的总带宽、数据中心中当前执行高优先级任务的数据上传终端的数量、执行高优先级任务的数据上传终端的实际占用带宽、执行高优先级任务的数据上传终端的网卡带宽,以及执行低优先级任务的数据上传终端的数量,确定第二带宽;
将所述数据上传终端的网卡带宽和第二带宽中的最小值,作为所述数据上传终端的可用带宽。
14.根据权利要求11所述的方法,还包括:
针对任一数据上传终端,若所述数据上传终端未执行数据上传任务,则根据数据中心的总带宽、数据中心中当前执行高优先级任务的数据上传终端的数量、执行高优先级任务的数据上传终端的实际占用带宽、执行高优先级任务的数据上传终端的网卡带宽、执行低优先级任务的数据上传终端的实际占用带宽、以及未执行数据上传任务的数据上传终端的数量,确定第三带宽;
将所述数据上传终端的网卡带宽和第三带宽中的最小值,作为所述数据上传终端的可用带宽。
15.根据权利要求10所述的方法,还包括:
接收所述数据上传终端发送的所述数据上传任务的数据上传进度,并根据所述数据上传进度,调整所述数据上传任务的状态。
16.根据权利要求15所述的方法,其中,根据所述数据上传进度,调整所述数据上传任务的状态,包括:
若根据所述数据上传进度,确定数据未上传完毕,则将所述数据上传任务的状态标记为上传中;
若根据所述数据上传进度,确定数据上传完毕,则将所述数据上传任务的状态标记为上传后处理。
17.根据权利要求16所述的方法,还包括:
在将所述数据上传任务的状态标记为上传后处理之后,向工作流引擎发出任务触发指令,使得所述工作流引擎对状态为上传后处理的数据上传任务所对应的数据进行数据处理和入库。
18.根据权利要求17所述的方法,还包括:
针对状态标记为上传后处理的数据上传任务,定期从所述工作流引擎中确定数据处理和入库进度;
若完成数据处理和入库,则将所述数据上传任务的状态标记为上传成功。
19.一种数据上传装置,配置于数据中心中的数据上传终端,所述数据中心包括多个数据上传终端,所述装置包括:
信息获取模块,用于获取待上传数据的关联信息,并将所述关联信息发送到数据上传管理端;
查询模块,用于查询所述数据上传管理端中是否存在待执行的数据上传任务;其中,待执行的数据上传任务中包括用户通过访问所述关联信息从所述待上传数据中确定的目标数据,以及用户确定的任务优先级;
数据上传模块,用于若存在待执行的数据上传任务,则根据任务优先级执行所述数据上传任务,以对所述数据上传任务中指定的目标数据进行上传。
20.根据权利要求19所述的装置,还包括:
带宽信息上传模块,用于将执行数据上传任务所占用的带宽发送到数据上传管理端,使得所述数据上传管理端对所述数据中心内的各数据上传终端的可用带宽进行动态调整。
21.根据权利要求20所述的装置,还包括:
可用带宽接收模块,用于接收所述数据上传管理端分配的可用带宽;
并发参数调整模块,用于根据所述可用带宽,结合所述数据上传任务对应的任务优先级,调整所述数据上传任务的并发参数;其中,所述并发参数用于确定执行所述数据上传任务时允许并发上传的文件数量。
22.根据权利要求21所述的装置,其中,所述并发参数调整模块还用于:
若所述任务优先级为高优先级,则将所述数据上传任务的并发参数设置为固定的初始并发数;
若所述任务优先级为低优先级,且根据所述可用带宽确定所述数据上传终端的带宽未被所述数据上传管理端限制,则将所述数据上传任务的并发参数设置为固定的初始并发数;
若所述任务优先级为低优先级,且根据所述可用带宽确定所述数据上传终端的带宽被所述数据上传管理端限制,则根据所述可用带宽、数据上传终端当前实际占用的带宽、每个数据上传任务的实际并发数、正在执行的数据上传任务的数量,确定目标并发数;将所述目标并发数和所述初始并发数中的最小值,作为所述数据上传任务的并发参数。
23.根据权利要求19所述的装置,还包括:
上传进度发送模块,用于将所述数据上传任务的数据上传进度发送到所述数据上传管理端,使得所述数据上传管理端根据数据上传进度,调整所述数据上传任务的状态。
24.根据权利要求19所述的装置,还包括:
上传检测模块,用于在对所述数据上传任务中指定的目标数据进行上传时,若所述目标数据中任意目标文件上传失败,则保存上传失败的文件列表;
重新上传模块,用于在所述目标数据中其他文件上传完成后,根据所述文件列表,对上传失败的目标文件进行重新上传。
25.根据权利要求24所述的装置,还包括:
任务失败信息上传模块,用于若存在重新上传失败的目标文件,则将所述数据上传任务失败的信息发送到数据上传管理端,使得所述数据上传管理端调整所述数据上传任务的状态。
26.根据权利要求19-25中任一项所述的装置,其中,所述待上传数据是自动驾驶车辆运行过程中通过车载传感器采集的信息数据和车辆状态数据;且所述待上传数据保存在固态硬盘设备、非易失性存储硬盘或网络存储器设备中。
27.根据权利要求26所述的装置,其中,所述信息获取模块还用于:
在检测到有固态硬盘设备或非易失性存储硬盘接入时,挂载并扫描固态硬盘设备或非易失性存储硬盘,以获取待上传数据的关联信息;
周期性扫描处于指定网络地址段的网络存储器设备,以获取待上传数据的关联信息。
28.一种数据上传装置,配置于数据上传管理端,所述装置包括:
信息接收模块,接收并保存数据上传终端发送的待上传数据的关联信息;
任务生成模块,用于在用户访问所述数据上传管理端中保存的所述关联信息时,响应于所述用户的确定的目标数据和任务优先级,生成待执行的数据上传任务;
任务下发模块,用于响应于所述数据上传终端对待执行的数据上传任务的查询,将当前存在的待执行的数据上传任务发送给所述数据上传终端,使得所述数据上传终端根据所述数据上传任务开始上传数据。
29.根据权利要求28所述的装置,还包括:
带宽信息获取模块,用于获取所述数据上传终端执行数据上传任务所占用的带宽;
带宽调整模块,用于根据每个数据上传终端执行数据上传任务所占用的带宽,对各数据上传终端的可用带宽进行动态调整。
30.根据权利要求29所述的装置,其中,所述带宽调整模块还用于:
针对任一数据上传终端,若所述数据上传终端执行的数据上传任务为高优先级任务,则根据数据中心的总带宽和执行高优先级任务的数据上传终端的数量,确定第一带宽;
将所述数据上传终端的网卡带宽和第一带宽中的最小值,作为所述数据上传终端的可用带宽。
31.根据权利要求29所述的装置,其中,所述带宽调整模块还用于:
针对任一数据上传终端,若所述数据上传终端执行的数据上传任务为低优先级任务,则根据数据中心的总带宽、数据中心中当前执行高优先级任务的数据上传终端的数量、执行高优先级任务的数据上传终端的实际占用带宽、执行高优先级任务的数据上传终端的网卡带宽,以及执行低优先级任务的数据上传终端的数量,确定第二带宽;
将所述数据上传终端的网卡带宽和第二带宽中的最小值,作为所述数据上传终端的可用带宽。
32.根据权利要求29所述的装置,其中,所述带宽调整模块还用于:
针对任一数据上传终端,若所述数据上传终端未执行数据上传任务,则根据数据中心的总带宽、数据中心中当前执行高优先级任务的数据上传终端的数量、执行高优先级任务的数据上传终端的实际占用带宽、执行高优先级任务的数据上传终端的网卡带宽、执行低优先级任务的数据上传终端的实际占用带宽、以及未执行数据上传任务的数据上传终端的数量,确定第三带宽;
将所述数据上传终端的网卡带宽和第三带宽中的最小值,作为所述数据上传终端的可用带宽。
33.根据权利要求28所述的装置,还包括:
第一任务状态调整模块,用于接收所述数据上传终端发送的所述数据上传任务的数据上传进度,并根据所述数据上传进度,调整所述数据上传任务的状态。
34.根据权利要求33所述的装置,其中,所述第一任务状态调整模块还用于:
若根据所述数据上传进度,确定数据未上传完毕,则将所述数据上传任务的状态标记为上传中;
若根据所述数据上传进度,确定数据上传完毕,则将所述数据上传任务的状态标记为上传后处理。
35.根据权利要求34所述的装置,还包括:
工作流引擎触发模块,用于在将所述数据上传任务的状态标记为上传后处理之后,向工作流引擎发送触发指令,使得所述工作流引擎对状态为上传后处理的数据上传任务所对应的数据进行数据处理和入库。
36.根据权利要求35所述的装置,还包括:
进度查询模块,用于针对状态标记为上传后处理的数据上传任务,定期从所述工作流引擎中确定数据处理和入库进度;
第二任务状态调整模块,用于若完成数据处理和入库,则将所述数据上传任务的状态标记为上传成功。
37.一种电子设备,包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1-9或10-18中任一项所述的数据上传方法。
38.一种存储有计算机指令的非瞬时计算机可读存储介质,其中,所述计算机指令用于使计算机执行根据权利要求1-9或10-18中任一项所述的数据上传方法。
39.一种计算机程序产品,包括计算机程序,所述计算机程序在被处理器执行时实现根据权利要求1-9或10-18中任一项所述的数据上传方法。
CN202310761887.5A 2023-06-26 2023-06-26 一种数据上传方法、装置、电子设备和存储介质 Pending CN116708412A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310761887.5A CN116708412A (zh) 2023-06-26 2023-06-26 一种数据上传方法、装置、电子设备和存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310761887.5A CN116708412A (zh) 2023-06-26 2023-06-26 一种数据上传方法、装置、电子设备和存储介质

Publications (1)

Publication Number Publication Date
CN116708412A true CN116708412A (zh) 2023-09-05

Family

ID=87844922

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310761887.5A Pending CN116708412A (zh) 2023-06-26 2023-06-26 一种数据上传方法、装置、电子设备和存储介质

Country Status (1)

Country Link
CN (1) CN116708412A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117873691A (zh) * 2024-03-13 2024-04-12 腾讯科技(深圳)有限公司 数据处理方法、装置、设备及可读存储介质

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117873691A (zh) * 2024-03-13 2024-04-12 腾讯科技(深圳)有限公司 数据处理方法、装置、设备及可读存储介质

Similar Documents

Publication Publication Date Title
AU2019321145B2 (en) Method, device, and equipment for obstacle or ground recognition and flight control, and storage medium
EP3944213B1 (en) Method, device, storage medium and computer program for controlling traffic
US20150286897A1 (en) Automated techniques for photo upload and selection
EP3255553A1 (en) Transmission control method and device for direct memory access
WO2020000700A1 (zh) 一种无人机系统中的模块升级方法和无人机系统
CN116708412A (zh) 一种数据上传方法、装置、电子设备和存储介质
CN112650300B (zh) 一种无人机避障方法和装置
US11681466B2 (en) Proactive storage operation management
EP4024362A2 (en) Method and apparatus of failure monitoring for signal lights, electronic device and storage medium
CN105306882B (zh) 找出处理单元连接的传感器单元使用的设置的方法和装置
US20190329408A1 (en) Robot, method for controlling motion of a robot and non-transitory readable medium
US20190196880A1 (en) Method for sharing processing modules between pipelines
CN113391627A (zh) 无人车驾驶模式切换方法、设备、车辆及云端服务器
CN115866229B (zh) 多视角图像的视角转换方法、装置、设备和介质
CN109035870B (zh) 航迹保持性能的一致性监测方法和装置
CN115861755A (zh) 特征融合方法、装置、电子设备及自动驾驶车辆
CN113641688B (zh) 节点更新方法、相关装置及计算机程序产品
CN113554062B (zh) 多分类模型的训练方法、设备和存储介质
CN112702660B (zh) 多媒体数据的传输方法、装置、自动驾驶车辆及云服务器
KR102402145B1 (ko) M2m 시스템에서의 이벤트 기반 메시지 재전달 방법
CN113780101A (zh) 避障模型的训练方法、装置、电子设备及存储介质
US11915047B2 (en) Managing storage device compute operations
CN113791564B (zh) 远程控制的方法、装置、设备、云端服务器及控制系统
EP4160549A1 (en) Image-based vehicle loss assessment method, apparatus and system
CN114202947B (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