CN110519317B - 一种数据传输方法以及设备 - Google Patents
一种数据传输方法以及设备 Download PDFInfo
- Publication number
- CN110519317B CN110519317B CN201810492197.3A CN201810492197A CN110519317B CN 110519317 B CN110519317 B CN 110519317B CN 201810492197 A CN201810492197 A CN 201810492197A CN 110519317 B CN110519317 B CN 110519317B
- Authority
- CN
- China
- Prior art keywords
- data
- workflow
- workflow data
- transmission
- processing
- 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.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/51—Discovery or management thereof, e.g. service location protocol [SLP] or web services
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本申请实现方式公开了一种数据传输方法以及设备,用于确定非实时数据的传输策略。本申请实现方式方法包括:服务平台确定要执行的非实时的N个工作流任务,其中,N为正整数;所述服务平台预测所述N个工作流任务所需处理的N个工作流数据的数据量;所述服务平台根据预测的所述N个工作流数据的数据量确定目标传输策略;所述服务平台向用户侧服务器发送所述目标传输策略,所述目标传输策略用于指示所述用户侧服务器根据所述目标传输策略传输所述N个工作流数据。
Description
技术领域
本申请涉及通信领域,尤其涉及一种数据传输方法以及设备。
背景技术
随着互联网技术的发展和应用软件的成熟,越来越多厂商选择基于软件即服务(Software-as-a-Service,SaaS)平台提供的数据分析能力,这样厂商就可以把更多的精力聚焦于自己专业领域的发展。
在SaaS平台进行数据分析前,厂商需要将数据从服务器通过公网传输到SaaS平台。当下,厂商一般会对业务设置优先级,根据不同业务的不同优先级以业务为单位进行传输。
常见的SaaS平台提供的数据分析业务包括实时数据处理和非实时数据处理,其中,非实时数据的处理往往以工作流任务对应的工作流数据为单位进行。在传输一个工作流数据时,为处理该工作流数据而分配的***计算资源会处于空闲状态,直到该工作流数据传输完毕,才会启动对该工作流数据的处理。若以业务为单位进行数据传输,会导致大量工作流数据没有传输完毕而导致配置的***计算资源处于闲置状态,造成***计算资源的闲置时间较长,形成***计算资源的浪费。
发明内容
本申请实现方式提供了一种数据传输方法以及设备,用于确定非实时数据的传输策略。
本申请第一方面提供了一种数据传输方法,包括:服务平台确定要执行的非实时的N个工作流任务,在本申请实现方式中,N个工作流代表N个不同的功能服务,然后预测该N个工作流任务所需处理的N个工作流数据的数据量,再通过预测的该N个工作流数据的数据量确定目标传输策略,接着向用户侧服务器发送该目标传输策略,该目标传输策略用于指示该用户侧服务器根据该目标传输策略传输该N个工作流数据。
在本申请实现方式中,服务平台(如SAAS平台)可以依据其分析能力,提供实时数据处理服务和非实时数据处理服务。其中,实时数据处理服务要求实时性强,一般以分钟计,往往给予最高优先级的带宽和***计算资源。而非实时数据处理服务则对实时性要求对比实时数据处理服务较弱,一般要求以天、周或月为周期,往往使用闲时的带宽和***计算资源,或者在进行实时数据处理服务的非高峰时,使用空闲带宽和***计算资源进行处理。因此,该总传输数据量可以包括实时数据的数据量和非实时数据的数据量。其中,实时数据为在该目标传输周期中实时数据处理服务所产生需要实时处理的数据,该非实时数据为在该目标传输周期中该非实时数据处理服务所产生不需要实时处理的数据。
由于在传输一个非实时的工作流任务对应的工作流数据时,针对该工作流数据的***计算资源会处于闲置状态,在本申请实施例中,服务平台通过确定要执行的非实时的N个工作流任务,并预测该N个工作流任务所需处理的N个工作流数据的数据量,然后根据预测的该N个工作流数据的数据量确定目标传输策略,使得当该服务平台向用户侧服务器发送该目标传输策略后,该用户侧服务器以工作流数据为单位根据该目标传输策略传输该N个工作流数据,由于以工作流数据为单位进行传输,相比较以业务的数据为单位进行传输,对于同一个工作流数据的传输时长减少,则匹配给该工作流数据的***计算资源处于闲置状态的时长也会减少,从而提高了***计算资源的利用率。
在一些可行的实施例中,该服务平台预测在目标传输周期的总传输数据量,该总传输数据量包括实时数据的数据量和非实时数据的数据量,该实时数据为在该目标传输周期中需要实时处理的数据,该非实时数据为该N个工作流数据,然后根据该总传输数据量申请带宽,该申请的带宽满足在该目标传输周期内传输该总传输数据量的要求。
由于带宽的费用十分昂贵,服务平台在需要处理的数据往往达到每天数百G甚至数T,在一些可行的实现方式中,确定在目标传输周期中的总传输数据量后,再根据该总传输数据量确定需要申请的带宽,可以最大限度地利用带宽资源。
在一些可行的实施例中,当服务平台根据该总传输数据量申请带宽之后,该服务平台还可以预测该目标传输周期中各个预设时间点的空闲带宽,其中,空闲带宽为在该目标传输周期中对应的预设时间点中,该申请的带宽减去处理该实时数据所使用的带宽的剩余量,该空闲带宽用于传输该非实时数据。
在本申请实现方式中,服务平台(如SAAS平台)可以依据其分析能力,提供实时数据处理服务和非实时数据处理服务。其中,实时数据处理服务要求实时性强,一般以分钟计,往往给予最高优先级的带宽和***计算资源。而非实时数据处理服务则对实时性要求对比实时数据处理服务较弱,一般要求以天、周或月为周期,往往使用闲时的带宽和***计算资源,或者在进行实时数据处理服务的非高峰时,使用空闲带宽和***计算资源进行处理。在本申请实现方式中,该服务平台可以根据该总传输数据量申请带宽,以使得申请的带宽可以满足在该目标传输周期内传输该总传输数据量的要求,即非实时数据可以利用在实时数据的传输之余的带宽完成传输。
在本申请实现方式中,当确定了申请的带宽,以及预测实时数据在目标传输周期内需要的带宽,可以确定非实时数据可以使用的带宽,即空闲带宽,空闲带宽为该申请的带宽减去实时数据处理服务所使用的带宽的剩余量,该空闲带宽用于传输非实时数据。
在一些可行的实施例中,该服务平台可以确定在目标处理周期中该N个工作流数据中各工作流数据对应的启动处理时间点,得到N个启动处理时间点,然后根据预测的该N个工作流数据的数据量确定该N个工作流数据中各工作流数据在第一调度周期的起始时间点上的剩余数据量,得到N个剩余数据量,该第一调度周期为该目标传输周期中的任一调度周期,接着根据该N个剩余数据量和该目标传输周期中各个预设时间点的空闲带宽,预测在该第一调度周期上该N个工作流数据中各工作流数据对应的传输时长,得到N个传输时长,最后将该第一调度周期的起始时间点到第一工作流数据的启动处理时间点的时长,减去该第一工作流数据的传输时长,得到在该第一调度周期上该第一工作流数据的传输优先级系数,得到N个传输优先级系数,该第一工作流数据为该N个工作流数据中的任一工作流数据,其中,所述目标传输策略包括:对于该N个工作流数据中各工作流数据,传输优先级系数的数值越小,越优先进行传输。
由于该目标传输策略确定了N个工作流数据进行有序传输,而且优先级系数的数值指示了对应的工作流数据的紧急性,优先级系数的数值越小的工作流数据,说明其可用的时长越小,越需要优先处理,使得越需要紧急越能优先处理。
在一些可行的实施例中,该服务平台确定在目标处理周期,该N个工作流数据中各工作流数据对应的启动处理时间点,得到N个启动处理时间点之前,还可以获取该N个工作流数据的历史处理信息,该历史处理信息为处理该N个工作流数据中的各工作流数据在过去多个处理周期中各个预设时间点的***计算资源消耗量,然后根据该历史处理信息预测在该目标处理周期中该N个工作流数据中各工作流数据的处理时长,得到N个处理时长,接着根据该N个处理时长和预设的N个最晚处理完毕时间点确定该N个工作流数据中各工作流数据的最晚处理时间点,得到N个最晚处理时间点,该N个最晚处理时间点用于确保该N个启动处理时间点中的任一启动处理时间点早于对应的最晚启动处理时间点。
如果一个工作流数据在对应的最晚启动处理时间点前仍然不能完成传输,那么则需要增加带宽,以提升数据传输的速度,要么增加***计算资源,减少对工作流数据进行处理的时间,此处不做限定,本步骤通过N个处理时长和N个最晚处理时间点确保该N个工作流数据中任一工作流数据在最晚启动处理时间点之前开始处理。
在一些可行的实施例中,该服务平台可以根据该历史处理信息预测该N个工作流数据中各工作流数据的***计算资源时序信息,得到N个***计算资源时序信息。
由于对该N个工作流数据进行处理需要***计算资源,因此需要确定可用的***计算资源,在本申请实施例中,通过预测N个***计算资源时序信息确定了该N个工作流数据的可用的***计算资源。
在一些可行的实施例中,该服务平台可以通过下述方法确定该N个启动处理时间点:
设该目标处理周期中各个预设时间点为Ti,i=1,2,…,n,其中对于任意i=1,2,…,n-1,Ti+1为Ti之后的时间点,然后令i等于1,对于该Ti,该服务平台通过执行下述循环确定在该目标处理周期,该N个工作流数据中各工作流数据对应的启动处理时间点,得到N个启动处理时间点:
S1、根据该目标传输周期中各个预设时间点的空闲带宽确定该Ti对应的公网数据传输能力,该公网数据传输能力为该目标传输周期的起始时间点到该Ti的期间所能传输的数据量;
S2、根据该N个工作流数据中各工作流数据的数据量确定该Ti对应的公网数据传输能力能满足的工作流数据,作为工作流数据候选集,若该工作流数据候选集为非空集,则执行步骤S3,否则执行步骤S5;
S3、对于该工作流数据候选集中的第二工作流数据,根据该第二工作流数据对应的***计算资源时序信息,计算该工作流数据在该Ti的负载增加值,该负载增加值为当处理该第二工作流数据时所需要的***计算资源的量,占总***计算资源的剩余量的比率,该工作流数据候选集中以负载增加值最大的工作流数据作为匹配工作流数据,以该Ti为该匹配工作流数据的启动处理时间点,该第二工作流数据为该工作流数据候选集中的任一工作流数据;
S4、令该Ti对应的公网数据传输能力减去该匹配工作流数据的数据量,得到的更新后的该Ti对应的公网数据传输能力;
令该Ti对应的空闲***计算资源减去该匹配工作流所需的***计算资源的量,得到更新后的该Ti对应的总***计算资源的剩余量;
令该工作流数据候选集剔除该匹配工作流数据,得到更新后的该工作流数据候选集,若该工作流数据候选集为非空集,则基于该更新后的该Ti对应的公网数据传输能力、该更新后的该Ti对应的总***计算资源的剩余量和该更新后的该工作流数据候选集执行步骤S3,否则执行步骤S5;
S5、更新该i,使得更新后的i为原来的i加1;
若该更新后的i大于n,则结束该循环;
若该更新后的i不大于n,则基于该更新后的该Ti对应的公网数据传输能力、该更新后的该Ti对应的总***计算资源的剩余量、该更新后的该工作流数据候选集和该更新后的i执行该循环的下一回合。
通过上述方式综合考量了可用的带宽资源和***计算资源计算出优化后的该N个工作流数据对应的启动处理时间点,得到N个启动处理时间,使得用于确定优化的目标传输策略。
本申请第二方面提供了一种数据传输方法,包括:
用户侧服务器可以接收服务平台向发送的目标传输策略,然后该用户侧服务器根据该目标传输策略传输N个工作流数据,其中,N为正整数,该N个工作流数据为对应的非实时的N个工作流任务所需处理的数据。
由于在传输一个非实时的工作流任务对应的工作流数据时,针对该工作流数据的***计算资源会处于闲置状态,在本申请实施例中,该用户侧服务器以工作流数据为单位根据该目标传输策略传输该N个工作流数据,由于以工作流数据为单位进行传输,相比较以业务的数据为单位进行传输,对于同一个工作流数据的传输时长减少,则匹配给该工作流数据的***计算资源处于闲置状态的时长也会减少,从而提高了***计算资源的利用率。
在一些可行的实施例中,该目标传输策略为在第一调度周期上该N个工作流数据对应的N个传输优先级系数,其中,传输优先级系数的数值越小,越优先进行传输。
由于该目标传输策略确定了N个工作流数据进行有序传输,而且优先级系数的数值指示了对应的工作流数据的紧急性,优先级系数的数值越小的工作流数据,说明其可用的时长越小,越需要优先处理,使得越需要紧急越能优先处理。
由于在传输一个非实时的工作流任务对应的工作流数据时,针对该工作流数据的***计算资源会处于闲置状态,在本申请实施例中,该用户侧服务器以工作流数据为单位根据该目标传输策略传输该N个工作流数据,由于以工作流数据为单位进行传输,相比较以业务的数据为单位进行传输,对于同一个工作流数据的传输时长减少,则匹配给该工作流数据的***计算资源处于闲置状态的时长也会减少,从而提高了***计算资源的利用率。
本申请第三方面提供了一种服务平台,包括:
确定模块,用于确定要执行的非实时的N个工作流任务,其中,N为正整数。
数据量预测模块,用于预测该N个工作流任务所需处理的N个工作流数据的数据量。
传输策略模块,用于根据预测的该N个工作流数据的数据量确定目标传输策略。
收发模块,用于向用户侧服务器发送该目标传输策略,该目标传输策略用于指示该用户侧服务器根据该目标传输策略传输该N个工作流数据。
由于在传输一个非实时的工作流任务对应的工作流数据时,针对该工作流数据的***计算资源会处于闲置状态,在本申请实施例中,可以通过确定要执行的非实时的N个工作流任务,并预测该N个工作流任务所需处理的N个工作流数据的数据量,然后根据预测的该N个工作流数据的数据量确定目标传输策略,使得当该向用户侧服务器发送该目标传输策略后,该用户侧服务器以工作流数据为单位根据该目标传输策略传输该N个工作流数据,由于以工作流数据为单位进行传输,相比较以业务的数据为单位进行传输,对于同一个工作流数据的传输时长减少,则匹配给该工作流数据的***计算资源处于闲置状态的时长也会减少,从而提高了***计算资源的利用率。
在一些可行的实施例中,该数据量预测模块还用于,预测在目标传输周期的总传输数据量,该总传输数据量包括实时数据的数据量和非实时数据的数据量,该实时数据为在该目标传输周期中需要实时处理的数据,该非实时数据为该N个工作流数据。
带宽申请模块,用于根据该总传输数据量申请带宽,该申请的带宽满足在该目标传输周期内传输该总传输数据量的要求。
由于带宽的费用十分昂贵,服务平台在需要处理的数据往往达到每天数百G甚至数T,在一些可行的实现方式中,确定在目标传输周期中的总传输数据量后,再根据该总传输数据量确定需要申请的带宽,可以最大限度地利用带宽资源。
在一些可行的实施例中,该数据量预测模块还用于,该服务平台预测该目标传输周期中各个预设时间点的空闲带宽,其中,空闲带宽为在该目标传输周期中对应的预设时间点中,该申请的带宽减去处理该实时数据所使用的带宽的剩余量,该空闲带宽用于传输该非实时数据。
在本申请实现方式中,服务平台(如SAAS平台)可以依据其分析能力,提供实时数据处理服务和非实时数据处理服务。其中,实时数据处理服务要求实时性强,一般以分钟计,往往给予最高优先级的带宽和***计算资源。而非实时数据处理服务则对实时性要求对比实时数据处理服务较弱,一般要求以天、周或月为周期,往往使用闲时的带宽和***计算资源,或者在进行实时数据处理服务的非高峰时,使用空闲带宽和***计算资源进行处理。在本申请实现方式中,该服务平台可以根据该总传输数据量申请带宽,以使得申请的带宽可以满足在该目标传输周期内传输该总传输数据量的要求,即非实时数据可以利用在实时数据的传输之余的带宽完成传输。
在本申请实现方式中,当确定了申请的带宽,以及预测实时数据在目标传输周期内需要的带宽,可以确定非实时数据可以使用的带宽,即空闲带宽,空闲带宽为该申请的带宽减去实时数据处理服务所使用的带宽的剩余量,该空闲带宽用于传输非实时数据。
在一些可行的实施例中,该传输策略模块包括:
确定子模块,用于确定在目标处理周期中该N个工作流数据中各工作流数据对应的启动处理时间点,得到N个启动处理时间点。
预测子模块,用于根据预测的该N个工作流数据的数据量确定该N个工作流数据中各工作流数据在第一调度周期的起始时间点上的剩余数据量,得到N个剩余数据量,该第一调度周期为该目标传输周期中的任一调度周期。
该预测子模块,还用于根据该N个剩余数据量和该目标传输周期中各个预设时间点的空闲带宽,预测在该第一调度周期上该N个工作流数据中各工作流数据对应的传输时长,得到N个传输时长。
传输策略子模块,用于将该第一调度周期的起始时间点到第一工作流数据的启动处理时间点的时长,减去该第一工作流数据的传输时长,得到在该第一调度周期上该第一工作流数据的传输优先级系数,得到N个传输优先级系数,该第一工作流数据为该N个工作流数据中的任一工作流数据,其中,该目标传输策略包括:对于该N个工作流数据中各工作流数据,传输优先级系数的数值越小,越优先进行传输。
由于该目标传输策略确定了N个工作流数据进行有序传输,而且优先级系数的数值指示了对应的工作流数据的紧急性,优先级系数的数值越小的工作流数据,说明其可用的时长越小,越需要优先处理,使得越需要紧急越能优先处理。
在一些可行的实施例中,该传输策略模块还包括:
获取子模块,用于获取该N个工作流数据的历史处理信息,该历史处理信息为处理该N个工作流数据中的各工作流数据在过去多个处理周期中各个预设时间点的***计算资源消耗量。
该预测子模块,还用于根据该历史处理信息预测在该目标处理周期中该N个工作流数据中各工作流数据的处理时长,得到N个处理时长。
该确定子模块,还用于根据该N个处理时长和预设的N个最晚处理完毕时间点确定该N个工作流数据中各工作流数据的最晚处理时间点,得到N个最晚处理时间点,该N个最晚处理时间点用于确保该N个启动处理时间点中的任一启动处理时间点早于对应的最晚启动处理时间点。
如果一个工作流数据在对应的最晚启动处理时间点前仍然不能完成传输,那么则需要增加带宽,以提升数据传输的速度,要么增加***计算资源,减少对工作流数据进行处理的时间,此处不做限定,本步骤通过N个处理时长和N个最晚处理时间点确保该N个工作流数据中任一工作流数据在最晚启动处理时间点之前开始处理。
在一些可行的实施例中,该预测子模块,还用于根据该历史处理信息预测该N个工作流数据中各工作流数据的***计算资源时序信息,得到N个***计算资源时序信息。
由于对该N个工作流数据进行处理需要***计算资源,因此需要确定可用的***计算资源,在本申请实施例中,通过预测N个***计算资源时序信息确定了该N个工作流数据的可用的***计算资源。
在一些可行的实施例中,该确定子模块具体用于:
设该目标处理周期中各个预设时间点为Ti,i=1,2,…,n,其中对于任意i=1,2,…,n-1,Ti+1为Ti之后的时间点。
令i等于1,对于该Ti,该服务平台通过执行下述循环确定在该目标处理周期,该N个工作流数据中各工作流数据对应的启动处理时间点,得到N个启动处理时间点:
S1、根据该目标传输周期中各个预设时间点的空闲带宽确定该Ti对应的公网数据传输能力,该公网数据传输能力为该目标传输周期的起始时间点到该Ti的期间所能传输的数据量。
S2、根据该N个工作流数据中各工作流数据的数据量确定该Ti对应的公网数据传输能力能满足的工作流数据,作为工作流数据候选集,若该工作流数据候选集为非空集,则执行步骤S3,否则执行步骤S5。
S3、对于该工作流数据候选集中的第二工作流数据,根据该第二工作流数据对应的***计算资源时序信息,计算该工作流数据在该Ti的负载增加值,该负载增加值为当处理该第二工作流数据时所需要的***计算资源的量,占总***计算资源的剩余量的比率,该工作流数据候选集中以负载增加值最大的工作流数据作为匹配工作流数据,以该Ti为该匹配工作流数据的启动处理时间点,该第二工作流数据为该工作流数据候选集中的任一工作流数据。
S4、令该Ti对应的公网数据传输能力减去该匹配工作流数据的数据量,得到的更新后的该Ti对应的公网数据传输能力。
令该Ti对应的空闲***计算资源减去该匹配工作流所需的***计算资源的量,得到更新后的该Ti对应的总***计算资源的剩余量。
令该工作流数据候选集剔除该匹配工作流数据,得到更新后的该工作流数据候选集,若该工作流数据候选集为非空集,则基于该更新后的该Ti对应的公网数据传输能力、该更新后的该Ti对应的总***计算资源的剩余量和该更新后的该工作流数据候选集执行步骤S3,否则执行步骤S5。
S5、更新该i,使得更新后的i为原来的i加1。
若该更新后的i大于n,则结束该循环。
若该更新后的i不大于n,则基于该更新后的该Ti对应的公网数据传输能力、该更新后的该Ti对应的总***计算资源的剩余量、该更新后的该工作流数据候选集和该更新后的i执行该循环的下一回合。
通过上述方式综合考量了可用的带宽资源和***计算资源计算出优化后的该N个工作流数据对应的启动处理时间点,得到N个启动处理时间,使得用于确定优化的目标传输策略。
由于在传输一个非实时的工作流任务对应的工作流数据时,针对该工作流数据的***计算资源会处于闲置状态,在本申请实施例中,服务平台通过确定要执行的非实时的N个工作流任务,并预测该N个工作流任务所需处理的N个工作流数据的数据量,然后根据预测的该N个工作流数据的数据量确定目标传输策略,使得当该服务平台向用户侧服务器发送该目标传输策略后,该用户侧服务器以工作流数据为单位根据该目标传输策略传输该N个工作流数据,由于以工作流数据为单位进行传输,相比较以业务的数据为单位进行传输,对于同一个工作流数据的传输时长减少,则匹配给该工作流数据的***计算资源处于闲置状态的时长也会减少,从而提高了***计算资源的利用率。
本申请第四方面提供了一种用户侧服务器,包括:
接收模块,用于接收服务平台向发送的目标传输策略。
传输模块,用于根据该目标传输策略传输N个工作流数据,其中,N为正整数,该N个工作流数据为对应的非实时的N个工作流任务所需处理的数据。
由于在传输一个非实时的工作流任务对应的工作流数据时,针对该工作流数据的***计算资源会处于闲置状态,在本申请实施例中,该用户侧服务器以工作流数据为单位根据该目标传输策略传输该N个工作流数据,由于以工作流数据为单位进行传输,相比较以业务的数据为单位进行传输,对于同一个工作流数据的传输时长减少,则匹配给该工作流数据的***计算资源处于闲置状态的时长也会减少,从而提高了***计算资源的利用率。
在一些可行的实施例中,该目标传输策略为在第一调度周期上该N个工作流数据对应的N个传输优先级系数,其中,传输优先级系数的数值越小,越优先进行传输。
由于该目标传输策略确定了N个工作流数据进行有序传输,而且优先级系数的数值指示了对应的工作流数据的紧急性,优先级系数的数值越小的工作流数据,说明其可用的时长越小,越需要优先处理,使得越需要紧急越能优先处理。
本申请第五方面提供了一种服务平台,包括:
总线、存储器、收发器和处理器。
该总线,用于连接该存储器、该收发器和该处理器。
该处理器,用于确定要执行的非实时的N个工作流任务,其中,N为正整数,预测该N个工作流任务所需处理的N个工作流数据的数据量,根据预测的该N个工作流数据的数据量确定目标传输策略。
该收发器,用于向用户侧服务器发送该目标传输策略,该目标传输策略用于指示该用户侧服务器根据该目标传输策略传输该N个工作流数据。
该存储器,用于存储执行该处理器的功能的程序和相关数据。
由于在传输一个非实时的工作流任务对应的工作流数据时,针对该工作流数据的***计算资源会处于闲置状态,在本申请实施例中,可以通过确定要执行的非实时的N个工作流任务,并预测该N个工作流任务所需处理的N个工作流数据的数据量,然后根据预测的该N个工作流数据的数据量确定目标传输策略,使得当该向用户侧服务器发送该目标传输策略后,该用户侧服务器以工作流数据为单位根据该目标传输策略传输该N个工作流数据,由于以工作流数据为单位进行传输,相比较以业务的数据为单位进行传输,对于同一个工作流数据的传输时长减少,则匹配给该工作流数据的***计算资源处于闲置状态的时长也会减少,从而提高了***计算资源的利用率。
本申请第六方面提供了一种用户侧服务器,包括:
总线、存储器、收发器和处理器。
该总线,用于连接该存储器、该收发器和该处理器。
该收发器,用于接收服务平台向发送的目标传输策略。
该处理器,用于执行该目标传输策略。
该收发器,还用于根据该目标传输策略传输N个工作流数据,其中,N为正整数,该N个工作流数据为对应的非实时的N个工作流任务所需处理的数据。
该存储器,用于存储执行该处理器的功能的程序和相关数据。
由于在传输一个非实时的工作流任务对应的工作流数据时,针对该工作流数据的***计算资源会处于闲置状态,在本申请实施例中,该用户侧服务器以工作流数据为单位根据该目标传输策略传输该N个工作流数据,由于以工作流数据为单位进行传输,相比较以业务的数据为单位进行传输,对于同一个工作流数据的传输时长减少,则匹配给该工作流数据的***计算资源处于闲置状态的时长也会减少,从而提高了***计算资源的利用率。
本申请的第七方面提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述各方面所述的方法。
从以上技术方案可以看出,本申请实现方式具有以下优点:
由于在传输一个非实时的工作流任务对应的工作流数据时,针对该工作流数据的***计算资源会处于闲置状态,在本申请实施例中,服务平台通过确定要执行的非实时的N个工作流任务,并预测该N个工作流任务所需处理的N个工作流数据的数据量,然后根据预测的该N个工作流数据的数据量确定目标传输策略,使得当该服务平台向用户侧服务器发送该目标传输策略后,该用户侧服务器以工作流数据为单位根据该目标传输策略传输该N个工作流数据,由于以工作流数据为单位进行传输,相比较以业务的数据为单位进行传输,对于同一个工作流数据的传输时长减少,则匹配给该工作流数据的***计算资源处于闲置状态的时长也会减少,从而提高了***计算资源的利用率。
附图说明
图1为一种数据传输***的架构示意图;
图2为一种数据传输方法的实施例示意图;
图3为一种数据传输方法的另一实施例示意图;
图4为执行的循环的实施例示意图;
图5为一种服务平台的实施例示意图;
图6为一种服务平台的另一实施例示意图;
图7为一种服务平台的另一实施例示意图;
图8为一种服务平台的另一实施例示意图;
图9为一种用户侧服务器的实施例示意图;
图10为一种服务平台的实施例示意图;
图11为一种用户侧服务器的实施例示意图。
具体实施方式
本申请实现方式提供了一种数据传输方法以及设备,用于确定非实时数据的传输策略。
为了使本技术领域的人员更好地理解本申请实现方式方案,下面将结合本申请实现方式中的附图,对本申请实现方式中的技术方案进行清楚、完整地描述,显然,所描述的实现方式仅仅是本申请一部分的实现方式,而不是全部的实现方式。
本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”、“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的实现方式能够以除了在这里图示或描述的内容以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、***、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
请参考图1,为本申请实现方式中一种数据传输***的架构示意图,该数据传输***100可以包括服务平台101、用户侧服务器102和客户端103。
在一些可行的实现方式中,服务平台101可以如软件即服务平台(Software-as-a-Service,SaaS),服务平台101可以为企业搭建信息化提供所需要的所有网络基础设施及软件、硬件运作平台,并负责所有前期的实施、后期的维护等一系列服务,企业无需购买软硬件、建设机房、招聘IT人员,即可通过互联网使用信息***。
在本申请实现方式中,用户侧服务器102作为服务平台的用户所使用的服务器,如SaaS平台服务的企业所使用的服务器。其中,用户侧服务器102可以包括一个或一个以***处理器(central processing units,CPU)(例如,一个或一个以上处理器)和存储器,一个或一个以上存储应用程序或数据的存储介质(例如一个或一个以上海量存储设备)。
在本申请实现方式中,服务平台101的每个服务可以对应一个逻辑功能,其能力部署在一台多台设备上,其中,一台设备也可以部署多个服务,此处不做限定。在一些可行的实现方式中,这里所指的设备也可以指虚拟机,也可以是物理服务器,此处不做限定。
以SaaS平台为例,SaaS平台可以提供以下服务:数据存储服务,按照业务特性存储数据,将其保存在内存数据库或者分布式文件***中;实时数据处理服务,收集用户的实时数据,如漫游事件;离线数据(非实时数据)采集服务,负责收集用户的离线数据,如话单数据,每天数百G,甚至上数T;也会接收用户侧上报当前已经存在的数据信息,包括数据量,文件数等;数据分析服务,基于收集的用户数据,基于用户营销服务设置,挖掘模型,如推荐模型,向用户的客户推荐相关产品;数据处理工作流服务,用户通过配置工作流,完成数据预处理、数据分析功能,生成相关模型或者用户标签,为用户营销提供数据支撑。数据处理工作流包括实时处理工作流以及离线数据处理工作流。本发明主要针对的是离线数据处理工作流服务,即如果没有特殊指定,文中出现的工作流指离线数据处理工作流;数据传输管理服务,用户依据工作流执行信息,基于申请的带宽,确定传输用户数据的策略,以表更充分的利用带宽资源,同时更好的利用***租用的***计算资源;营销服务,用户通过租用该服务,完成其业务功能;投放服务,为用户的客户提供推荐等营销功能,如客户漫游时,通过投放服务推荐漫游流量包;***管理服务,控制用户权限,用户所用的计算或者存储资源;用户界面服务,为每个用户提供相关界面,用户通过该界面完成其所需功能;管理界面,SAAS平台的管理员可以通过该功能完成相关功能,管理界面部署在服务器上。
需要说明的是,SaaS平台可以根据本身的功能和设备能力提供上述一种或多种服务,也可以提供上述未提及的其他服务,此处不做限定。
在本申请实现方式中,客户端103可以为包括手机、平板电脑、PDA(PersonalDigital Assistant,个人数字助理)、POS(Point of Sales,销售终端)、车载电脑等任意终端设备。以为手机为例,手机的结构包括:射频(Radio Frequency,RF)电路、存储器、输入单元、显示单元、传感器、音频电路、无线保真(wireless fidelity,WiFi)模块、处理器、以及电源等部件。本领域技术人员可以理解,上述手机结构并不构成对手机的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
而客户端103可以发送数据给用户侧服务器102或者SAAS平台,接受用户侧服务器102或者SAAS平台发送的数据,从而接收用户侧服务器102和SaaS平台的服务。
随着互联网技术的发展和应用软件的成熟,越来越多厂商选择基于软件即服务(Software-as-a-Service,SaaS)平台提供的数据分析能力,这样厂商就可以把更多的精力聚焦于自己专业领域的发展。
在SaaS平台进行数据分析前,厂商需要将数据从服务器通过公网传输到SaaS平台。当下,厂商一般会对业务设置优先级,根据不同业务的不同优先级以业务为单位进行传输。
常见的SaaS平台提供的数据分析业务包括实时数据处理和非实时数据处理,其中,非实时数据的处理往往以工作流任务对应的工作流数据为单位进行。在传输一个工作流数据时,为处理该工作流数据而分配的***计算资源会处于空闲状态,直到该工作流数据传输完毕,才会启动对该工作流数据的处理。若以业务为单位进行数据传输,会导致大量工作流数据没有传输完毕而导致配置的***计算资源处于闲置状态,造成***计算资源的闲置时间较长,形成***计算资源的浪费。
为此,本申请的实现方式中提供了一种数据传输方法,请参考图2,该方法包括:
201、服务平台确定要执行的非实时的N个工作流任务,其中,N为正整数。
202、该服务平台预测该N个工作流任务所需处理的N个工作流数据的数据量。
203、该服务平台根据预测的该N个工作流数据的数据量确定目标传输策略。
204、该服务平台向用户侧服务器发送该目标传输策略。
205、该用户侧服务器根据该目标传输策略传输该N个工作流数据。
由于在传输一个非实时的工作流任务对应的工作流数据时,针对该工作流数据的***计算资源会处于闲置状态,在本申请实施例中,服务平台通过确定要执行的非实时的N个工作流任务,并预测该N个工作流任务所需处理的N个工作流数据的数据量,然后根据预测的该N个工作流数据的数据量确定目标传输策略,使得当该服务平台向用户侧服务器发送该目标传输策略后,该用户侧服务器以工作流数据为单位根据该目标传输策略传输该N个工作流数据,由于以工作流数据为单位进行传输,相比较以业务的数据为单位进行传输,对于同一个工作流数据的传输时长减少,则匹配给该工作流数据的***计算资源处于闲置状态的时长也会减少,从而提高了***计算资源的利用率。
具体的,请参考图3,本申请的实现方式中提供了一种数据传输方法,包括:
301、服务平台预测在该目标传输周期的总传输数据量。
由于带宽的费用十分昂贵,服务平台在需要处理的数据往往达到每天数百G甚至数T,在一些可行的实现方式中,为了最大限度地利用带宽资源,首先需要确定在目标传输周期中的总传输数据量,再根据该总传输数据量确定需要的带宽。
需要说明的是,带宽为在单位时间内从网络中的某一点到另一点所能通过的“最高数据率”,即在单位时间内能够在线路上传送的数据量,常用的单位是字节/秒(bit persecond,bps),在一些可行的实现方式中,其单位也可以为兆字节(Mebibit,Mbps)为单位,此处不做限定。
在本申请实现方式中,服务平台(如SAAS平台)可以依据其分析能力,提供实时数据处理服务和非实时数据处理服务。其中,实时数据处理服务要求实时性强,一般以分钟计,往往给予最高优先级的带宽和***计算资源。而非实时数据处理服务则对实时性要求对比实时数据处理服务较弱,一般要求以天、周或月为周期,往往使用闲时的带宽和***计算资源,或者在进行实时数据处理服务的非高峰时,使用空闲带宽和***计算资源进行处理。因此,该总传输数据量可以包括实时数据的数据量和非实时数据的数据量。其中,实时数据为在该目标传输周期中实时数据处理服务所产生需要实时处理的数据,该非实时数据为在该目标传输周期中该非实时数据处理服务所产生不需要实时处理的数据。
以电信运营商(用户侧服务器)接受的数据分析服务为例,实时数据处理服务可以为实时营销服务,如客户端用户去了另一个城市(如香港),则用户侧服务器可以向该客户端推荐该城市的流量包、餐厅或酒店服务,这类业务对数据的实时性要求为分钟级(如10分钟)。
而非实时数据处理服务可以为构建用户标签,主要通过获取海量历史数据,进行数据分析得出报表或用户标签。这种数据分析的数据量非常大,而且处理的逻辑十分复杂,但是对实时性要求不高(如1天),则用户侧服务器可以通过服务平台的管理***进行配置业务逻辑,以接受非实时数据处理服务。
在本申请实现方式中,对于实时数据处理服务,由于实时性的要求,一般使用最高优先级的带宽和***计算资源;而对于非实时数据处理服务,则一般使用闲时的带宽(如23:00至次日7:00)和***计算资源,或者在进行实时数据处理服务的过程中的非高峰时的空闲带宽和空闲***计算资源进行处理。
需要说明的是,传输周期为对该非实时数据进行传输的周期,在一些可行的实现方式中,目标传输周期可以为1天,也可以为2天,或者12小时,此处不做限定,在此,以1天(从0:00至次日0:00)为例进行说明。
下面结合实例说明如何预测在该目标传输周期的总传输数据量,如运营商提供实时数据处理服务和非实时数据处理服务。
其中实时数据为运营商(用户侧服务器)提供的营销服务,服务平台基于接收的实时数据,触发推荐服务,向其客户推荐合适的产品,如漫游时,运营商希望服务平台推荐合适的流量包,这类数据实时性要求往往为分钟级,如10分钟。
如非实时数据处理服务为处理运营商话单,每天需要传输和处理数百G甚至数据T的非实时数据。一般而言,这类非实时数据的实时性为天级(处理周期为1天,即今天的某个时刻开始处理,明天要的同样时刻要得到反馈),但对这带宽资源消耗大。
用户侧服务器可以通过申请带宽对实时数据和非实时数据进行传输,如确定12月所需申请的带宽,具体步骤如下:
1、预测实时数据的数据量。
在本申请实现方式中,如传输周期的长度为1天,目标传输周期为0:00到次日的0:00,则可以收集每天的各预设时间段中产生的数据量,如2017年11月份的各天的不同时间段所产生的数据量,如下表所示:
日期/时间段 | 0000 | 0010 | 0020 | … | 2350 |
… | … | … | … | … | … |
20171101 | 100M | 50M | 10M | … | 200M |
20171102 | 100M | 40M | 20M | … | 210M |
20171103 | 100M | 45M | 15M | … | 215M |
… | … | … | … | … | … |
其中,0000表示收集到的0:00到0:10的时间段所产生的数据量,0010表示收集到的0:10到0:20的时间段所产生的数据量,如此类推,此处不再赘述。
通过上表可以看出,1天(一个传输周期的长度)中各时间段产生的数据量差别大,因为申请的带宽要保证峰值业务不受影响,则在1天的非峰值的时间段里会有大量空闲带宽可以供传输非实时数据使用。另外,还可以看出每天的流量曲线类似,说明实时数据的产生的数据具有周期性,每天在固定的时间是峰值,在其他的固定时间为非峰值。则当收集到足够多的数据信息时,可以利用相关建模算法构建模型,预测12月份的各天中各时间段产生的数据量,得到如下表所示:
日期 | 0000 | 0010 | 0020 | … | 2350 |
20171201 | 100M | 60M | 10M | … | 250M |
20171202 | 110M | 40M | 20M | … | 220M |
… | … | … | … | … | … |
20171230 | … | … | … | … | … |
在一些可行的实现方式中,假设12月份的每天中,10分钟内传输的最大数据量为3600M,要满足业务实时性的要求,至少要申请(3600*8)/(10*60)=48M的带宽,并用以确定传输实时数据需要的最大带宽。
2、预测非实时数据的数据量。
在本申请实现方式中,由于非实时数据的以1天为传输周期,则可以收集每天的历史数据,如下表,为收集到11月份每天的数据流:
日期 | 非实时数据 |
… | … |
20171101 | 200G |
20171102 | 250G |
… | … |
同样的,当收集到足够的数据信息时,基于历史各天传输总数据量,可以预测各12月份各天***需要传输的总数据量。
3、汇总。
由于本申请是对于非实时数据的传输指定目标传输策略,因此由于非实时数据的传输周期的长度是1天,则可以按照1天为周期对总数据量进行汇总,生成预测的总数据量,如下表:
日期 | 总数据量 |
30171301 | 351G |
30171302 | 360G |
… | … |
30171231 | 353G |
假设12月中,1天中传输的数据的最大值为390G,那么为了支持数据传输,***申请的带宽为(390*1024*8)/(3600*24)=36M。
302、该服务平台根据该总传输数据量申请带宽,该申请的带宽满足在该目标传输周期内传输该总传输数据量的要求。
在本申请实现方式中,该服务平台可以根据该总传输数据量申请带宽,以使得申请的带宽可以满足在该目标传输周期内传输该总传输数据量的要求。在本申请实施例中,由于36M(非实时数据的需要带宽)小于48M(实时数据的需要带宽),那么只要申请48M带宽,就能同时满足非实时数据和实时数据的带宽需求的要求,即非实时数据可以利用在实时数据的传输之余的带宽完成传输。
303、该服务平台预测目标传输周期中各个预设时间点的空闲带宽。
在本申请实现方式中,当确定了申请的带宽,以及预测实时数据在目标传输周期内需要的带宽,可以确定非实时数据可以使用的带宽,即空闲带宽,空闲带宽为该申请的带宽减去实时数据处理服务所使用的带宽的剩余量,该空闲带宽用于传输非实时数据。
在本申请实施例中,可以通过计算,预测得到在目标传输周期(如3017年12月14日当天)中实时数据的带宽:
则可以确定非实时数据的传输可使用的带宽,即空闲带宽:
304、该服务平台确定要执行的非实时的N个工作流,其中,N为正整数。
在本申请实现方式中,当确定申请的带宽和非实时数据可使用的空闲带宽后,可以确定要执行的N个工作流。需要说明的是,执行N个工作流,即处理该N个工作流对应的N个工作流数据。另外,不同的工作流的处理周期不同,有的为1天,有的为1周,有的为一个月。在本申请实现方式中,可以确定在目标处理周期要执行的N个工作流。需要说明的是,该目标处理周期与目标传输周期对应,即目标处理周期用于处理在目标传输周期传输的非实时数据。一般而言,该目标处理周期的起始时间点不早于目标传输周期,以使得服务平台可以一边接收非实时数据,一边进行处理,如目标传输周期为0:00至次日0:00,目标处理周期为3:00至次日3:00。
在本申请实现方式中,N个工作流代表N个不同的功能服务,下面以电信运营商依据话单构建用户标签的为例进行说明,服务平台按顺序进行以下数据分析:
1、数据预处理:如对收集的话单,进行格式转化,并去除不合格话单;
2、特征生成:依据话单,生成用户特征,特征包括用户每天消费金额,每天通话次数;
3、业务建模:依据生成的特征,构建模型,如离网模型;
4、用户标签生成:基于用户的消费数据,构建相关模型生成用户标签;如基于用费通话次数、消费金额,生成用户离网模型,进而生成用户是否离网的标签。
需要说明的是,在此,依据话单构建用户标签的工作称为一个工作流,对于进行该工作流所需要处理的数据称为工作流数据。在进行数据分析之前,需要用户侧服务器(在此为电信运营商的服务器)将所需工作流数据通过申请的带宽传输到服务平台,因此,服务平台会通过租用带宽,以支撑数据传输。
非实时数据往往涉及多个工作流数据(如N个,N为正整数),需要传输的数据量往往很大,每天数百G甚至数T,对于带宽和***计算资源的考验非常大,而带宽和***计算资源(如CPU/IO/内存等)非常宝贵,为了最大化其利用率,本申请实现方式通过制定对离线数据处理服务的工作流数据的目标传输策略,充分地利用带宽和***计算资源。
305、该服务平台预测N个工作流数据中各工作流数据的数据量。
当确定在目标处理周期要执行的工作流后,可以确定要传输的N个工作流对应的N个工作流数据的数据量。以下结合实例进行说明,依据上述步骤描述的技术,收集历史的N个工作流数据在不同的传输周期的数据量,并预测未来各工作流数据在目标传输周期的数据量,如预测在12月15日中该N个工作流数据的数据量,得到如下表所述:
项目/日期 | 20171215 |
工作流数据1 | 80G |
工作流数据2 | 60G |
工作流数据3 | 70G |
…… | …… |
工作流数据N | …… |
当确定了数据量之后,可以通过下述步骤306-313确定对N个工作流数据的目标传输策略。
306、该服务平台获取该N个工作流数据的历史处理信息,该历史处理信息为该N个工作流数据中的各工作流数据在过去多个处理周期中各个预设时间点的***计算资源消耗量。
需要说明的是,服务平台处理N个工作流数据需要使用***计算资源,该***计算资源主要包括中央处理器CPU资源和输入输出IO资源,在一些可行的实现方式中,还可以包括内存资源,此处不做限定。在本身请实现方式中,服务平台可以获取该N个工作流数据的历史处理信息,用于预测在该目标处理周期中该N个工作流数据中各工作流数据的处理时长,得到N个处理时长,或与该目标处理周期中该N个工作流数据中各工作流数据的***计算资源时序信息。
在本申请实现方式中,该历史处理信息为该N个工作流数据中的各工作流数据在过去多个处理周期中各个预设时间点的***计算资源消耗信息,以该***计算资源主要为CPU资源和IO资源为例进行说明。
以第一工作流(对应第一工作流数据)为例,假设该第一工作流是对用户侧服务器的服务项目,则第一工作流数据为用户侧服务器产生的数据,假设总***计算资源的CPU资源和IO资源分别为100份(即100个单位),则可以收集到如下数据:
307、该服务平台根据该历史处理信息预测该N个工作流数据中各工作流数据的***计算资源时序信息,得到N个***计算资源时序信息。
在本申请实现方式中,当获取了该N个工作流数据的历史处理信息后,可以用于预测该N个工作流数据中各工作流数据的***计算资源时序信息,得到N个***计算资源时序信息。
在一些可行的实现方式中,还可以通过其他方式确定一个工作流数据的***计算资源时序信息,此处不做限定。
以下通过举例说明通过计算得到该N个工作流数据在12月14日的***计算资源时序信息,如下3个工作流数据,这里假设一个时间段为10分钟,如0000代表0:00到0:10的时间段,0010代表0:10到0:20的时间段:
具体的,可以对不同传输周期的同一个时间段的***计算资源消耗量求平均数,得到目标传输周期的该时间段的***计算资源消耗量。在一些可行的实现方式中,还可以通过该历史工作流执行信息计算该N个工作流数据中各工作流数据的平均处理时长,对于该N个工作流数据中任一工作流数据(如第一工作流数据),确定与该第一工作流数据对应的平均处理时长,从历史处理信息的多个传输周期中查找与该平均处理时长的差值最小的处理时长以及对应的传输周期(如传输周期K),以该传输周期K中该第一工作流数据的***计算资源消耗量作为预测的该第一工作流数据的***计算资源时序信息。具体的,可以通过下述步骤预测该N个工作流数据中各工作流数据的处理时长。
308、该服务平台预测在该目标处理周期中该N个工作流数据中各工作流数据的处理时长,得到N个处理时长。
需要说明的是,处理时长为服务平台处理工作流数据所需要的时长,在本申请实现方式中,可以通过历史数据来预测服务平台对不同的工作流数据的处理时长,如对该N个工作流数据的处理时长进行预测,得到N个处理时长。
在一些可行的实现方式中,可以对总处理时长进行计算,求得平均数,作为预测的在目标处理周期的第一工作流的处理时长,即对第一工作流数据进行处理的总时长。在一些可行的实现方式中,还可以通过下述方式进行预测,根据上述数据构建模型(以线性模型为例),得到:
WT=F(S,CPU,IO,AC,AI,...,ST)
=α·D+ω·CPU+ξ·IO+β·AC+λ·AI+,...,+χ·ST+ε
其中,总处理时长WT为因变量,以收集到的特征为自变量,依据历史样本训练,易求出各工作流对应的α,ω,ξ,β,λ,χ,ε,常见的训练算法如随机梯度算法,则后续可以依据构建的模型预测工作流的处理时长。
进一步的,在一些可行的实施例中,ST=γ·Wd+η·Md+δ·Dh+σ·Hm,其中Wd、Md、H和Hm分别表示一周中的一天(Wd)、一个月中的一天(Md)、一天中的小时(Dh)、一小时在的分钟(Hm)。如2017年11月10日(星期五),下午15:14,则Wd=5,Md=10,Dh=15,Hm=14,在该时间点上,ST的取值为则:
309、该服务平台根据该N个处理时长和预设的N个最晚处理完毕时间点确定该N个工作流数据中各工作流数据的最晚处理时间点,得到N个最晚处理时间点。
需要说明的是,在一些可行的实现方式中,对于不同的工作流的执行有不同的截止时间点,需要在该截止时间点前完成对工作流数据的处理,得到相应的反馈,即最晚处理完毕时间点,则N个工作流数据处理完毕对应的N个最晚处理完毕时间点,需要说明的是,一般的,N个最晚处理完毕时间点是预设的。
该N个最晚处理完毕时间点为在该目标处理周期中该N个工作流数据中各工作流数据的最晚处理完毕时间点,将该N个工作流数据中任一工作流数据对应的处理时长中减去对应的最晚处理完毕时间点,对应的最晚处理时间点,得到N个最晚处理时间点,该N个最晚处理时间点用于当执行该确定在该目标处理周期中该N个工作流数据中各工作流数据对应的启动处理时间点,得到N个启动处理时间点的步骤时,确保该N个启动处理时间点中的任一启动处理时间点早于对应的最晚启动处理时间点。
需要说明的是,如果工作流数据在对应的最晚启动处理时间点前仍然不能完成传输,那么则需要增加带宽,以提升数据传输的速度,要么增加***计算资源,减少对工作流数据进行处理的时间,此处不做限定。
310、该服务平台确定在该目标处理周期中该N个工作流数据中各工作流数据对应的启动处理时间点,得到N个启动处理时间点。
在本申请实现方式中,可以根据上述获得的N个***计算资源时序信息、N个处理时长和/或N个最晚处理时间点中的一个或多个确定该N个工作流数据中各工作流数据的最优的启动处理时间点,得到N个启动处理时间点。
在一些可行的实现方式中,可以预设该目标处理周期中各个预设时间点为Ti,i=1,2,…,n,其中Ti为Ti-1之后的时间点,如目标处理周期为3:00至次日3:00,则若用T1,T2,T3,…,T143分别代表一天的3:00至次日3:00,如T1表示3:00至3:10,T2表示3:10至3:20,则T143代表2:50至次日3:00的时间段,则i=1,2,…,143.
令i的初始值等于1,对于该Ti,执行下述循环,得到在该目标处理周期中该N个工作流数据中各工作流数据对应的启动处理时间点,得到N个启动处理时间点,请参考图4,为执行的循环,包括:
S1、根据该目标传输周期中各个预设时间点的空闲带宽确定该Ti对应的公网数据传输能力,该公网数据传输能力为该目标传输周期的起始时间点到该Ti的期间所能传输的数据量。
需要说明的是,在本申请实现方式中,当需要确定一个时间点是否适合作为一个工作流数据进行处理的启动处理时间点时,需要首先确定该时间点上该的公网数据传输能力,该公网数据传输能力为该目标传输周期的起始时间点到该Ti的期间所能传输的数据量。需要说明的是,一般来说,目标传输周期与对应的目标处理周期是不重叠的,如目标传输周期可以为0:00至次日0:00,而目标处理周期为3:00至次日3:00。在此,可以用Rj表示目标传输周期中各个预设时间点,如j=1,2,3,…,144,S1表示0:00至0:10的时间段,R2表示0:10至0:20的时间段,如此类推,R144表示23:50至次日0:00的时间段。
在本申请实现方式中,可以依据空闲带宽获取各时间点具有公网数据传输能力,计算的方法如下:
其中,FBTi为时刻Ti的公网数据传输能力,P表示采样周期,用秒表示,如果采样周期是10分钟,则P为600(秒),R1为该目标传输周期的第一个时间段,FBRj表示时间段Rj的空闲带宽。根据上述公式可以获取Ti的公网数据传输能力如下:
S2、根据该N个工作流数据中各工作流数据的数据量确定该Ti对应的公网数据传输能力能满足的工作流数据,作为工作流数据候选集,若该工作流数据候选集为非空集,则执行步骤S3,否则执行步骤S5。
在本申请实现方式中,当确定了根据该空闲带宽分布确定该Ti对应的公网数据传输能力,可以根据该N个工作流数据的数据量确定该Ti对应的公网数据传输能力能满足的工作流数据,作为工作流数据候选集。
以下结合实例进行说明,若在T1上的公网数据传输能力为200G,若工作流数据1、工作流数据2和工作流数据3的数据量分别为80G、60G和70G,由于单个工作流传输的数据量都小于200G,因此T1的公网数据传输能力可以单独满足工作流数据1、工作流数据2或工作流数据3的数据量的传输需要。但是由于200G<(80+60+70)G,因此T1的公网数据传输能力不能够同时满足工作流数据1、工作流数据2和工作流数据3的数据量的传输需要,因此需要依据***计算资源对工作流数据作出进一步筛选。
若该工作流数据候选集为非空集,则执行步骤S3,否则执行步骤S5。
S3、对于该工作流数据候选集中的第二工作流数据,根据该第二工作流数据对应的***计算资源时序信息,计算该工作流数据在该Ti的负载增加值,该负载增加值为当处理该第二工作流数据时所需要的***计算资源的量,占总***计算资源的剩余量的比率,该工作流数据候选集中以负载增加值最大的工作流数据作为匹配工作流数据,以该Ti为该匹配工作流数据的启动处理时间点,该第二工作流数据为该工作流数据候选集中的任一工作流数据。
在本申请实现方式中,该负载增加值为当处理一个工作流数据时所需要的***计算资源的量占总***计算资源的剩余量的比率。假设***CPU资源和IO资源各有100份,***当前时间点被占用的IO/CPU为(50,50),则其负载计算方法为:50×50/100×100=0.25。
需要说明的是,若CPU资源和IO资源各有100份,意味着各时间段的工作流数据所占用的***计算资源的CPU资源和IO资源必须小于100。以工作流数据1为例,在T1,如果***计算资源被占用的部分为(0,0),即未被占用***计算资源,加上工作流1后,***计算资源被占用的部分为(50,1),由于所需的CPU=50,IO=1,都小于100,因此可以认为在T1的***计算资源能匹配处理工作流数据1的需要。
通过上述方法,可以确定Ti的总***计算资源的剩余量,然后确定Ti的工作流数据候选集中可以被满足的工作流数据。需要说明的是,在一些可行的实现方式中,可以使用下述公式计算一个工作流数据占用的负载:
(CPU资源的份数×IO资源的份数)÷(总CPU资源的份数×总IO资源的份数)
依据上述计算负载的公式,可以计算Ti对应的工作流数据候选集中各工作流数据对***计算资源的负载增加值。需要说明的是,通过计算出的结果与Ti的被占用的***计算资源相加,得到Ti的总负载值。
以下举例说明,如初始T1的负载为0,若加上工作流数据1后,根据该工作流数据1的***计算资源时序信息,该工作流数据1在T1可以占用的***计算资源为(50,1)。鉴于该工作流数据1的数据量,在T1中可以占用的***计算资源无法满足,则需要确定,T1至之后的若干个时间段可以占用的***计算资源来处理,则得到[(50,1),(50,1),(25,1),(25,1),(10,10),(20,20)],分别对应T1,T2,……,T6,则可以理解为通过T1至T6的时长可以处理完毕该工作流数据1。同样的,可以得到工作流数据候选集中的其他工作流数据的在Ti以及之后的时刻所占用的***计算资源,如工作流数据2和工作流数据3,分别得到[(50,1),(50,1),(0,0),(0,0),(0,0),(0,0)]和[(1,50),(1,50),(0,0),(0,0),(0,0),(0,0)],通过上述信息可以看出工作流数据2和工作流数据3均在T2结束前就完成了数据的处理,在T3中不需要对工作流数据2或工作流数据3进行数据处理。
通过上述公式可以计算得出工作流数据1、工作流数据2和工作流数据3在T1、T2、T3、T4、T5和T6的负载:
工作流数据1,(0.005,0.005,0.0025,0.0025,0.01,0.08);
工作流数据2,(0.005,0.005,0,0,0,0);
工作流数据3,(0.005,0.005,0,0,0,0);
需要说明的是,由于T1-T6的时长中可以将工作流数据1、工作流数据2和工作流数据3的数据量均处理完毕,则T6之后(如T7)的数值都是(0,0),此处不再赘述。在本申请实施例中,将各个时间段的负载相加,得到总负载分别为0.105,0.01和0.01,由于初始负载为0,由于初始负载为1,因此将各工作流数据的总负载除以1,得到给负载增加量为0.105,0.01和0.01。在本申请实现方式中,由于工作流数据1的负载增加量最大,以该工作流数据1对应的工作流为匹配工作流,因此确定T1为工作流数据1的启动处理时间点。
S4、更新数据信息:
令该Ti对应的公网数据传输能力减去该匹配工作流数据的数据量,得到的更新后的该Ti对应的公网数据传输能力;
令该Ti对应的空闲***计算资源减去该匹配工作流所需的***计算资源的量,得到更新后的该Ti对应的总***计算资源的剩余量;
令该工作流数据候选集剔除该匹配工作流数据,得到更新后的该工作流数据候选集。
在本申请实现方式中,确定工作流数据1的启动处理时间点为T1后,可以更新该T1对应的公网数据传输能力,得到200G(T1的公网数据传输能力)-80G(工作流数据1的数据量)=120G,各时间段的公网数据传输能力分别剩余(80,130,140,150,160,170)。
更新该T1对应的总***计算资源的剩余量,从[(100,100),(100,100),(100,100),(100,100),(100,100),(100,100)],减去[(50,1),(50,1),(25,1),(25,1),(10,10),(20,20)]后,剩余[(50,99),(50,99),(75,99),(75,99),(90,90),(80,80)]。
更新工作流数据候选集剩余工作流数据2和工作流数据3,则更新后的工作流数据候选集为非空集,工作流数据2和工作流数据3的启动处理时间点仍未确定,则可以继续基于更新后的信息继续执行S4,以确定工作流数据2和工作流数据3的启动处理时间点。
具体的,在T1上,在工作流数据1的基础上,分别加上工作流数据2的工作流数据3的***计算资源时序信息,对应的资源占用如下:
工作流数据/时间段 | T1 | T2 | T3 | T4 | T5 | T6 |
1 | (50,1) | (50,1) | (25,1) | (25,1) | (10,10) | (20,40) |
1+2 | (100,2) | (100,2) | (25,1) | (25,1) | (10,10) | (20,40) |
1+3 | (51,51) | (51,51) | (25,1) | (25,1) | (10,10) | (20,40) |
由于CPU资源和IO资源的消耗没有超过100份,因此Ti的***计算资源能够满足工作流数据2和工作流数据3的需要,如不满足需要,则从该工作流数据候选集中剔除其中一个。在本申请实现方式中,工作流数据2和工作流数据3分别给增加的负载:
从上述表格可以看出,工作流数据2和工作流数据3的负载增加量相比较,工作流数据3的较大,因此的工作流数据3为工作流数据候选集中的负载增加量最大的工作流数据,以此作为匹配工作流数据,且确定该工作流数据3的启动处理时间点为T1。
然后,根据上述步骤更新工作流数据候选集、该T1对应的公网数据传输能力、该T1对应的总***计算资源的剩余量、该工作流数据候选集。
更新后的工作流候选集仅包括工作流数据2;更新后的Ti对应的公网数据传输能力为各时间段的公网数据传输能力分别剩余20G,各时间段分别剩余(20,70,80,90,100,110);
该Ti对应的总***计算资源的剩余量为:
从[(50,99),(50,99),(75,99),(75,99),(90,90),(80,80)],
减去[(1,50),(1,50),(0,0),(0,0),(0,0),(0,0)]后,
剩余[(49,49),(49,49),(75,99),(75,99),(90,90),(80,80)]。
需要说明的是,T1至T6的公网数据传输能力为(20,70,80,90,100,110),由于工作流数据2需要传输60G数据,因此在时间点T1,已经不能满足工作流数据2所需数据的传输,因此将工作流数据2剔除出工作流数据候选集。若该工作流数据候选集为非空集,则基于该更新后的该Ti对应的公网数据传输能力、该更新后的该Ti对应的总***计算资源的剩余量和该更新后的该工作流数据候选集执行步骤S3,否则执行步骤S5。
S5、更新该i,使得更新后的i为原来的i加1;
若该更新后的i大于n,则结束该循环;
若该更新后的i不大于n,则基于该更新后的该Ti对应的公网数据传输能力、该更新后的该Ti对应的总***计算资源的剩余量、该更新后的该工作流数据候选集和该更新后的i执行该循环的下一回合。
需要说明的是,由于更新i为i加1,即T1更新为T2,从上述表格可以看处,T2公网数据传输能力为70G,可以以此作为确定工作流数据2为T2对应的工作流数据候选集中的一个元素,以上述同样的方式确定工作流数据2的启动处理时间点。经过计算,确定该工作流数据2的启动处理时间点为T3,此处不再赘述。
在给工作流确定启动处理时间点时,不能让其启动处理时间点加上处理时长超过工作流数据的截止时间,如果出现这种情况,需要将该工作流数据通过其他方式进行确定启动处理时间点,此处不做赘述。
311、该服务平台根据预测的该N个工作流数据的数据量确定该N个工作流数据中各工作流数据在第一调度周期的起始时间点上的剩余数据量,得到N个剩余数据量,该第一调度周期为该目标传输周期中的任一调度周期。
在本申请实现方式中,当确定了N个工作流数据中各工作流数据的启动处理时间点后,在每个调度周期,都可以确定一次其传输时间点。需要说明的是,传输周期包括多个调度周期,其中,在本申请实现方式中,目标传输周期包括第一调度周期。
如目标传输周期为R0、R1、R2、……、R143(分别代表时间点0:00、0:10、0:20、……、23:50,以及时间段0:00-0:10、0:10-0:20、0:20-0:30、……、23:50-次日0:00),则第一调度周期可以为其中的30分钟,或者60分的跨度,如R0、R1、R2、R3、R4、R5,或者R0、R1、R2,或者R10、R11、R12、R13、R14、R15,此处不做限定。
需要说明的是,在一些可行的实现方式中,由于第一调度周期可能不是目标传输周期的第一个调度周期,因此在第一调度周期之前,可能已经对该N个工作流数据中的个别工作流数据进行了一定数据量的传输,也可能在上一个传输周期进行一定量的传输,此处不做限定,因此该第一调度周期,需要确定剩余数据量,剩余数据量为预测的数据量减去已经传输的数据量。需要说明的是,如果在之前的调度周期或传输周期没有传输过数据量,那么这个工作量数据的数据量的剩余量还是预测的数据量的100%。
312、该服务平台根据该N个剩余数据量和该目标传输周期中各个预设时间点的空闲带宽,预测在该第一调度周期上该N个工作流数据中各工作流数据对应的传输时长,得到N个传输时长。
在本申请实现方式中,当确定了N个剩余数据量后,可以根据空闲带宽分布预测在该第一调度周期上该N个工作流数据中各工作流数据对应的传输时长,得到N个传输时长。
具体的,可以通过下述公式计算第一工作流数据的剩余数据的传输时长:
其中,RDT表示第一工作流数据的剩余数据的传输时长,PD表示预测的第一工作流数据的数据量,HD表示已经传输的第一工作流数据的数据量,AB表示第一工作流数据在当前第一调度周期中的各预设时间点到对应的启动处理时间点的平均带宽,用以表示第一调度周期中各预设时间点的数据传输能力。需要说明的是,可以通过下述公式计算AB:
其中n表示第一工作流数据在第一调度周期中起始时间点至该第一工作流数据的启动处理时间点的时间段的个数,如启动处理时间点为T10,即4:40,第一调度周期中的起始时间点为R0,即0:00,二者相差4小时40分钟,即28个采样周期,则n=28,Bi表示各时间点的空闲带宽。
313、该服务平台将该第一调度周期的起始时间点到第一工作流数据的启动处理时间点的时长,减去该第一工作流数据的传输时长,得到在该第一调度周期上该第一工作流数据的传输优先级系数,得到N个传输优先级系数,该第一工作流数据为该N个工作流数据中的任一工作流数据,其中,该目标传输策略包括:对于该N个工作流数据中各工作流数据,传输优先级系数的数值越小,越优先进行传输。
具体的,对于第一工作流数据,可以通过下述公式计算其优先级系数:
FT=WT-RDT
其中,WT表示第一工作流数据的启动处理时间点离该第一调度周期的起始时间点的时长,可以用秒为单位表示。
若在第一调度周期中,有三个待传输的工作流数据,分别为工作流数据1、工作流数据2、工作流数据3,可以通过上述方式分别确定优先级系数:
工作流数据 | 预测的数据量 | 剩余数据量 | 传输时长(秒) | 优先级系数(秒) |
1 | 80G | 40G | 16384秒 | 14216秒 |
2 | 60G | 30G | 9830.4秒 | 24369.6秒 |
3 | 60G | 20G | 8192秒 | 22408秒 |
在本申请实现方式中,由于优先级系数的数值越小的工作流数据,说明其越紧急,越需要优先处理,则由于14216<22408<24369.6,所以第一调度周期中,优先传输的顺序是:
工作流数据1>工作流数据3>工作流数据2
即在第一调度周期的目标传输策略可以为:优先传输工作流数据1,待工作流数据1传输完毕,再传输工作流数据3,传输完毕后,再传输工作流数据2。在一些可行的实现方式中,也可以先传输工作流数据1的50%,在传输工作流数据3的50%,再传输工作流数据2的50%,再按顺序传输工作流数据1、工作流数据3、工作流数据2的剩余的50%,此处不做限定。
314、该服务平台向用户侧服务器发送该目标传输策略。
315、该用户侧服务器根据该目标传输策略传输该N个工作流数据。
由于在传输一个非实时的工作流任务对应的工作流数据时,针对该工作流数据的***计算资源会处于闲置状态,在本申请实施例中,服务平台通过确定要执行的非实时的N个工作流任务,并预测该N个工作流任务所需处理的N个工作流数据的数据量,然后根据预测的该N个工作流数据的数据量确定目标传输策略,使得当该服务平台向用户侧服务器发送该目标传输策略后,该用户侧服务器以工作流数据为单位根据该目标传输策略传输该N个工作流数据,由于以工作流数据为单位进行传输,相比较以业务的数据为单位进行传输,对于同一个工作流数据的传输时长减少,则匹配给该工作流数据的***计算资源处于闲置状态的时长也会减少,从而提高了***计算资源的利用率。
上面对本申请的方法进行了描述,下面对功能装置方面进行描述,请参考图5,为一种服务平台500的实施例示意图,包括:
确定模块501,用于确定要执行的非实时的N个工作流任务,其中,N为正整数。
数据量预测模块502,用于预测该N个工作流任务所需处理的N个工作流数据的数据量。
传输策略模块503,用于根据预测的该N个工作流数据的数据量确定目标传输策略。
收发模块504,用于向用户侧服务器发送该目标传输策略,该目标传输策略用于指示该用户侧服务器根据该目标传输策略传输该N个工作流数据。
由于在传输一个非实时的工作流任务对应的工作流数据时,针对该工作流数据的***计算资源会处于闲置状态,在本申请实施例中,服务平台通过确定要执行的非实时的N个工作流任务,并预测该N个工作流任务所需处理的N个工作流数据的数据量,然后根据预测的该N个工作流数据的数据量确定目标传输策略,使得当该服务平台向用户侧服务器发送该目标传输策略后,该用户侧服务器以工作流数据为单位根据该目标传输策略传输该N个工作流数据,由于以工作流数据为单位进行传输,相比较以业务的数据为单位进行传输,对于同一个工作流数据的传输时长减少,则匹配给该工作流数据的***计算资源处于闲置状态的时长也会减少,从而提高了***计算资源的利用率。
在一些可行的实施例中,该数据量预测模块502还用于,预测在目标传输周期的总传输数据量,该总传输数据量包括实时数据的数据量和非实时数据的数据量,该实时数据为在该目标传输周期中需要实时处理的数据,该非实时数据为该N个工作流数据。
请参考图6,为为一种服务平台500的另一实施例示意图,该服务平台500还包括带宽申请模块505,用于根据该总传输数据量申请带宽,该申请的带宽满足在该目标传输周期内传输该总传输数据量的要求。
在一些可行的实施例中,该数据量预测模块502还用于,预测该目标传输周期中各个预设时间点的空闲带宽,其中,空闲带宽为在该目标传输周期中对应的预设时间点中,该申请的带宽减去处理该实时数据所使用的带宽的剩余量,该空闲带宽用于传输该非实时数据。
由于带宽的费用十分昂贵,服务平台在需要处理的数据往往达到每天数百G甚至数T,在一些可行的实现方式中,确定在目标传输周期中的总传输数据量后,再根据该总传输数据量确定需要申请的带宽,可以最大限度地利用带宽资源。
在一些可行的实施例中,当服务平台根据该总传输数据量申请带宽之后,该服务平台还可以预测该目标传输周期中各个预设时间点的空闲带宽,其中,空闲带宽为在该目标传输周期中对应的预设时间点中,该申请的带宽减去处理该实时数据所使用的带宽的剩余量,该空闲带宽用于传输该非实时数据。
在本申请实现方式中,服务平台(如SAAS平台)可以依据其分析能力,提供实时数据处理服务和非实时数据处理服务。其中,实时数据处理服务要求实时性强,一般以分钟计,往往给予最高优先级的带宽和***计算资源。而非实时数据处理服务则对实时性要求对比实时数据处理服务较弱,一般要求以天、周或月为周期,往往使用闲时的带宽和***计算资源,或者在进行实时数据处理服务的非高峰时,使用空闲带宽和***计算资源进行处理。在本申请实现方式中,该服务平台可以根据该总传输数据量申请带宽,以使得申请的带宽可以满足在该目标传输周期内传输该总传输数据量的要求,即非实时数据可以利用在实时数据的传输之余的带宽完成传输。
在本申请实现方式中,当确定了申请的带宽,以及预测实时数据在目标传输周期内需要的带宽,可以确定非实时数据可以使用的带宽,即空闲带宽,空闲带宽为该申请的带宽减去实时数据处理服务所使用的带宽的剩余量,该空闲带宽用于传输非实时数据。
在一些可行的实施例中,请参考图7,为一种服务平台500的另一实施例示意图,该传输策略模块503包括:
确定子模块5031,用于确定在目标处理周期中该N个工作流数据中各工作流数据对应的启动处理时间点,得到N个启动处理时间点。
预测子模块5032,用于根据预测的该N个工作流数据的数据量确定该N个工作流数据中各工作流数据在第一调度周期的起始时间点上的剩余数据量,得到N个剩余数据量,该第一调度周期为该目标传输周期中的任一调度周期。
该预测子模块5032,还用于根据该N个剩余数据量和该目标传输周期中各个预设时间点的空闲带宽,预测在该第一调度周期上该N个工作流数据中各工作流数据对应的传输时长,得到N个传输时长。
传输策略子模块5033,用于将该第一调度周期的起始时间点到第一工作流数据的启动处理时间点的时长,减去该第一工作流数据的传输时长,得到在该第一调度周期上该第一工作流数据的传输优先级系数,得到N个传输优先级系数,该第一工作流数据为该N个工作流数据中的任一工作流数据,其中,该目标传输策略包括:对于该N个工作流数据中各工作流数据,传输优先级系数的数值越小,越优先进行传输。
由于该目标传输策略确定了N个工作流数据进行有序传输,而且优先级系数的数值指示了对应的工作流数据的紧急性,优先级系数的数值越小的工作流数据,说明其可用的时长越小,越需要优先处理,使得越需要紧急越能优先处理。
在一些可行的实施例中,请参考图8,为一种服务平台500的另一实施例示意图,该传输策略模块503还包括:
获取子模块5034,用于获取该N个工作流数据的历史处理信息,该历史处理信息为处理该N个工作流数据中的各工作流数据在过去多个处理周期中各个预设时间点的***计算资源消耗量。
该预测子模块5032,还用于根据该历史处理信息预测在该目标处理周期中该N个工作流数据中各工作流数据的处理时长,得到N个处理时长。
该确定子模块5031,还用于根据该N个处理时长和预设的N个最晚处理完毕时间点确定该N个工作流数据中各工作流数据的最晚处理时间点,得到N个最晚处理时间点,该N个最晚处理时间点用于确保该N个启动处理时间点中的任一启动处理时间点早于对应的最晚启动处理时间点。
如果一个工作流数据在对应的最晚启动处理时间点前仍然不能完成传输,那么则需要增加带宽,以提升数据传输的速度,要么增加***计算资源,减少对工作流数据进行处理的时间,此处不做限定,本步骤通过N个处理时长和N个最晚处理时间点确保该N个工作流数据中任一工作流数据在最晚启动处理时间点之前开始处理。
在一些可行的实施例中,该服务平台可以根据该历史处理信息预测该N个工作流数据中各工作流数据的***计算资源时序信息,得到N个***计算资源时序信息。
由于对该N个工作流数据进行处理需要***计算资源,因此需要确定可用的***计算资源,在本申请实施例中,通过预测N个***计算资源时序信息确定了该N个工作流数据的可用的***计算资源。
在一些可行的实施例中,该预测子模块5032,还用于根据该历史处理信息预测该N个工作流数据中各工作流数据的***计算资源时序信息,得到N个***计算资源时序信息。
在一些可行的实施例中,该确定子模块5031具体用于:
设该目标处理周期中各个预设时间点为Ti,i=1,2,…,n,其中对于任意i=1,2,…,n-1,Ti+1为Ti之后的时间点。
令i等于1,对于该Ti,该服务平台通过执行下述循环确定在该目标处理周期,该N个工作流数据中各工作流数据对应的启动处理时间点,得到N个启动处理时间点:
S1、根据该目标传输周期中各个预设时间点的空闲带宽确定该Ti对应的公网数据传输能力,该公网数据传输能力为该目标传输周期的起始时间点到该Ti的期间所能传输的数据量。
S2、根据该N个工作流数据中各工作流数据的数据量确定该Ti对应的公网数据传输能力能满足的工作流数据,作为工作流数据候选集,若该工作流数据候选集为非空集,则执行步骤S3,否则执行步骤S5。
S3、对于该工作流数据候选集中的第二工作流数据,根据该第二工作流数据对应的***计算资源时序信息,计算该工作流数据在该Ti的负载增加值,该负载增加值为当处理该第二工作流数据时所需要的***计算资源的量,占总***计算资源的剩余量的比率,该工作流数据候选集中以负载增加值最大的工作流数据作为匹配工作流数据,以该Ti为该匹配工作流数据的启动处理时间点,该第二工作流数据为该工作流数据候选集中的任一工作流数据。
S4、令该Ti对应的公网数据传输能力减去该匹配工作流数据的数据量,得到的更新后的该Ti对应的公网数据传输能力。
令该Ti对应的空闲***计算资源减去该匹配工作流所需的***计算资源的量,得到更新后的该Ti对应的总***计算资源的剩余量。
令该工作流数据候选集剔除该匹配工作流数据,得到更新后的该工作流数据候选集,若该工作流数据候选集为非空集,则基于该更新后的该Ti对应的公网数据传输能力、该更新后的该Ti对应的总***计算资源的剩余量和该更新后的该工作流数据候选集执行步骤S3,否则执行步骤S5。
S5、更新该i,使得更新后的i为原来的i加1。
若该更新后的i大于n,则结束该循环。
若该更新后的i不大于n,则基于该更新后的该Ti对应的公网数据传输能力、该更新后的该Ti对应的总***计算资源的剩余量、该更新后的该工作流数据候选集和该更新后的i执行该循环的下一回合。
通过上述方式综合考量了可用的带宽资源和***计算资源计算出优化后的该N个工作流数据对应的启动处理时间点,得到N个启动处理时间,使得用于确定优化的目标传输策略。
请参考图9,为一种用户侧服务器600,包括:
接收模块601,用于接收服务平台向发送的目标传输策略。
传输模块602,用于根据该目标传输策略传输N个工作流数据,其中,N为正整数,该N个工作流数据为对应的非实时的N个工作流任务所需处理的数据。
由于在传输一个非实时的工作流任务对应的工作流数据时,针对该工作流数据的***计算资源会处于闲置状态,在本申请实施例中,该用户侧服务器以工作流数据为单位根据该目标传输策略传输该N个工作流数据,由于以工作流数据为单位进行传输,相比较以业务的数据为单位进行传输,对于同一个工作流数据的传输时长减少,则匹配给该工作流数据的***计算资源处于闲置状态的时长也会减少,从而提高了***计算资源的利用率。
在一些可行的实施例中,该目标传输策略为在第一调度周期上该N个工作流数据对应的N个传输优先级系数,其中,传输优先级系数的数值越小,越优先进行传输。
由于该目标传输策略确定了N个工作流数据进行有序传输,而且优先级系数的数值指示了对应的工作流数据的紧急性,优先级系数的数值越小的工作流数据,说明其可用的时长越小,越需要优先处理,使得越需要紧急越能优先处理。
请参考图10,为一种服务平台700,包括:
总线701、存储器702、收发器703和处理器704。
该总线701,用于连接该存储器702、该收发器703和该处理器704。
该处理器704,用于确定要执行的非实时的N个工作流任务,其中,N为正整数,预测该N个工作流任务所需处理的N个工作流数据的数据量,根据预测的该N个工作流数据的数据量确定目标传输策略。
该收发器703,用于向用户侧服务器发送该目标传输策略,该目标传输策略用于指示该用户侧服务器根据该目标传输策略传输该N个工作流数据。
该存储器702,用于存储执行该处理器的功能的程序和相关数据。
由于在传输一个非实时的工作流任务对应的工作流数据时,针对该工作流数据的***计算资源会处于闲置状态,在本申请实施例中,可以通过确定要执行的非实时的N个工作流任务,并预测该N个工作流任务所需处理的N个工作流数据的数据量,然后根据预测的该N个工作流数据的数据量确定目标传输策略,使得当该向用户侧服务器发送该目标传输策略后,该用户侧服务器以工作流数据为单位根据该目标传输策略传输该N个工作流数据,由于以工作流数据为单位进行传输,相比较以业务的数据为单位进行传输,对于同一个工作流数据的传输时长减少,则匹配给该工作流数据的***计算资源处于闲置状态的时长也会减少,从而提高了***计算资源的利用率。
收发器703可以包括处理器704和标准通信子***之间的通信接口(英文communication interface)。
收发器703还可以进一步包括EIA-RS-232C标准下的通信接口,即数据终端设备(英文:Data Terminal Equipment,缩写:DTE)和数据通讯设备(英文:Data Circuit-terminating Equipment,缩写:DCE)之间串行二进制数据交换接口技术标准的通信接口,也可以包括RS-485协议下的通信接口,此处不作限定。
存储器702可以包括易失性存储器(英文:volatile memory),例如随机存取存储器(英文:random-access memory,缩写:RAM);存储器702也可以包括非易失性存储器(英文:non-volatile memory),例如快闪存储器(英文:flash memory),硬盘(英文:hard diskdrive,缩写:HDD)或固态硬盘(英文:solid-state drive,缩写:SSD);存储器702还可以包括上述种类的存储器的组合,此处不作限定。
可选地,存储器702还可以用于存储程序指令,处理器704可以调用该存储器702中存储的程序指令,执行上述实施例中的一个或多个步骤,或其中可选的实施方式,使得该服务器700实现上述方法的功能。
处理器704可以是中央处理器(英文:central processing unit,缩写:CPU),网络处理器(英文:network processor,缩写:NP)或者CPU和NP的组合。
处理器704还可以进一步包括硬件芯片。上述硬件芯片可以是专用集成电路(英文:application-specific integrated circuit,缩写:ASIC),可编程逻辑器件(英文:programmable logic device,缩写:PLD)或其组合。上述PLD可以是复杂可编程逻辑器件(英文:complex programmable logic device,缩写:CPLD),现场可编程逻辑门阵列(英文:field-programmable gate array,缩写:FPGA),通用阵列逻辑(英文:generic arraylogic,缩写:GAL)或其任意组合。
请参考图11,为一种用户侧服务器800,包括:
总线801、存储器802、收发器803和处理器804。
该总线801,用于连接该存储器802、该收发器803和该处理器804。
该收发器803,用于接收服务平台向发送的目标传输策略。
该处理器804,用于执行该目标传输策略。
该收发器803,还用于根据该目标传输策略传输N个工作流数据,其中,N为正整数,该N个工作流数据为对应的非实时的N个工作流任务所需处理的数据。
该存储器802,用于存储执行该处理器的功能的程序和相关数据。
由于在传输一个非实时的工作流任务对应的工作流数据时,针对该工作流数据的***计算资源会处于闲置状态,在本申请实施例中,该用户侧服务器以工作流数据为单位根据该目标传输策略传输该N个工作流数据,由于以工作流数据为单位进行传输,相比较以业务的数据为单位进行传输,对于同一个工作流数据的传输时长减少,则匹配给该工作流数据的***计算资源处于闲置状态的时长也会减少,从而提高了***计算资源的利用率。
收发器803可以包括处理器804和标准通信子***之间的通信接口(英文communication interface)。
收发器803还可以进一步包括EIA-RS-232C标准下的通信接口,即数据终端设备(英文:Data Terminal Equipment,缩写:DTE)和数据通讯设备(英文:Data Circuit-terminating Equipment,缩写:DCE)之间串行二进制数据交换接口技术标准的通信接口,也可以包括RS-485协议下的通信接口,此处不作限定。
存储器802可以包括易失性存储器(英文:volatile memory),例如随机存取存储器(英文:random-access memory,缩写:RAM);存储器802也可以包括非易失性存储器(英文:non-volatile memory),例如快闪存储器(英文:flash memory),硬盘(英文:hard diskdrive,缩写:HDD)或固态硬盘(英文:solid-state drive,缩写:SSD);存储器802还可以包括上述种类的存储器的组合,此处不作限定。
可选地,存储器802还可以用于存储程序指令,处理器804可以调用该存储器802中存储的程序指令,执行上述实施例中的一个或多个步骤,或其中可选的实施方式,使得该服务器800实现上述方法的功能。
处理器804可以是中央处理器(英文:central processing unit,缩写:CPU),网络处理器(英文:network processor,缩写:NP)或者CPU和NP的组合。
处理器804还可以进一步包括硬件芯片。上述硬件芯片可以是专用集成电路(英文:application-specific integrated circuit,缩写:ASIC),可编程逻辑器件(英文:programmable logic device,缩写:PLD)或其组合。上述PLD可以是复杂可编程逻辑器件(英文:complex programmable logic device,缩写:CPLD),现场可编程逻辑门阵列(英文:field-programmable gate array,缩写:FPGA),通用阵列逻辑(英文:generic arraylogic,缩写:GAL)或其任意组合。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。
所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本发明实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存储的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘Solid State Disk(SSD))等。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的***,装置和单元的具体工作过程,可以参考前述方法实现方式中的对应过程,在此不再赘述。
在本申请所提供的几个实现方式中,应该理解到,所揭露的***,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实现方式仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个***,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实现方式方案的目的。
另外,在本申请各个实现方式中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实现方式所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-OnlyMemory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,以上实现方式仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实现方式对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实现方式所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实现方式技术方案的精神和范围。
Claims (18)
1.一种数据传输方法,其特征在于,包括:
服务平台确定要执行的非实时的N个工作流任务,其中,N为正整数;
所述服务平台预测所述N个工作流任务所需处理的N个工作流数据的数据量;
所述服务平台根据预测的所述N个工作流数据的数据量确定目标传输策略;
所述服务平台向用户侧服务器发送所述目标传输策略,所述目标传输策略用于指示所述用户侧服务器根据所述目标传输策略传输所述N个工作流数据。
2.根据权利要求1所述方法,其特征在于,所述服务平台根据预测的所述N个工作流数据的数据量确定目标传输策略之前,还包括:
所述服务平台预测在目标传输周期的总传输数据量,所述总传输数据量包括实时数据的数据量和非实时数据的数据量,所述实时数据为在所述目标传输周期中需要实时处理的数据,所述非实时数据为所述N个工作流数据;
所述服务平台根据所述总传输数据量申请带宽,所述申请的带宽满足在所述目标传输周期内传输所述总传输数据量的要求。
3.根据权利要求2所述方法,其特征在于,所述服务平台根据所述总传输数据量申请带宽之后,还包括:
所述服务平台预测所述目标传输周期中各个预设时间点的空闲带宽,其中,空闲带宽为在所述目标传输周期中对应的预设时间点中,所述申请的带宽减去处理所述实时数据所使用的带宽的剩余量,所述空闲带宽用于传输所述非实时数据。
4.根据权利要求2或3所述方法,其特征在于,所述服务平台根据预测的所述N个工作流数据的数据量确定目标传输策略包括:
所述服务平台确定在目标处理周期中所述N个工作流数据中各工作流数据对应的启动处理时间点,得到N个启动处理时间点;
所述服务平台根据预测的所述N个工作流数据的数据量确定所述N个工作流数据中各工作流数据在第一调度周期的起始时间点上的剩余数据量,得到N个剩余数据量,所述第一调度周期为所述目标传输周期中的任一调度周期;
所述服务平台根据所述N个剩余数据量和所述目标传输周期中各个预设时间点的空闲带宽,预测在所述第一调度周期上所述N个工作流数据中各工作流数据对应的传输时长,得到N个传输时长;
所述服务平台将所述第一调度周期的起始时间点到第一工作流数据的启动处理时间点的时长,减去所述第一工作流数据的传输时长,得到在所述第一调度周期上所述第一工作流数据的传输优先级系数,得到N个传输优先级系数,所述第一工作流数据为所述N个工作流数据中的任一工作流数据,其中,所述目标传输策略包括:对于所述N个工作流数据中各工作流数据,传输优先级系数的数值越小,越优先进行传输。
5.根据权利要求4所述方法,其特征在于,所述服务平台确定在目标处理周期,所述N个工作流数据中各工作流数据对应的启动处理时间点,得到N个启动处理时间点之前,还包括:
所述服务平台获取所述N个工作流数据的历史处理信息,所述历史处理信息为处理所述N个工作流数据中的各工作流数据在过去多个处理周期中各个预设时间点的***计算资源消耗量;
所述服务平台根据所述历史处理信息预测在所述目标处理周期中所述N个工作流数据中各工作流数据的处理时长,得到N个处理时长;
所述服务平台根据所述N个处理时长和预设的N个最晚处理完毕时间点确定所述N个工作流数据中各工作流数据的最晚处理时间点,得到N个最晚处理时间点,所述N个最晚处理时间点用于确保所述N个启动处理时间点中的任一启动处理时间点早于对应的最晚启动处理时间点。
6.根据权利要求5所述方法,其特征在于,所述服务平台确定在目标处理周期中所述N个工作流数据中各工作流数据对应的启动处理时间点,得到N个启动处理时间点之前,还包括:
所述服务平台根据所述历史处理信息预测所述N个工作流数据中各工作流数据的***计算资源时序信息,得到N个***计算资源时序信息。
7.根据权利要求6所述方法,其特征在于,所述服务平台确定在目标处理周期中所述N个工作流数据中各工作流数据对应的启动处理时间点,得到N个启动处理时间点包括:
设所述目标处理周期中各个预设时间点为Ti,i=1,2,…,n,其中对于任意i=1,2,…,n-1,Ti+1为Ti之后的时间点;
令i等于1,对于所述Ti,所述服务平台通过执行下述循环确定在所述目标处理周期,所述N个工作流数据中各工作流数据对应的启动处理时间点,得到N个启动处理时间点:
S1、根据所述目标传输周期中各个预设时间点的空闲带宽确定所述Ti对应的公网数据传输能力,所述公网数据传输能力为所述目标传输周期的起始时间点到所述Ti的期间所能传输的数据量;
S2、根据所述N个工作流数据中各工作流数据的数据量确定所述Ti对应的公网数据传输能力能满足的工作流数据,作为工作流数据候选集,若所述工作流数据候选集为非空集,则执行步骤S3,否则执行步骤S5;
S3、对于所述工作流数据候选集中的第二工作流数据,根据所述第二工作流数据对应的***计算资源时序信息,计算所述工作流数据在所述Ti的负载增加值,所述负载增加值为当处理所述第二工作流数据时所需要的***计算资源的量,占总***计算资源的剩余量的比率,所述工作流数据候选集中以负载增加值最大的工作流数据作为匹配工作流数据,以所述Ti为所述匹配工作流数据的启动处理时间点,所述第二工作流数据为所述工作流数据候选集中的任一工作流数据;
S4、令所述Ti对应的公网数据传输能力减去所述匹配工作流数据的数据量,得到的更新后的所述Ti对应的公网数据传输能力;
令所述Ti对应的空闲***计算资源减去所述匹配工作流所需的***计算资源的量,得到更新后的所述Ti对应的总***计算资源的剩余量;
令所述工作流数据候选集剔除所述匹配工作流数据,得到更新后的所述工作流数据候选集,若所述工作流数据候选集为非空集,则基于所述更新后的所述Ti对应的公网数据传输能力、所述更新后的所述Ti对应的总***计算资源的剩余量和所述更新后的所述工作流数据候选集执行步骤S3,否则执行步骤S5;
S5、更新所述i,使得更新后的i为原来的i加1;
若所述更新后的i大于n,则结束所述循环;
若所述更新后的i不大于n,则基于所述更新后的所述Ti对应的公网数据传输能力、所述更新后的所述Ti对应的总***计算资源的剩余量、所述更新后的所述工作流数据候选集和所述更新后的i执行所述循环的下一回合。
8.一种数据传输方法,其特征在于,包括:
用户侧服务器接收服务平台向发送的目标传输策略;
所述用户侧服务器根据所述目标传输策略传输N个工作流数据,其中,N为正整数,所述N个工作流数据为对应的非实时的N个工作流任务所需处理的数据。
9.根据权利要求8所述方法,其特征在于,所述目标传输策略为在第一调度周期上所述N个工作流数据的N个传输优先级系数,其中,传输优先级系数的数值越小,越优先进行传输。
10.一种服务平台,其特征在于,包括:
确定模块,用于确定要执行的非实时的N个工作流任务,其中,N为正整数;
数据量预测模块,用于预测所述N个工作流任务所需处理的N个工作流数据的数据量;
传输策略模块,用于根据预测的所述N个工作流数据的数据量确定目标传输策略;
收发模块,用于向用户侧服务器发送所述目标传输策略,所述目标传输策略用于指示所述用户侧服务器根据所述目标传输策略传输所述N个工作流数据。
11.根据权利要求10所述服务平台,其特征在于,
所述数据量预测模块还用于,预测在目标传输周期的总传输数据量,所述总传输数据量包括实时数据的数据量和非实时数据的数据量,所述实时数据为在所述目标传输周期中需要实时处理的数据,所述非实时数据为所述N个工作流数据;
带宽申请模块,用于根据所述总传输数据量申请带宽,所述申请的带宽满足在所述目标传输周期内传输所述总传输数据量的要求。
12.根据权利要求11所述服务平台,其特征在于,
所述数据量预测模块还用于,预测所述目标传输周期中各个预设时间点的空闲带宽,其中,空闲带宽为在所述目标传输周期中对应的预设时间点中,所述申请的带宽减去处理所述实时数据所使用的带宽的剩余量,所述空闲带宽用于传输所述非实时数据。
13.根据权利要求11或12所述服务平台,其特征在于,所述传输策略模块包括:
确定子模块,用于确定在目标处理周期中所述N个工作流数据中各工作流数据对应的启动处理时间点,得到N个启动处理时间点;
预测子模块,用于根据预测的所述N个工作流数据的数据量确定所述N个工作流数据中各工作流数据在第一调度周期的起始时间点上的剩余数据量,得到N个剩余数据量,所述第一调度周期为所述目标传输周期中的任一调度周期;
所述预测子模块,还用于根据所述N个剩余数据量和所述目标传输周期中各个预设时间点的空闲带宽,预测在所述第一调度周期上所述N个工作流数据中各工作流数据对应的传输时长,得到N个传输时长;
传输策略子模块,用于将所述第一调度周期的起始时间点到第一工作流数据的启动处理时间点的时长,减去所述第一工作流数据的传输时长,得到在所述第一调度周期上所述第一工作流数据的传输优先级系数,得到N个传输优先级系数,所述第一工作流数据为所述N个工作流数据中的任一工作流数据,其中,所述目标传输策略包括:对于所述N个工作流数据中各工作流数据,传输优先级系数的数值越小,越优先进行传输。
14.根据权利要求13所述服务平台,其特征在于,所述传输策略模块还包括:
获取子模块,用于获取所述N个工作流数据的历史处理信息,所述历史处理信息为处理所述N个工作流数据中的各工作流数据在过去多个处理周期中各个预设时间点的***计算资源消耗量;
所述预测子模块,还用于根据所述历史处理信息预测在所述目标处理周期中所述N个工作流数据中各工作流数据的处理时长,得到N个处理时长;
所述确定子模块,还用于根据所述N个处理时长和预设的N个最晚处理完毕时间点确定所述N个工作流数据中各工作流数据的最晚处理时间点,得到N个最晚处理时间点,所述N个最晚处理时间点用于确保所述N个启动处理时间点中的任一启动处理时间点早于对应的最晚启动处理时间点。
15.根据权利要求14所述服务平台,其特征在于,
所述预测子模块,还用于根据所述历史处理信息预测所述N个工作流数据中各工作流数据的***计算资源时序信息,得到N个***计算资源时序信息。
16.根据权利要求15所述服务平台,其特征在于,所述确定子模块具体用于:
设所述目标处理周期中各个预设时间点为Ti,i=1,2,…,n,其中对于任意i=1,2,…,n-1,Ti+1为Ti之后的时间点;
令i等于1,对于所述Ti,所述服务平台通过执行下述循环确定在所述目标处理周期,所述N个工作流数据中各工作流数据对应的启动处理时间点,得到N个启动处理时间点:
S1、根据所述目标传输周期中各个预设时间点的空闲带宽确定所述Ti对应的公网数据传输能力,所述公网数据传输能力为所述目标传输周期的起始时间点到所述Ti的期间所能传输的数据量;
S2、根据所述N个工作流数据中各工作流数据的数据量确定所述Ti对应的公网数据传输能力能满足的工作流数据,作为工作流数据候选集,若所述工作流数据候选集为非空集,则执行步骤S3,否则执行步骤S5;
S3、对于所述工作流数据候选集中的第二工作流数据,根据所述第二工作流数据对应的***计算资源时序信息,计算所述工作流数据在所述Ti的负载增加值,所述负载增加值为当处理所述第二工作流数据时所需要的***计算资源的量,占总***计算资源的剩余量的比率,所述工作流数据候选集中以负载增加值最大的工作流数据作为匹配工作流数据,以所述Ti为所述匹配工作流数据的启动处理时间点,所述第二工作流数据为所述工作流数据候选集中的任一工作流数据;
S4、令所述Ti对应的公网数据传输能力减去所述匹配工作流数据的数据量,得到的更新后的所述Ti对应的公网数据传输能力;
令所述Ti对应的空闲***计算资源减去所述匹配工作流所需的***计算资源的量,得到更新后的所述Ti对应的总***计算资源的剩余量;
令所述工作流数据候选集剔除所述匹配工作流数据,得到更新后的所述工作流数据候选集,若所述工作流数据候选集为非空集,则基于所述更新后的所述Ti对应的公网数据传输能力、所述更新后的所述Ti对应的总***计算资源的剩余量和所述更新后的所述工作流数据候选集执行步骤S3,否则执行步骤S5;
S5、更新所述i,使得更新后的i为原来的i加1;
若所述更新后的i大于n,则结束所述循环;
若所述更新后的i不大于n,则基于所述更新后的所述Ti对应的公网数据传输能力、所述更新后的所述Ti对应的总***计算资源的剩余量、所述更新后的所述工作流数据候选集和所述更新后的i执行所述循环的下一回合。
17.一种用户侧服务器,其特征在于,包括:
接收模块,用于接收服务平台向发送的目标传输策略;
传输模块,用于根据所述目标传输策略传输N个工作流数据,其中,N为正整数,所述N个工作流数据为对应的非实时的N个工作流任务所需处理的数据。
18.根据权利要求17所述用户侧服务器,其特征在于,所述目标传输策略为在第一调度周期上所述N个工作流数据对应的N个传输优先级系数,其中,传输优先级系数的数值越小,越优先进行传输。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810492197.3A CN110519317B (zh) | 2018-05-21 | 2018-05-21 | 一种数据传输方法以及设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810492197.3A CN110519317B (zh) | 2018-05-21 | 2018-05-21 | 一种数据传输方法以及设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110519317A CN110519317A (zh) | 2019-11-29 |
CN110519317B true CN110519317B (zh) | 2021-02-12 |
Family
ID=68621852
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810492197.3A Active CN110519317B (zh) | 2018-05-21 | 2018-05-21 | 一种数据传输方法以及设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110519317B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112328289B (zh) * | 2020-11-26 | 2023-08-25 | 新华三信息技术有限公司 | 一种固件升级方法、装置、设备及存储介质 |
CN114697947B (zh) * | 2020-12-29 | 2023-07-25 | 成都鼎桥通信技术有限公司 | 双操作***的数据传输方法和装置 |
CN112565918B (zh) * | 2021-02-23 | 2021-05-25 | 北京创世云科技股份有限公司 | 一种接管非实时数据的方法、装置及电子设备 |
Citations (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2008074415A1 (en) * | 2006-12-19 | 2008-06-26 | Alcatel Lucent | Method for distributing non real-time media in a non real-time media distribution system, a related system, a related media server and media client |
CN101697141A (zh) * | 2009-10-30 | 2010-04-21 | 清华大学 | 网格中基于历史数据建模的作业性能预测方法 |
CN102368708A (zh) * | 2011-12-02 | 2012-03-07 | 苏州阔地网络科技有限公司 | 一种网络会议数据传输控制方法及*** |
CN102984244A (zh) * | 2012-11-21 | 2013-03-20 | 用友软件股份有限公司 | 单据数据的上传***和上传方法 |
CN103533032A (zh) * | 2013-09-26 | 2014-01-22 | 北京奇虎科技有限公司 | 带宽调节装置及方法 |
CN103761309A (zh) * | 2014-01-23 | 2014-04-30 | ***(深圳)有限公司 | 一种运营数据处理方法及*** |
CN104794003A (zh) * | 2015-02-04 | 2015-07-22 | 汉鼎信息科技股份有限公司 | 一种整合实时和非实时模式的大数据分析*** |
CN104834571A (zh) * | 2015-05-25 | 2015-08-12 | 南京大学 | 一种应用于云工作流调度的数据预取方法 |
CN105099778A (zh) * | 2015-07-27 | 2015-11-25 | 中国联合网络通信集团有限公司 | 一种带宽分配的方法及装置 |
CN105897864A (zh) * | 2016-03-28 | 2016-08-24 | 东南大学 | 一种云工作流调度方法 |
CN106412628A (zh) * | 2015-07-30 | 2017-02-15 | 华为技术有限公司 | 一种带宽调整方法及相关设备 |
CN106793133A (zh) * | 2017-01-06 | 2017-05-31 | 国网江苏省电力公司信息通信分公司 | 一种电力无线通信***中保障多业务QoS的调度方法 |
CN107292419A (zh) * | 2017-05-22 | 2017-10-24 | 四川大学 | 一种混合云环境中动态多工作流调度执行的费用优化策略 |
CN107656799A (zh) * | 2017-11-06 | 2018-02-02 | 福建师范大学 | 一种多云环境下考虑通信和计算代价的工作流调度方法 |
CN107659433A (zh) * | 2017-09-08 | 2018-02-02 | 中国联合网络通信集团有限公司 | 一种云资源调度方法及设备 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2013135450A (ja) * | 2011-12-27 | 2013-07-08 | Fujitsu Ltd | ネットワーク制御方法、ネットワークシステム及び転送装置 |
-
2018
- 2018-05-21 CN CN201810492197.3A patent/CN110519317B/zh active Active
Patent Citations (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2008074415A1 (en) * | 2006-12-19 | 2008-06-26 | Alcatel Lucent | Method for distributing non real-time media in a non real-time media distribution system, a related system, a related media server and media client |
CN101697141A (zh) * | 2009-10-30 | 2010-04-21 | 清华大学 | 网格中基于历史数据建模的作业性能预测方法 |
CN102368708A (zh) * | 2011-12-02 | 2012-03-07 | 苏州阔地网络科技有限公司 | 一种网络会议数据传输控制方法及*** |
CN102984244A (zh) * | 2012-11-21 | 2013-03-20 | 用友软件股份有限公司 | 单据数据的上传***和上传方法 |
CN103533032A (zh) * | 2013-09-26 | 2014-01-22 | 北京奇虎科技有限公司 | 带宽调节装置及方法 |
CN103761309A (zh) * | 2014-01-23 | 2014-04-30 | ***(深圳)有限公司 | 一种运营数据处理方法及*** |
CN104794003A (zh) * | 2015-02-04 | 2015-07-22 | 汉鼎信息科技股份有限公司 | 一种整合实时和非实时模式的大数据分析*** |
CN104834571A (zh) * | 2015-05-25 | 2015-08-12 | 南京大学 | 一种应用于云工作流调度的数据预取方法 |
CN105099778A (zh) * | 2015-07-27 | 2015-11-25 | 中国联合网络通信集团有限公司 | 一种带宽分配的方法及装置 |
CN106412628A (zh) * | 2015-07-30 | 2017-02-15 | 华为技术有限公司 | 一种带宽调整方法及相关设备 |
CN105897864A (zh) * | 2016-03-28 | 2016-08-24 | 东南大学 | 一种云工作流调度方法 |
CN106793133A (zh) * | 2017-01-06 | 2017-05-31 | 国网江苏省电力公司信息通信分公司 | 一种电力无线通信***中保障多业务QoS的调度方法 |
CN107292419A (zh) * | 2017-05-22 | 2017-10-24 | 四川大学 | 一种混合云环境中动态多工作流调度执行的费用优化策略 |
CN107659433A (zh) * | 2017-09-08 | 2018-02-02 | 中国联合网络通信集团有限公司 | 一种云资源调度方法及设备 |
CN107656799A (zh) * | 2017-11-06 | 2018-02-02 | 福建师范大学 | 一种多云环境下考虑通信和计算代价的工作流调度方法 |
Also Published As
Publication number | Publication date |
---|---|
CN110519317A (zh) | 2019-11-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101080736B (zh) | 用于自动控制网格作业分发的计算机执行方法和*** | |
US9504061B2 (en) | Networked resource provisioning system | |
Wang et al. | To reserve or not to reserve: Optimal online {Multi-Instance} acquisition in {IaaS} clouds | |
Fang et al. | Evolving smart grid information management cloudward: A cloud optimization perspective | |
CN110519317B (zh) | 一种数据传输方法以及设备 | |
CN103825964B (zh) | 一种基于云计算PaaS平台的SLS调度装置和方法 | |
Wang et al. | Optimal online multi-instance acquisition in IaaS clouds | |
CN105306277A (zh) | 消息队列的消息调度方法及消息调度装置 | |
CN109636304B (zh) | 业务***的发布方法及装置、存储介质、电子装置 | |
CN103561078A (zh) | 电信运营***及业务服务方法 | |
CN110839069B (zh) | 一种节点数据部署方法、部署节点、***及介质 | |
CN115421930B (zh) | 任务处理方法、***、装置、设备及计算机可读存储介质 | |
CN111865622A (zh) | 基于规则引擎集群的云服务计量计费方法及*** | |
CN109039817A (zh) | 一种用于流量监控的信息处理方法和装置 | |
CN110149377A (zh) | 一种视频服务节点资源分配方法、***、装置及存储介质 | |
CN111585798A (zh) | 一种网络资源参数配置方法、装置和计算机可读存储介质 | |
CN113127225A (zh) | 一种数据处理任务的调度方法、装置和*** | |
CN111756589A (zh) | 云资源管理方法、装置、云服务器及存储介质 | |
Li et al. | Joint scheduling and source selection for background traffic in erasure-coded storage | |
CN111754218A (zh) | 支付方式推荐方法和装置 | |
CN110515991A (zh) | 批量配送文件的收集方法及装置、存储介质、终端 | |
CN106845926B (zh) | 一种第三方支付监管***分布式数据流处理方法及*** | |
CN101800879B (zh) | 基于下载式中间件的摊分结算方法、***及终端 | |
CN114219468A (zh) | 基于私有容器云的微服务计费方法、装置及相关组件 | |
CN114896296A (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 |