CN115858115A - 广告物料的处理方法和装置 - Google Patents

广告物料的处理方法和装置 Download PDF

Info

Publication number
CN115858115A
CN115858115A CN202211497210.7A CN202211497210A CN115858115A CN 115858115 A CN115858115 A CN 115858115A CN 202211497210 A CN202211497210 A CN 202211497210A CN 115858115 A CN115858115 A CN 115858115A
Authority
CN
China
Prior art keywords
target
task
initial
tasks
level
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
CN202211497210.7A
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.)
Beijing Baidu Netcom Science and Technology Co Ltd
Original Assignee
Beijing Baidu Netcom Science and 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 Beijing Baidu Netcom Science and Technology Co Ltd filed Critical Beijing Baidu Netcom Science and Technology Co Ltd
Priority to CN202211497210.7A priority Critical patent/CN115858115A/zh
Publication of CN115858115A publication Critical patent/CN115858115A/zh
Pending legal-status Critical Current

Links

Images

Landscapes

  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本公开提供了一种广告物料的处理方法和装置,涉及数据处理和计算机技术,具体涉及大数据和智能搜索。实现方案为:获取广告物料的下载请求,下载请求中包括广告物料的层级信息,根据层级信息,将下载请求拆分为多个分片任务,分片任务为下载请求对应的请求业务的最小任务单元,根据多个分片任务和获取到的线程数量,为各线程分配分片任务,得到各线程各自对应的线程任务,并控制各线程并行执行各自对应的线程任务,每一线程任务中包括至少一个分片任务,避免了用于执行下载请求的整体任务的操作单元的负载热点的弊端,提高了执行下载请求的有效性和可靠性,且提高了下载效率,减少了用户的等待时间,实现了负载均衡,提高了用户的下载体验。

Description

广告物料的处理方法和装置
技术领域
本公开涉及数据处理和计算机技术,具体涉及大数据和智能搜索,尤其涉及一种广告物料的处理方法和装置。
背景技术
随着互联网技术地发展,广告已从传统的方式发展为互联网广告,互联网广告可以理解为通过网络广告平台在网络上投放广告,广告物料可以理解为广告在互联网中展现的内容。
在一些实施例中,可以通过串行的方式下载广告物料。
然而,由于广告在互联网中的发展较为迅速,广告物料的数量较为庞大,采用上述方式存在下载效率低的弊端。
发明内容
本公开提供了一种用于提高下载广告物料的效率的广告物料的处理方法和装置。
根据本公开的第一方面,提供了一种广告物料的处理方法,获取广告物料的下载请求,其中,所述下载请求中包括所述广告物料的层级信息;
根据所述层级信息,将所述下载请求拆分为多个分片任务,其中,分片任务为所述下载请求对应的请求业务的最小任务单元;
根据所述多个分片任务和获取到的线程数量,为各线程分配分片任务,得到各线程各自对应的线程任务,并控制各线程并行执行各自对应的线程任务,其中,每一线程任务中包括至少一个分片任务。
根据本公开的第二方面,提供了一种广告物料的处理装置,包括:
第一获取单元,用于获取广告物料的下载请求,其中,所述下载请求中包括所述广告物料的层级信息;
拆分单元,用于根据所述层级信息,将所述下载请求拆分为多个分片任务,其中,分片任务为所述下载请求对应的请求业务的最小任务单元;
分配单元,用于根据所述多个分片任务和获取到的线程数量,为各线程分配分片任务,得到各线程各自对应的线程任务;
控制单元,用于控制各线程并行执行各自对应的线程任务,其中,每一线程任务中包括至少一个分片任务。
根据本公开的第三方面,提供了一种电子设备,包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行第一方面所述的方法。
根据本公开的第四方面,提供了一种存储有计算机指令的非瞬时计算机可读存储介质,其中,所述计算机指令用于使所述计算机执行根据第一方面所述的方法。
根据本公开的第五方面,提供了一种计算机程序产品,所述计算机程序产品包括:计算机程序,所述计算机程序存储在可读存储介质中,电子设备的至少一个处理器可以从所述可读存储介质读取所述计算机程序,所述至少一个处理器执行所述计算机程序使得电子设备执行第一方面所述的方法。
本公开提供的广告物料的处理方法和装置,包括:获取广告物料的下载请求,其中,下载请求中包括广告物料的层级信息,根据层级信息,将下载请求拆分为多个分片任务,其中,分片任务为下载请求对应的请求业务的最小任务单元,根据多个分片任务和获取到的线程数量,为各线程分配分片任务,得到各线程各自对应的线程任务,并控制各线程并行执行各自对应的线程任务,其中,每一线程任务中包括至少一个分片任务,通过基于层级信息将下载请求拆分为最小任务单元的多个分片任务,并结合线程数量为各线程分配分片任务,以得到并控制各线程并行执行各自对应的线程任务的技术特征,避免了用于执行下载请求的整体任务的操作单元的负载热点的弊端,提高了执行下载请求的有效性和可靠性,且提高了执行下载请求的效率,减少了用户的等待时间,实现了负载均衡,提高了用户的下载体验。
应当理解,本部分所描述的内容并非旨在标识本公开的实施例的关键或重要特征,也不用于限制本公开的范围。本公开的其它特征将通过以下的说明书而变得容易理解。
附图说明
附图用于更好地理解本方案,不构成对本公开的限定。其中:
图1是根据本公开第一实施例的示意图;
图2是根据本公开第二实施例的示意图;
图3是根据本公开广告物料的处理方法的原理示意图一;
图4是根据本公开第三实施例的示意图;
图5是根据本公开广告物料的处理方法的原理示意图二;
图6是根据本公开第四实施例的示意图;
图7是根据本公开第五实施例的示意图;
图8是根据本公开第六实施例的示意图;
图9是根据本公开第七实施例的示意图;
图10是用来实现本公开实施例的广告物料的处理方法的电子设备的框图。
具体实施方式
以下结合附图对本公开的示范性实施例做出说明,其中包括本公开实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本公开的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
为便于读者理解本公开,现对本公开的至少部分术语解释如下:
广告物料,是指广告在互联网中展现的内容。广告物料的形式包括文字、图片、以及动画等。广告物料用于描述产品的信息。
分页(Paging),是一种操作系统里存储器管理的一种技术,可以使电脑的主存可以使用存储在辅助存储器中的数据。
线程(thread),是指操作系统能够进行运算调度的最小单位。它被包含在进程之中,是进程中的实际运作单位。一条线程指的是进程中一个单一顺序的控制流,一个进程中可以并发多个线程,每条线程并行执行不同的任务。
在互联网广告领域,操作系统可以接收用户基于客户端发起的广告物料的下载请求,并将下载请求分发给相应的操作单元,以由该操作单元通过串行的方式执行下载请求。
其中,操作单元可以为物理机器,如计算机,也可以为物理机器中的部分组件,如计算机中从处理器或者芯片。
基于任务的内容的多少可以将任务分为大任务和小任务,大任务是指内容相对较多的任务,小任务是指内容相对较少的任务。
相对而言,广告物料数量可能会较大,如广告物料数量可能达到千万级别,因此,广告物料的下载请求很可能为操作单元需要执行的大任务,针对如此庞大数量的广告物料的下载请求,若采用串行的方式完成,一方面,很容易造成操作单元的负载热点,尤其当多个下载请求被分配至同一操作单元时,造成负载热点,可能导致该操作单元上的全部下载请求均执行失败;另一方面,串行下载需逐一下载,消耗的时间更多,效率较低。
为了避免上述技术问题中的至少一种,本公开提供了经过创造性劳动后的技术构思:在接收到广告物料的下载请求之后,根据下载请求中的层级信息对下载请求进行拆分,得到最小任务单元的分片任务,并基于分片任务和线程数量为各线程分配线程任务,且控制各线程并行执行各自对应的线程任务。
基于上述技术构思,本公开提供一种广告物料的处理方法和装置,应用于数据处理和计算机技术,具体涉及大数据和智能搜索,以达到提高广告物理处理的效率,节约广告物料处理的资源。
图1是根据本公开第一实施例的示意图,如图1所示,本公开的广告物料的处理方法包括:
S101:获取广告物料的下载请求。其中,下载请求中包括广告物料的层级信息。
层级信息是指广告物料的层级的信息,本实施例对层级信息的形式和内容不做限定。
示例性的,本实施例的执行主体可以为广告物料的处理装置(下文简称处理装置),处理装置可以为服务器,也可以为计算机,也可以为终端设备,也可以为处理器,也可以为芯片,等等,此处不再一一列举。
其中,处理装置为服务器时,可以为独立的服务器,也可以为服务器集群,可以为云端服务器,也可以为本地服务器,本实施例不做限定。
在一些实施例中,处理装置可以与用户设备建立通信链路,用户设备可以基于该通信链路,将用户触控用户设备生成的下载请求发送给处理装置,相应的,处理装置接收由用户设备发起的下载请求。
应该理解的是,该实施例只是用于示范性地说明,处理装置获取下载请求的可能方式,而不能理解为对处理装置获取下载请求的方式的限定。
S102:根据层级信息,将下载请求拆分为多个分片任务。其中,分片任务为下载请求对应的请求业务的最小任务单元。
示例性的,可以预先确定处理装置可支持的请求业务的最小任务单元,以基于层级信息对下载请求进行拆分处理,直至得到最小任务单元的任务,即分片任务。
S103:根据多个分片任务和获取到的线程数量,为各线程分配分片任务,得到各线程各自对应的线程任务,并控制各线程并行执行各自对应的线程任务。其中,每一线程任务中包括至少一个分片任务。
一方面,通过将下载请求拆分为多个分片任务,可以将整体任务拆分为布局任务,即将大任务拆分为小任务,相当于从任务的量的维度将整体任务进行拆分,通过结合对下载请求进行拆分得到的各分片任务、以及线程的数量,为各线程分配分片任务,以得到各线程各自对应的线程任务,相当于从执行任务的操作单元的维度对整体任务进行分摊,以使得将整体任务拆分为局部任务,并由不同的操作单元执行各自对应的部分局部任务,从而完成整体任务的执行,以避免上述实施例所造成的操作单元的负载热点,提高了执行下载请求的有效性和可靠性。
另一方面,通过由多个线程并行执行各自对应的线程任务,可以避免串行执行任务造成的效率低的弊端,从而提高了执行下载请求的效率,减少了用户的等待时间,提高了用户的下载体验。
基于上述分析可知,本公开提供了一种广告物料的处理方法,包括:获取广告物料的下载请求,其中,下载请求中包括广告物料的层级信息,根据层级信息,将下载请求拆分为多个分片任务,其中,分片任务为下载请求对应的请求业务的最小任务单元,根据多个分片任务和获取到的线程数量,为各线程分配分片任务,得到各线程各自对应的线程任务,并控制各线程并行执行各自对应的线程任务,其中,每一线程任务中包括至少一个分片任务,在本实施例中,通过基于层级信息将下载请求拆分为最小任务单元的多个分片任务,并结合线程数量为各线程分配分片任务,以得到并控制各线程并行执行各自对应的线程任务的技术特征,避免了用于执行下载请求的整体任务的操作单元的负载热点的弊端,提高了执行下载请求的有效性和可靠性,且提高了执行下载请求的效率,减少了用户的等待时间,实现了负载均衡,提高了用户的下载体验。
为使读者从将下载请求拆分为分片任务的维度,更加深刻地理解本公开的实现原理,现结合图2对本公开的广告物料的处理方法进行更为详细地阐述。其中,图2是根据本公开第二实施例的示意图,如图2所示,本公开的广告物料的处理方法包括:
S201:获取广告物料的下载请求。其中,下载请求中包括广告物料的层级信息。
应该理解的是,为了避免繁琐的陈述,关于本实施例与上述实施例中相同的技术特征,本实施例不做限定。
示例性的,关于S201的实现原理,可以参见S101的实现原理,此处不再赘述。
在一些实施例中,层级信息可以通过层级列表的方式表征,如下载请求中可以包括层级列表,以通过层级列表的方式表征层级信息。
示例性的,层级列表中可以包括多个层级,如计划层级、单元层级、关键词层级、以及创意层级,等等,此处不再一一列举。
其中,计划层级,是指表征广告物料投放的地域和时段等信息的层级。
单元层级,是指表征用户在搜索广告时,所搜索的词语与广告物料的匹配方式的层级。
关键词层级,是指表征所投放的广告物料中涉及的关键词的层级。
创意层级,是指表征所投放广告物料对应的广告内容的层级。
应该理解的是,上述各层级只是用于示范性地说明层级信息中可能包括的层级,而不能理解为对层级信息的限定。例如,在另一些实施例中,层级信息中还可能包括账户层级,账户层级可以理解为用户的账号信息的层级。
S202:根据层级信息中的层级,生成层级对应的目标层级任务。其中,层级具有对应的目标计划标识列表。
目标层级任务中的“目标”,用于与后文中的其他层级任务进行区分,如用于与后文中的预存层级任务和初始层级任务等进行区分,而不能理解为对目标层级任务的限定。
同理,目标计划标识列表中的“目标”,用于与后文中的其他计划标识列表进行区分,如用于与后文中的初始计划标识列表进行区分,而不能理解为对目标计划标识列表的限定。
例如,针对计划层级,可以生成计划层级对应的目标层级任务;针对单元层级,可以生成单元层级对应的目标层级任务;针对关键词层级,可以生成关键词层级对应的目标层级任务;针对创意层级,可以生成创意层级对应的目标层级任务。
一个层级具有与之对应的目标计划标识列表,如计划层级具有与之对应的目标计划标识列表,目标计划标识列表为包括目标计划标识的列表。
在一些实施例中,一个层级可以对应一个层级任务。
S203:根据目标计划标识列表生成目标层级任务的多个目标分组任务。
示例性的,根据目标计划标识列表将目标层级任务进行拆分,以得到比目标层级任务粒度更小的多个目标分组任务。
同理,目标分组任务中的“目标”用于与后文中的其他分组任务进行区分,如用于与后文中的初始分组任务进行区分,而不能理解为对目标分组任务的限定。
在一些实施例中,目标计划标识列表中包括多个目标计划标识,S203可以包括如下步骤:
第一步骤:获取各目标计划标识各自对应的广告物料数量。
示例性的,目标计划标识的数量为多个,针对每一个目标计划标识,可以获取该目标计划标识对应的广告物料数量。
例如,处理装置可以预先存储每一计划标识以及该计划标识对应的广告物料数量的映射关系,以便在得到目标计划标识时,基于该映射关系获取该目标计划标识对应的广告物料数量。
第二步骤:根据预设的广告物料参照数量、各目标计划标识各自对应的广告物料数量,对各目标计划标识进行合并,得到多个目标分组任务。
其中,广告物料参照数量是基于获取历史广告物料数量的时长确定的。
广告物料参照数量可以理解为广告物料合适数量,如处理装置适合获取的广告物料的数量,以使得处理装置既不会宕机,也不会因负载太少而过多消耗资源。
在本实施例中,相对而言,广告物料参照数量为处理装置获取广告物料相对合适的数量,因此,当结合广告物料参照数量确定多个目标分组任务时,可以使得多个目标分组任务的划分与处理装置的获取广告物料的性能高度关联,可以提高对处理装置的资源的合理利用,确保广告物料获取的有效性和可靠性。
在一些实施例中,第二步骤可以包括如下子步骤:
第一子步骤:将目标计划标识列表中的每一目标计划标识确定为一个初始任务。
示例性的,目标计划标识列表中包括多个目标计划标识,每一个目标计划标识可以理解为一个子目标计划标识列表,如目标计划标识列表包括多个子目标计划标识列表,且一个子目标计划标识列表包括一个目标计划标识,一个子目标计划标识列表为一个初始任务。
第二子步骤:将满足预设条件的多个初始任务合并得到一个目标分组任务,其中,预设条件为:多个初始任务的广告物料数量的总和、与广告物料参照数量之间的数量差异值小于预设第一阈值。
预设第一阈值可以基于需求、历史记录、以及试验等方式确定,本实施例不做限定。
例如,在相对可靠性较高的场景中,第一阈值可以相对较小,反之,在相对可靠性较低的场景中,第一阈值可以相对较大。
相应的,本实施例可以理解为:在不知道怎样划分得到目标分组任务的情况下,可以先将一个目标计划标识作为一个子目标计划标识列表,将一个子目标计划标识列表作为一个初始化的分组任务(即初始任务),在得到各个初始任务之后,通过合并的方式将满足预设条件的初始任务进行合并,从而得到各目标分组任务。
例如,若目标计划标识列表中的目标计划标识的数量为x个,一个目标计划标识作为一个子目标计划标识列表,得到x个子目标计划标识列表,从而得到x个初始任务,可以通过{P1,P2,……,Px}表示。
若第一个目标计划标识的广告物料数量表示为C(P1)=C1,第二个目标计划标识的广告物料数量表示为C(P2)=C2,以此类推,直至第x个目标计划标识的广告物料数量表示为C(Px)=Cx。广告物料参照数量可以表示为C。
相应的,若C1+C2+……+Ck≈C,“≈”为约等于,表示不等式两边的值的数量差异值小于预设第一阈值,则可以将P1,P2,Pk合并为一个目标分组任务,其中,k大于1,并且k小于x。
若C(k+1)+C(k+2)+……+Cx≈C,则将Pk+1,Pk+2,……,Px合并为一个目标分组任务,其中,k大于1,并且k小于x。
在本实施例中,通过结合预设条件对各初始任务进行合并,以得到各目标分组任务,可以使得各目标分组任务达到广告物料参照数量的需求,且不至于造成处理装置的超负荷运行,从而实现划分得到各目标分组任务的均衡划分,提高了得到各目标分组任务的有效性和可靠性。
S204:对每一目标分组任务进行分页处理,得到各目标分组任务各自对应的分片任务。
在一些实施例中,可以预先设置分页参数,以基于分页参数对每一目标分组任务进行分页处理,得到各目标分组任务各自对应的分片任务。
且结合上述分析可知,分片任务为下载请求对应的请求业务的最小任务单元,因此,可以基于最小任务单元的属性信息确定分页参数。
示例性的,如图3(图3是根据本公开广告物料的处理方法的原理示意图一)所示,处理装置在接收到下载请求时,可以基于下载请求中的层级信息生成目标层级任务(LevelTask)。
对目标层级任务进行划分,得到多个目标分组任务,如图3所示的目标分组任务1(GroupTask 1)、直至目标分组任务n(GroupTask n),n为大于等于2的正整数。
对每一目标分组任务进行分页处理,得到各目标分组任务各自对应的分片任务,如对目标分组任务1进行分页处理,得到目标分组任务1的分片任务1(SplitTask 1)直至分片任务a(SplitTask a),直至对目标分组任务n进行分页处理,得到目标分组任务n的分片任务1(SplitTask 1)直至分片任务b(SplitTask b),a和b分别为大于等于2的正整数,且本实施例对a和b之间的大小不做限定。
在本实施例中,通过先划分得到目标层级任务,而后划分得到目标分组任务,最后划分得到分片任务,以通过层层划分的方式对下载请求进行拆分,以将粒度较大的任务拆分为粒度较小的任务,以并行执行较小粒度的任务,从而避免机器热点问题,降低运行负载,提高获取广告物料的有效性和可靠性。
在一些实施例中,S204可以包括如下步骤:
第一步骤:针对每一目标分组任务,获取该目标分组任务对应的广告物料数量。
示例性的,结合上述分析,每一目标分组任务中包括多个目标计划标识,则针对每一目标分组任务,根据该目标分组任务中的各目标计划标识各自对应的广告物料数量,确定该目标分组任务对应的广告物料数量。如将该目标分组任务中的各目标计划标识各自对应的广告物料数量之和,确定为该目标分组任务对应的广告物料数量。
第二步骤:根据该目标分组任务对应的广告物料数量、线程数量、获取到的预设最大广告物料数量,计算得到该目标分组任务的每一分片任务对应的广告物料数量。
其中,预设最大广告物料数量为每一线程每次可获取的广告物料数量的范围的最大值,即预设最大广告物料数量为一个线程在一次执行获取广告物料时,可以获取到的广告物料数量的最大值。
示例性的,该目标分组任务对应的广告物料数量为Cg,线程数量为L,预设最大广告物料数量为BATCH_HIGH_LIMIT,每一分片任务对应的广告物料数量为batch,L为大于等于2的正整数。
若Cg>L*BATCH_HIGH_LIMIT,则将预设最大广告物料数量确定为每一分片任务对应的广告物料数量,即batch=BATCH_HIGH_LIMIT。
若Cg≤L*BATCH_HIGH_LIMIT,则batch=(int)((Cg+L-1)/L),int表示取整数。
第三步骤:根据该目标分组任务对应的广告物料数量、计算得到的该目标分组任务的每一分片任务对应的广告物料数量,生成该目标分组任务对应的分片任务。
示例性的,以batch为一组,将该目标分组任务对应的广告物料数量生成m组分片任务,如{SplitTask 1,SplitTask 2,……,SplitTask m},m为大于等于2的正整数。
在本实施例中,一方面,通过结合线程数量确定分片任务,可以使得分片任务的划分高度关联于线程数量,而分片任务的执行最终会依赖于线程数量下的各线程,因此,可以使得分片任务的划分满足线程的实际场景,提高分片任务与线程之间贴合度,使得线程高效且可靠地执行分片任务;另一方面,通过结合预设最大广告数量确定分片任务,可以避免线程的超负荷运行,提高线程执行分片任务的有效性和可靠性。
S205:根据多个分片任务和获取到的线程数量,为各线程分配分片任务,得到各线程各自对应的线程任务,并控制各线程并行执行各自对应的线程任务。其中,每一线程任务中包括至少一个分片任务。
示例性的,关于S205的实现原理,可以参见S103的描述,此处不再赘述。
结合上述分析可知,第二实施例从将下载请求拆分为分片任务的维度,对本公开的广告物料的处理方法进行了详细地阐述,在一些实施例中,针对每次下载请求,处理装置可以将下载请求对应的层级任务、分组任务、甚至分片任务进行存储,以便在下一次接收到下载请求时,借鉴存储的层级任务、分组任务、甚至分片任务,确定下一次接收到的下载请求的层级任务、分组任务、甚至分片任务。
示例性的,在第n次接收到下载请求时,可以执行上述第一实施例或第二实施例,以将得到第n次接收到的下载请求的层级任务、分组任务、甚至分片任务进行存储,在第n+1次接收到下载请求时,可以通过执行上述第一实施例或第二实施例,得到第n+1次接收到的下载请求的层级任务、分组任务、甚至分片任务,也可以借鉴存储的前n次接收到的下载请求的层级任务、分组任务、甚至分片任务,确定第n+1次接收到的下载请求的层级任务、分组任务、甚至分片任务。其中,n为大于等于1的正整数。
且考虑到存储空间的有限性、以及线程数量的变化性,可以对第n次接收到的下载请求的层级任务、分组任务进行存储。
也就是说,具体的存储粒度为层级任务,还是层级任务和分组任务,还是层级任务、分组任务、以及分片任务,可以基于需求等确定,本实施例不做限定,如针对不同的场景,采用不同的存储粒度存储。
为了便于读者理解,怎样结合存储的层级任务、分组任务,确定当前接收到的下载请求的层级任务、分组任务,现结合图4进行详细阐述。其中,图4是根据本公开第三实施例的示意图,如图4所示,本公开的广告物料的处理方法包括:
S401:获取广告物料的下载请求。其中,下载请求中包括广告物料的层级信息。
同理,为了避免繁琐的陈述,关于本实施例与上述实施例中相同的技术特征,本实施例不做限定。
示例性的,关于S401的实现原理,可以参见S101或者S201的实现原理,此处不再赘述。
S402:根据层级信息中的层级,生成层级对应的目标层级任务。其中,层级具有对应的目标计划标识列表。
示例性的,关于S402的实现原理,可以参见S202的实现原理,此处不再赘述。
例如,如图5(图5是根据本公开广告物料的处理方法的原理示意图二)所示,在接收到下载请求(DownloadTask)后,可以根据层级信息中的层级生成目标层级任务(LevelTask),如图5中所示的计划层级任务、单元层级任务、关键词层级任务、创意层级任务。
S403:获取预存层级任务。其中,预存层级任务是基于在前的广告物料的下载请求确定的,预存层级任务中包括至少一个初始层级任务。
示例性的,结合上述分析,若S401获取到的下载请求为第n+1次获取到的下载请求,则在前的广告物料的下载请求为前n次获取到的下载请求,预存层级任务为基于前n次获取到的下载请求确定的。
应该理解的是,在前n次获取到的下载请求中,可能有具有相同层级任务的下载请求,则针对相同层级任务,可以仅存储一次,即预存层级任务为不断更新的过程,如果在后的层级任务与在前的层级任务不同,则将该在后的层级任务进行存储,如果在后的层级任务与在前的层级任务相同,则无需冗余存储。
同理,预存层级任务用于与目标层级任务进行区分,是指已经存储的层级任务,而不能理解为对预存层级任务的限定。初始层级任务用于与目标层级任务区分,是指已经存储的预存层级任务中的层级任务,而不能理解为对初始层级任务的限定。
例如,如图5所示,预存层级任务存储于存储器(cache)中,因此,可以从存储器中获取预存层级任务。
S404:若预存层级任务中,没有与目标层级任务相同或相似的初始层级任务,则根据目标计划标识列表生成多个目标分组任务。
示例性的,若初始层级任务的数量为一个,则将目标层级任务与该一个初始层级任务进行比对,以确定目标层级任务是否为与该初始层级任务相同的层级任务,或者,目标层级任务是否为与该初始层级任务相似的层级任务,如果目标层级任务既不与该初始层级任务相同,也不与该初始层级任务相似,则根据目标计划标识列表生成多个目标分组任务。
若初始层级任务的数量为多个,则将目标层级任务分别与每一初始层级任务进行比对,以确定各初始层级任务中,是否有与目标层级任务相同或相似的初始层级任务。如果各初始层级任务中,既没有与目标层级任务相同的初始层级任务,也没有与目标层级任务相似的初始层级任务,则根据目标计划标识列表生成多个目标分组任务。
本实施例对判断相同或相似的顺序不做限定,但是,相对而言,相同为特殊的相似,且由于相同具有不变性,而相似具有一定的变化性,因此,可以先判断相同而后判断相似。例如,可以先判断是否有与目标层级任务相同的初始层级任务,如果没有,则进一步判断是否有与目标层级任务相似的初始层级任务。
其中,关于根据目标计划标识列表生成多个目标分组任务的实现原理,可以参见S203的实现原理,此处不再赘述。
相应的,可以将目标层级任务、以及多个目标分组任务进行存储,以对预存层级任务进行更新,以便后续再次接收到下载请求时,参考包括目标层级任务、以及多个目标分组任务的预存层级任务,拆分后续再次接收到的下载请求。
例如,将目标层级任务、以及多个目标分组任务存储至存储器中,具体为存储于存储器的预存层级任务中。
在本实施例中,通过结合预存层级任务确定目标分组任务,可以实现确定目标分组任务的多样性和灵活性。
在一些实施例中,确定是否有与目标层级任务相同或相似的初始层级任务包括如下步骤:
第一步骤:将目标计划标识列表、与每一初始层级任务对应的初始计划标识列表分别进行比对。
结合上述分析,层级具有计划标识列表,计划标识列表中具有计划标识,相应的,目标层级任务具有目标计划标识列表,目标计划标识列表中包括目标计划标识,初始层级任务具有初始计划标识列表,初始计划标识列表中包括初始计划标识。
第二步骤:若目标计划标识列表、与第二初始层级任务对应的初始计划标识列表相同,则确定目标层级任务与第二初始层级任务相同。
示例性的,将目标计划标识列表与每一初始计划标识列表进行比对,以确定各初始计划标识列表中是否有与目标计划标识列表相同的列表,若各初始计划标识列表中有与目标计划标识列表相同的列表,且该相同的列表为第二初始层级任务对应的初始计划标识列表,则将目标层级任务与第二初始层级任务确定为相同的层级任务。
同理,第二初始层级任务中的“第二”用于与其他初始层级任务进行区分,如用于与第一初始层级任务和第三初始层级任务进行区分,而不能理解为对第二初始层级任务的限定。
第三步骤:若预存层级任务中,没有与目标层级任务相同的初始层级任务,则从预存层级任务中,获取包括多个目标计划标识最多的第三初始层级任务,并确定第三初始层级任务是否为与目标层级任务相似的初始层级任务。
示例性的,若各初始计划标识列表中,没有与目标计划标识列表相同的列表,则可以确定在各初始层级任务中,没有与目标层级任务相同的层级任务,则可以进一步确定在各初始层级任务中,是否有与目标层级任务相似的初始层级任务。
例如,可以从各初始层级任务中,获取包括目标计划标识列表中,目标计划标识最多的初始层级任务,为便于区分,将该初始层级任务称为第三初始层级任务,并进一步判断第三初始层级任务是否为与目标层级任务相似的层级任务。
在本实施例中,通过从计划标识列表(目标计划标识列表和初始计划标识列表)维度,确定是否有与目标层级任务相同或相似的初始层级任务,如在目标计划标识列表和初始计划标识列表相同的情况下,确定有与目标层级任务相同的初始层级任务,可以提高确定相同层级任务的可靠性和有效性,又如在没有相同层级任务的情况下,基于包括目标计划标识列表中的目标计划标识最多的初始层级任务(第三初始层级任务),确定是否有与目标层级任务为相似的初始层级任务,可以明确且可靠地确定相似的范围,从而提高确定相似的有效性和可靠性。
在一些实施例中,第三步骤可以包括如下子步骤:
第一子步骤:确定第三初始层级任务中的初始计划标识的第一数量。
示例性的,初始层级任务中包括初始计划标识,因此,可以获取第三初始层级任务中的初始计划标识的数量,为了便于区分,将该数量称为第一数量。
第二子步骤:计算第三初始层级任务中的初始计划标识、与目标计划标识之间的差异数量。
示例性的,可以获取目标计划标识的数量,为了便于区分,可以将该数量确定为第二数量,并可以计算第一数量与第二数量之间的差值的绝对值(即差异数量)。
第三子步骤:计算差异数量与第一数量之间的商值,若商值小于等于预设第二阈值,则将第三初始层级任务确定为与目标层级任务相似的初始层级任务。
示例性的,若差异数量为Diff,第一数量为P1,则可以通过公式Diff/P1计算得到商值,并可以判断商值与预设第二阈值的大小,若商值小于等于预设第二阈值,则第三初始层级任务为目标层级任务的相似层级任务;反之,若商值大于预设第二阈值,则第三初始层级任务不是目标层级任务的相似层级任务,目标层级任务没有相似的初始层级任务。
同理,预设第二阈值可以基于需求、历史记录、以及试验等方式确定,本实施例不做限定。例如,预设第二阈值可以为0.05。
在本实施例中,若商值小于等于预设第二阈值,则说明第三初始层级任务与目标层级任务之间的差异较小,具体体现为第三初始层级对应的初始计划标识、以及目标层级任务对应的目标计划标识之间的差异较小,因此,可以将二者确定为相似的层级任务;反之,若商值大于预设第二阈值,则说明第三初始层级任务与目标层级任务之间的差异较大,具体体现为第三初始层级对应的初始计划标识、以及目标层级任务对应的目标计划标识之间的差异较大,因此,可以将二者确定为不相似的层级任务,从而提高确定相似的准确性和可靠性。
S405:若预存层级任务中,包括与目标层级任务相同或相似的第一初始层级任务,则根据第一初始层级任务生成多个目标分组任务。
结合上述分析可知,经过相同和相似的判断,可以确定预存层级任务中,是否有与目标层级任务相同或相似的初始层级任务,如果既没有与目标层级任务相同的初始层级任务,也没有与目标层级任务相似的初始层级任务,则执行S404;反之,如果有与目标层级任务相同或相似的初始层级任务,则根据该相同或相似的初始层级任务,确定多个目标分组任务。
在本实施例中,在有与目标层级任务相同或相似的初始层级任务的场景中,根据与目标层级任务相同或相似的第一层级任务确定目标层级任务下的多个目标分组任务,相当于借鉴第一层级任务的初始分组任务确定目标分组任务,可以相对较少确定目标分组任务的资源,提高确定目标分组任务的效率。
在一些实施例中,若第一初始层级任务与目标层级任务相同,则将第一初始层级任务对应的多个初始分组任务,确定为多个目标分组任务。
在本实施例中,由于第一初始层级任务与目标层级任务相同,因此,可以借鉴第一初始层级任务的多个初始分组任务,以将多个初始分组任务确定为多个目标分组任务,无需执行如第二实施例所述的将目标层级任务划分为目标分组任务的逻辑,从而节约了用于执行如第二实施例所述的将目标层级任务划分为目标分组任务的逻辑的资源,提高了确定得到目标分组任务的效率。
在另一些实施例中,目标计划标识列表中包括多个目标计划标识;若预存层级任务中,包括与目标层级任务相似的第一初始层级任务,则根据第一初始层级生成多个目标分组任务,包括如下步骤:
第一步骤:建立第一初始层级任务的各初始分组任务各自对应的初始空集合。其中,每一初始分组任务对应的初始空集合用于指示该初始分组任务包括的初始计划标识。
示例性的,初始分组任务的数量为m(m为大于等于2的正整数)个,分别为初始分组任务1直至初始分组任务m。一个初始分组任务对应一个初始空集合,即共有m个初始空集合,如初始空集合1直至初始空集合m,初始空集合与初始分组任务为一一对应关系。且每一初始空集合表征的为该初始空集合对应的初始分组任务所包括的初始计划标识。
例如,初始空集合1表征的为初始分组任务1对应的初始计划标识,直至初始空集合m表征的为初始分组任务m包括的初始计划标识。
第二步骤:针对每一目标计划标识,若该目标计划标识与第一初始层级任务的初始计划标识列表中的第一初始计划标识相同,则将该目标计划标识添加至与第一初始计划标识所属的初始分组任务的初始空集合中,若该目标计划标识与各初始计划标识均不相同,则将该目标计划标识添加至新增集合中,得到各目标集合。其中,各目标集合包括增加了目标计划标识的初始空集合、新增集合。
由于目标计划标识的数量为多个,因此,该步骤可以理解为分别确定各目标计划标识各自对应的空集合,以将各目标计划标识添加至相应的空集合,而由于第一初始层级任务为与目标层级任务相似的层级任务,因此,可能在各初始计划标识中,没有与目标计划标识相同的初始计划标识,则各初始空集合中,没有与该目标计划标识对应的初始空集合,则可以新增集合,以将该目标计划标识添加至该新增集合中。
相应的,初始空集合的数量为m个,最终确定出的集合的数量为m+1个,即m个添加了目标计划标识的初始空集合(此时已经包括了目标计划标识)、以及一个新增集合。
例如,若目标计划标识1与初始计划标识1相同,初始空集合1指示初始分组任务1包括初始计划标识1,则可以将目标计划标识1添加至初始空集合1;若初始计划标识中没有与目标计划标识2相同的初始计划标识,则将目标计划标识2添加至新增集合中,以此类推,从而得到各目标集合。
应该理解的是,上述示例只是用于示范性地说明,确定目标集合的可能实现方式,而不能理解为对目标集合的限定。
第三步骤:根据各目标集合确定多个目标分组任务。
在本实施例中,若第一初始层级任务与目标层级任务相似,则基于第一初始层级任务的初始分组任务构建初始空集合,以基于目标计划标识对初始空集合进行填充,且通过新增集合考虑相似而相同的差异性,实现了针对相同部分的初始分组任务的挪用,提高了确定目标分组任务的效率。
在一些实施例中,第三步骤可以包括如下子步骤:
第一子步骤:针对每一目标集合,获取该目标集合对应的广告物料数量。
结合上述分析可知,目标集合中包括目标计划标识,相应的,针对每一目标集合,获取该目标集合中各目标计划标识各自对应的广告物料数量,求和得到与该目标集合对应的广告物料数量。
第二子步骤:若该目标集合对应的广告物料数量等于预设的广告物料参照数量,则将该目标集合中的目标计划标识确定为一个目标分组任务。其中,广告物料参照数量是基于获取历史广告物料数量的时长确定的。
第三子步骤:若该目标集合对应的广告物料数量大于广告物料参照数量,则将该目标集合中的目标计划标识拆分为多个目标分组任务。
第四子步骤:若该目标集合对应的广告物料数量小于广告物料参照数量,则将该目标集合中的目标计划标识与其他目标计划标识组合得到一个目标分组任务,或者,将该目标集合中的目标计划标识确定为一个目标分组任务。
示例性的,若针对目标集合1,获取到的目标集合1对应的广告物料数量为C1,广告物料参照数量为C,则判断C1与C之间的大小关系,若C1=C,则执行第二子步骤;若C1>C,则执行第三子步骤;若C1<C,则执行第四子步骤。
其中,若C1=C,则说明目标集合1对应的广告物料数量,等于广告物料合适数量,通过执行第二子步骤,可以充分利用处理装置的获取资源,提高资源利用率和获取目标集合1对应的广告物料的可靠性和有效性。
若C1>C,则说明目标集合1对应的广告物料数量,大于广告物料合适数量,通过执行第三子步骤,可以将较大数量的广告物料拆分为多个目标分组任务,以避免处理装置的超负载运行,提高执行下载请求的有效性和可靠性。
若C1<C,则说明目标集合1对应的广告物料数量,小于广告物料合适数量,通过执行第四子步骤,如可以将目标集合1中的目标计划标识确定为一个目标分组任务,且由于C1<C,还可以对目标集合1中的目标计划标识与其他的目标计划标识进一步组合,以使得组合后的目标集合对应的广告物料数量=C,并将组合后的目标计划标识确定为一个目标分组任务,从而提高确定目标分组任务的多样性和灵活性。
其中,关于对目标集合1中的目标计划标识与其他的目标计划标识进一步组合的实现原理,本实施例不做限定,以使得组合后的目标集合对应的广告物料数量=C即可,以避免处理装置的超负载运行。
且应该理解的是,关于“等于”为大约等于,即可以为在一定误差内的等于。
在一些实施例中,将该目标集合中的目标计划标识拆分为多个目标分组任务,包括:根据目标集合中各目标计划标识各自对应的广告物料数量、以及广告物料参照数量,将该目标集合中的目标计划标识拆分为多个目标分组任务。
示例性的,由于目标集合1对应的广告物料数量大于广告物料合适数量,为了提高处理装置执行下载请求的有效性和可靠性,可以将目标集合1中的目标计划标识拆分为多个目标分组任务,且具体可以基于目标集合1中各目标计划标识各自对应的广告物料数量、以及物料合适数量实现。
在一些实施例中,可以基于第二实施例中所述的方法将目标集合1中各目标计划标识划分为多个目标分组任务,以使得拆分后的每一目标分组任务对应的广告物料数量的小于等于广告物料合适数量,此处不再赘述。
在另一些实施例中,可以将目标集合中各目标计划标识各自对应的广告物料数量,将目标集合中各目标计划标识平均拆分为多个目标分组任务,且拆分得到的多个目标分组任务对应的广告物料数量均小于广告物料合适数量。
例如,可以将2为拆分目标集合的初始平均分组数量,若初始平均分组数量2能满足拆分得到的两个目标分组任务对应的广告物料数量均小于等于广告物料合适数量,则将目标集合中各目标计划标识平均拆分为两个目标分组任务;若初始平均分组数量2能无法满足拆分得到的两个目标分组任务对应的广告物料数量均小于等于广告物料合适数量,则调整初始平均分组数量,如将2调整为3,并判断调整后的平均分组数量(如3)是否满足拆分得到的三个目标分组任务对应的广告物料数量均小于等于广告物料合适数量,以此类推,此处不再一一列举。
在本实施例中,通过结合广告物料参照数量对大于广告物料参照数量的目标集合进行拆分,得到多个目标分组任务,可以避免处理装置的超负载运行,提高广告物料下载的有效性和可靠性。
例如,如图5所示,目标层级任务的数量可以为多个,通过上述实施例将每一目标层级任务划分为目标分组任务(GroupTask),如图5中所示的各目标层级任务各自对应的目标分组任务1(GroupTask 1)、直至目标分组任务n(GroupTask n),n为大于等于2的正整数。
应该理解的是,不同目标层级任务的目标分组任务的数量可能相同,也可能不同,本实施例通过n表示目标分组任务的数量只是用于示范性地说明,不同目标层级任务的目标分组任务的数量相同的情况,而不能理解为对不同目标层级任务的目标分组任务的数量的限定。
在一些实施例中,在得到目标分组任务之后,可以基于消息队列(RabbitMQ)分发至后端的操作单元(如机器)。
同理,对于预存层级任务中没有存储的目标层级任务、以及对应的多个目标分组任务,可以存储于预存层级任务中,以对预存层级任务进行更新。
S406:对每一目标分组任务进行分页处理,得到各目标分组任务各自对应的分片任务。
示例性的,关于S406的实现原理,可以参见S204的实现原理,此处不再赘述。
例如,如图5所示,操作单元在接收到各自对应的目标分组任务之后,可以对目标分组任务进行分页处理,得到目标分组任务对应的分片任务。
S407:根据多个分片任务和获取到的线程数量,为各线程分配分片任务,得到各线程各自对应的线程任务,并控制各线程并行执行各自对应的线程任务。其中,每一线程任务中包括至少一个分片任务。
示例性的,关于S407的实现原理,可以参见S103的描述,此处不再赘述。
例如,如图5所示,线程可以得到线程任务之后,可以请求后端,即请求数据库,以便从数据库中获取与线程任务对应的广告物料。
相应的,在线程获取到与线程任务对应的广告物料之后,可以通过写文件,并将写好的文件传输给云端对象存储,以便由云端对象存储生成链接,如统一资源定位符(uniform resource locator,URL),以便用户基于该链接下载相应的广告物料。
结合上述分析可知,针对当前次下载请求,可以基于当前次下载请求确定相应的层级任务、分组任务、分片任务,也可以基于在前下载请求确定当前次下载请求的层级任务、分组任务、分片任务,从而实现下载广告物料的多样性和灵活性,且尤其当基于在前下载请求确定当前次下载请求的层级任务、分组任务、分片任务时,可以实现节约资源,提高效率的技术效果。
然而,可以理解的是,下载广告物料可能成功,也可能失败,在一些实施例中,若下载广告物料失败,即下载请求完成失败,则可以重新下载,如重新对下载请求依次拆分为层级任务、分组任务、分片任务,以重新完成下载请求。
但是,相对而言,该种方式消耗的时间较长,且由于当部分广告物料下载成功,部分广告物料下载失败时,该种方式存在重复下载的弊端。
为了避免上述问题,本实施例采用的方式为对下载失败广告物料进行重新下载。为了使得读者更加深刻地理解本公开实施例的实现,现结合图6进行详细阐述。其中,图6是根据本公开第四实施例的示意图,如图6所示,本公开的广告物料的处理方法包括:
S601:获取广告物料的下载请求。其中,下载请求中包括广告物料的层级信息。
S602:根据层级信息中的层级,生成层级对应的目标层级任务。其中,层级具有对应的目标计划标识列表。
S603:根据目标计划标识列表生成目标层级任务的多个目标分组任务。
S604:对每一目标分组任务进行分页处理,得到各目标分组任务各自对应的分片任务。
S605:根据多个分片任务和获取到的线程数量,为各线程分配分片任务,得到各线程各自对应的线程任务,并控制各线程并行执行各自对应的线程任务。其中,每一线程任务中包括至少一个分片任务。
同理,为了避免繁琐的陈述,关于本实施例与上述实施例中相同的技术特征,本实施例不做限定。
示例性的,关于S601-S605的实现原理,可以参见第一实施例的实现原理,也可以参见第二实施例的实现原理,也可以参见第三实施例的实现原理,此处不再赘述。
S606:若下载失败,则获取下载失败对应的第一目标分组任务、以及第一目标分组任务对应的广告物料数量。
同理,第一目标分组任务中的“第一”用于与其他目标分组任务进行区别,表示多个目标分组任务中,下载失败的目标分组任务。也就是说,第一目标分组任务的数量可以为多个,也可以为一个。
若第一目标分组任务的数量为一个,则获取该第一目标分组任务对应的广告物料数量;若第一目标分组任务的数量为多个,则获取该个第一目标分组任务各自对应的广告物料数量。
S607:根据预设的广告物料参照数量、第一目标分组任务对应的广告物料数量,对下载失败的广告物料重新下载。其中,广告物料参照数量是基于获取历史广告物料数量的时长确定的。
结合上述分析可知,广告物料参数数量可以理解为广告物料合适数量,广告物料合适数量为处理装置可以支持下载,且下载较为合适的数量。
由于第一目标分组任务下载失败,则可能为第一目标分组任务对应的广告物料数量不符合广告物料合适数量的需求,因此,在本实施例中,一方面,通过结合广告物料参照数量对下载失败的广告物料重新下载,可以避免因处理装置超负载而造成重新下载失败的弊端,提高重新下载的有效性和可靠性;另一方面,从目标分组任务的粒度进行重新下载,而不是目标层级任务和分片任务,可以避免从目标层级任务的粒度进行重新下载造成的划分逻辑繁琐的弊端,且可以避免从分片任务的粒度进行重新下载造成的因粒度太小而可能重新下载遗漏的弊端,从而提高了重新下载的有效性和可靠性。
在一些实施例中,S607可以包括如下步骤:
第一步骤:若第一目标分组任务对应的广告物料数量小于等于广告物料参照数量,则重新执行第一目标分组任务对应的线程任务。
第二步骤:若第一目标分组任务对应的广告物料数量大于广告物料参照数量,则重新对第一目标分组任务进行分页处理,得到第一目标分组任务的多个新分片任务,并根据多个新分片任务对下载失败的广告物料重新下载。
关于第二步骤的实现原理,可以参见上述实施例中的分页处理、以及分配分片任务的实现原理,此处不再赘述。
示例性的,可以将第一目标分组任务对应的广告物料数量、以及广告物料参照数量进行比对,以确定第一目标分组任务对应的广告物料数量、以及广告物料参照数量之间的大小关系,如果第一目标分组任务对应的广告物料数量小于等于广告物料参照数量,则执行第一步骤,反之,如果第一目标分组任务对应的广告物料数量大于广告物料参照数量,则执行第二步骤。
也就是说,第一步骤和第二步骤之间并没有必然的先后顺序逻辑,只是为了便于描述和区分,将第一目标分组任务对应的广告物料数量、以及广告物料参照数量之间的大小关系拆分为两种不同的情况,一种情况为第一步骤中的第一目标分组任务对应的广告物料数量小于等于广告物料参照数量的情况,另一种情况为第二步骤中的第一目标分组任务对应的广告物料数量大于广告物料参照数量的情况。
针对第一步骤中的第一目标分组任务对应的广告物料数量小于等于广告物料参照数量的情况,由于第一目标分组任务对应的广告物料数量满足广告物料参照数量,下载失败可能是由于网络等外界客观因素造成,而非处理装置的运行特征造成,如超负载运行等因素造成,因此,在该种情况下,通过重新执行第一目标分组任务对应的线程任务,可以避免重新分页处理造成的资源消耗的弊端,提高了重新下载的效率。
针对第二步骤中的第一目标分组任务对应的广告物料数量大于广告物料参照数量的情况,由于第一目标分组任务对应的广告物料数量不满足广告物料参照数量,下载失败处理装置的运行特征造成,如超负载运行等因素造成,因此,在该种情况下,可以重新对第一目标分组任务进行分页处理,得到新分片任务,从而得到为线程分配的新线程任务,进而提高重新下载的有效性和可靠性。
值得说明的是,上述实施例可以为如上所述的独立实施例,也可以将至少两个实施例组合,得到新的实施例,如可以将第三实施例和第四实施例组合,得到新的实施例,也可以在任意实施例的基础上增加技术特征,得到新的实施例,也可以在任意实施例的基础上减少技术特征,得到新的实施例,也可以替换任意实施例中的部分技术特征,得到新的实施例,本实施例不做限定。
图7是根据本公开第五实施例的示意图,如图7所示,本公开的广告物料的处理装置700包括:
第一获取单元701,用于获取广告物料的下载请求,其中,所述下载请求中包括所述广告物料的层级信息。
拆分单元702,用于根据所述层级信息,将所述下载请求拆分为多个分片任务,其中,分片任务为所述下载请求对应的请求业务的最小任务单元。
分配单元703,用于根据所述多个分片任务和获取到的线程数量,为各线程分配分片任务,得到各线程各自对应的线程任务。
控制单元704,用于控制各线程并行执行各自对应的线程任务,其中,每一线程任务中包括至少一个分片任务。
图8是根据本公开第六实施例的示意图,如图8所示,本公开的广告物料的处理装置800包括:
第一获取单元801,用于获取广告物料的下载请求,其中,所述下载请求中包括所述广告物料的层级信息。
拆分单元802,用于根据所述层级信息,将所述下载请求拆分为多个分片任务,其中,分片任务为所述下载请求对应的请求业务的最小任务单元。
结合图8可知,在一些实施例中,拆分单元802,包括:
第一生成子单元8021,用于根据所述层级信息中的层级,生成所述层级对应的目标层级任务,所述层级具有对应的目标计划标识列表。
第二生成子单元8022,用于根据所述目标计划标识列表生成所述目标层级任务的多个目标分组任务。
在一些实施例中,目标计划标识列表中包括多个目标计划标识;所述第二生成子单元8022,包括:
第一获取模块,用于获取各目标计划标识各自对应的广告物料数量。
合并模块,用于根据预设的广告物料参照数量、各目标计划标识各自对应的广告物料数量,对各目标计划标识进行合并,得到所述多个目标分组任务。
其中,所述广告物料参照数量是基于获取历史广告物料数量的时长确定的。
在一些实施例中,合并模块,包括:
第一确定子模块,用于将所述目标计划标识列表中的每一目标计划标识确定为一个初始任务。
合并子模块,用于将满足预设条件的多个初始任务合并得到一个目标分组任务,其中,预设条件为:多个初始任务的广告物料数量的总和、与所述广告物料参照数量之间的数量差异值小于预设第一阈值。
第一分页子单元8023,用于对每一目标分组任务进行分页处理,得到各目标分组任务各自对应的分片任务。
在一些实施例中,第一分页子单元8023,包括:
第二获取模块,用于针对每一目标分组任务,获取该目标分组任务对应的广告物料数量。
第一计算模块,用于根据该目标分组任务对应的广告物料数量、所述线程数量、获取到的预设最大广告物料数量,计算得到该目标分组任务的每一分片任务对应的广告物料数量。
生成模块,用于根据该目标分组任务对应的广告物料数量、计算得到的该目标分组任务的每一分片任务对应的广告物料数量,生成该目标分组任务对应的分片任务。
结合图8可知,在另一些实施例中,拆分单元802,还包括:
第一获取子单元8024,用于获取预存层级任务,其中,所述预存层级任务是基于在前的广告物料的下载请求确定的,所述预存层级任务中包括至少一个初始层级任务。
以及,所述第二生成子单元8022用于,若所述预存层级任务中,没有与所述目标层级任务相同或相似的初始层级任务,则根据所述目标计划标识列表生成所述多个目标分组任务。
结合图8可知,在另一些实施例中,拆分单元802,还包括:
第三生成子单元8025,用于若所述预存层级任务中,包括与所述目标层级任务相同或相似的第一初始层级任务,则根据所述第一初始层级任务生成所述多个目标分组任务。
在一些实施例中,目标计划标识列表中包括多个目标计划标识;若所述预存层级任务中,包括与所述目标层级任务相似的第一初始层级任务,则所述第三生成子单元8025,包括:
建立模块,用于建立所述第一初始层级任务的各初始分组任务各自对应的初始空集合,其中,每一初始分组任务对应的初始空集合用于指示该初始分组任务包括的初始计划标识。
添加模块,用于针对每一目标计划标识,若该目标计划标识与所述第一初始层级任务的初始计划标识列表中的第一初始计划标识相同,则将该目标计划标识添加至与所述第一初始计划标识所属的初始分组任务的初始空集合中,若该目标计划标识与各初始计划标识均不相同,则将该目标计划标识添加至新增集合中,得到各目标集合,其中,所述各目标集合包括增加了目标计划标识的初始空集合、新增集合。
第一确定模块,用于根据所述各目标集合确定所述多个目标分组任务。
在一些实施例中,第一确定模块,包括:
获取子模块,用于针对每一目标集合,获取该目标集合对应的广告物料数量。
第二确定子模块,用于若该目标集合对应的广告物料数量等于预设的广告物料参照数量,则将该目标集合中的目标计划标识确定为一个目标分组任务。
拆分子模块,用于若该目标集合对应的广告物料数量大于所述广告物料参照数量,则将该目标集合中的目标计划标识拆分为多个目标分组任务。
在一些实施例中,拆分子模块用于,根据目标集合中各目标计划标识各自对应的广告物料数量、以及所述广告物料参照数量,将该目标集合中的目标计划标识拆分为多个目标分组任务。
在一些实施例中,若所述第一初始层级任务与所述目标层级任务相同,则第三生成子单元8025用于,将所述第一初始层级任务对应的多个初始分组任务,确定为所述多个目标分组任务。
第三确定子模块,用于若该目标集合对应的广告物料数量小于所述广告物料参照数量,则将该目标集合中的目标计划标识与其他目标计划标识组合得到一个目标分组任务,或者,将该目标集合中的目标计划标识确定为一个目标分组任务。
其中,所述广告物料参照数量是基于获取历史广告物料数量的时长确定的。
结合图8可知,在另一些实施例中,目标计划标识列表中包括多个目标计划标识;拆分单元802,还包括:
比对子单元8026,用于将所述目标计划标识列表、与每一初始层级任务对应的初始计划标识列表分别进行比对。
第一确定子单元8027,用于若所述目标计划标识列表、与第二初始层级任务对应的初始计划标识列表相同,则确定所述目标层级任务与所述第二初始层级任务相同。
第二获取子单元8028,用于若所述预存层级任务中,没有与所述目标层级任务相同的初始层级任务,则从所述预存层级任务中,获取包括所述多个目标计划标识最多的第三初始层级任务。
第二确定子单元8029,用于确定所述第三初始层级任务是否为与所述目标层级任务相似的初始层级任务。
在一些实施例中,第二确定子单元8029,包括:
第二确定模块,用于确定所述第三初始层级任务中的初始计划标识的第一数量。
第二计算模块,用于计算所述第三初始层级任务中的初始计划标识、与所述目标计划标识之间的差异数量。
第三计算模块,用于计算所述差异数量与所述第一数量之间的商值。
第三确定模块,用于若所述商值小于等于预设第二阈值,则将所述第三初始层级任务确定为与所述目标层级任务相似的初始层级任务。
分配单元803,用于根据所述多个分片任务和获取到的线程数量,为各线程分配分片任务,得到各线程各自对应的线程任务。
控制单元804,用于控制各线程并行执行各自对应的线程任务,其中,每一线程任务中包括至少一个分片任务。
第二获取单元805,用于若下载失败,则获取下载失败对应的第一目标分组任务、以及所述第一目标分组任务对应的广告物料数量。
下载单元806,用于根据预设的广告物料参照数量、所述第一目标分组任务对应的广告物料数量,对下载失败的广告物料重新下载,其中,所述广告物料参照数量是基于获取历史广告物料数量的时长确定的。
结合图8可知,在一些实施例中,下载单元806,包括:
执行子单元8061,用于若所述第一目标分组任务对应的广告物料数量小于等于所述广告物料参照数量,则重新执行所述第一目标分组任务对应的线程任务。
第二分页子单元8062,用于若所述第一目标分组任务对应的广告物料数量大于所述广告物料参照数量,则重新对所述第一目标分组任务进行分页处理,得到所述第一目标分组任务的多个新分片任务。
下载子单元8063,用于根据所述多个新分片任务对下载失败的广告物料重新下载。
根据本公开实施例的另一个方面,本公开还提供了一种广告物料的处理系统,包括:处理器和多个操作单元,处理器用于获取广告物料的下载请求,下载请求中包括广告物料的层级信息,根据层级信息,将下载请求拆分为多个目标分组任务,并将多个目标分组任务的分配给多个操作单元。
示例性的,处理器可以采用消息队列的方式将多个目标分组任务的分配给多个操作单元。优选的,处理器可以采用消息队列的方式,将多个目标分组任务均衡负载的分配给多个操作单元。
每一操作单元用于,对接收到的目标分组任务进行分页处理,得到目标分组任务对应的多个分片任务,并根据该操作单元的线程数量和各分片任务,为各线程分配分片任务,得到各线程各自对应的线程任务,并控制各线程并行执行各自对应的线程任务。
关于处理器得到多个目标分组任务的实现原理、以及各操作单元得到多个分片任务的实现原理,可以参见上述实施例,此处不再赘述。
图9是根据本公开第七实施例的示意图,如图9所示,本公开中的电子设备900可以包括:处理器901和存储器902。
存储器902,用于存储程序;存储器902,可以包括易失性存储器(英文:volatilememory),例如随机存取存储器(英文:random-access memory,缩写:RAM),如静态随机存取存储器(英文:static random-access memory,缩写:SRAM),双倍数据率同步动态随机存取存储器(英文:Double Data Rate Synchronous Dynamic Random Access Memory,缩写:DDR SDRAM)等;存储器也可以包括非易失性存储器(英文:non-volatile memory),例如快闪存储器(英文:flash memory)。存储器902用于存储计算机程序(如实现上述方法的应用程序、功能模块等)、计算机指令等,上述的计算机程序、计算机指令等可以分区存储在一个或多个存储器902中。并且上述的计算机程序、计算机指令、数据等可以被处理器901调用。
上述的计算机程序、计算机指令等可以分区存储在一个或多个存储器902中。并且上述的计算机程序、计算机指据等可以被处理器901调用。
处理器901,用于执行存储器902存储的计算机程序,以实现上述实施例涉及的方法中的各个步骤。
具体可以参见前面方法实施例中的相关描述。
处理器901和存储器902可以是独立结构,也可以是集成在一起的集成结构。当处理器901和存储器902是独立结构时,存储器902、处理器901可以通过总线903耦合连接。
本实施例的电子设备可以执行上述方法中的技术方案,其具体实现过程和技术原理相同,此处不再赘述。
本公开的技术方案中,所涉及的用户个人信息(如账户层级中的信息,具体如用户的账号信息)的收集、存储、使用、加工、传输、提供和公开等处理,均符合相关法律法规的规定,且不违背公序良俗。
根据本公开的实施例,本公开还提供了一种电子设备、一种可读存储介质和一种计算机程序产品。
根据本公开的实施例,本公开还提供了一种计算机程序产品,计算机程序产品包括:计算机程序,计算机程序存储在可读存储介质中,电子设备的至少一个处理器可以从可读存储介质读取计算机程序,至少一个处理器执行计算机程序使得电子设备执行上述任一实施例提供的方案。
图10示出了可以用来实施本公开的实施例的示例电子设备1000的示意性框图。电子设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字助理、蜂窝电话、智能电话、可穿戴设备和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本公开的实现。
如图10所示,设备1000包括计算单元1001,其可以根据存储在只读存储器(ROM)1002中的计算机程序或者从存储单元1008加载到随机访问存储器(RAM)1003中的计算机程序,来执行各种适当的动作和处理。在RAM 1003中,还可存储设备1000操作所需的各种程序和数据。计算单元1001、ROM 1002以及RAM 1003通过总线1004彼此相连。输入/输出(I/O)接口1005也连接至总线1004。
设备1000中的多个部件连接至I/O接口1005,包括:输入单元1006,例如键盘、鼠标等;输出单元1007,例如各种类型的显示器、扬声器等;存储单元1008,例如磁盘、光盘等;以及通信单元1009,例如网卡、调制解调器、无线通信收发机等。通信单元1009允许设备1000通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据。
计算单元1001可以是各种具有处理和计算能力的通用和/或专用处理组件。计算单元1001的一些示例包括但不限于中央处理单元(CPU)、图形处理单元(GPU)、各种专用的人工智能(AI)计算芯片、各种运行机器学习模型算法的计算单元、数字信号处理器(DSP)、以及任何适当的处理器、控制器、微控制器等。计算单元1001执行上文所描述的各个方法和处理,例如广告物料的处理方法。例如,在一些实施例中,广告物料的处理方法可被实现为计算机软件程序,其被有形地包含于机器可读介质,例如存储单元1008。在一些实施例中,计算机程序的部分或者全部可以经由ROM 1002和/或通信单元1009而被载入和/或安装到设备1000上。当计算机程序加载到RAM 1003并由计算单元1001执行时,可以执行上文描述的广告物料的处理方法的一个或多个步骤。备选地,在其他实施例中,计算单元1001可以通过其他任何适当的方式(例如,借助于固件)而被配置为执行广告物料的处理方法。
本文中以上描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、场可编程门阵列(FPGA)、专用集成电路(ASIC)、专用标准产品(ASSP)、芯片上系统的系统(SOC)、复杂可编程逻辑设备(CPLD)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储系统、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储系统、该至少一个输入装置、和该至少一个输出装置。
用于实施本公开的方法的程序代码可以采用一个或多个编程语言的任何组合来编写。这些程序代码可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器或控制器,使得程序代码当由处理器或控制器执行时使流程图和/或框图中所规定的功能/操作被实施。程序代码可以完全在机器上执行、部分地在机器上执行,作为独立软件包部分地在机器上执行且部分地在远程机器上执行或完全在远程机器或服务器上执行。
在本公开的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或快闪存储器)、光纤、便捷式紧凑盘只读存储器(CD-ROM)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
为了提供与用户的交互,可以在计算机上实施此处描述的系统和技术,该计算机具有:用于向用户显示信息的显示装置(例如,CRT(阴极射线管)或者LCD(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给计算机。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。
可以将此处描述的系统和技术实施在包括后台部件的计算系统(例如,作为数据服务器)、或者包括中间件部件的计算系统(例如,应用服务器)、或者包括前端部件的计算系统(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:局域网(LAN)、广域网(WAN)和互联网。
计算机系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。服务器可以是云服务器,又称为云计算服务器或云主机,是云计算服务体系中的一项主机产品,以解决了传统物理主机与VPS服务("Virtual Private Server",或简称"VPS")中,存在的管理难度大,业务扩展性弱的缺陷。服务器也可以为分布式系统的服务器,或者是结合了区块链的服务器。
应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本发公开中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本公开公开的技术方案所期望的结果,本文在此不进行限制。
上述具体实施方式,并不构成对本公开保护范围的限制。本领域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本公开的精神和原则之内所作的修改、等同替换和改进等,均应包含在本公开保护范围之内。

Claims (33)

1.一种广告物料的处理方法,包括:
获取广告物料的下载请求,其中,所述下载请求中包括所述广告物料的层级信息;
根据所述层级信息,将所述下载请求拆分为多个分片任务,其中,分片任务为所述下载请求对应的请求业务的最小任务单元;
根据所述多个分片任务和获取到的线程数量,为各线程分配分片任务,得到各线程各自对应的线程任务,并控制各线程并行执行各自对应的线程任务,其中,每一线程任务中包括至少一个分片任务。
2.根据权利要求1所述的方法,其中,根据所述层级信息,将所述下载请求拆分为多个分片任务,包括:
根据所述层级信息中的层级,生成所述层级对应的目标层级任务,所述层级具有对应的目标计划标识列表;
根据所述目标计划标识列表生成所述目标层级任务的多个目标分组任务;
对每一目标分组任务进行分页处理,得到各目标分组任务各自对应的分片任务。
3.根据权利要求2所述的方法,其中,所述目标计划标识列表中包括多个目标计划标识;根据所述计划标识列表生成所述目标层级任务的多个目标分组任务,包括:
获取各目标计划标识各自对应的广告物料数量;
根据预设的广告物料参照数量、各目标计划标识各自对应的广告物料数量,对各目标计划标识进行合并,得到所述多个目标分组任务;
其中,所述广告物料参照数量是基于获取历史广告物料数量的时长确定的。
4.根据权利要求3所述的方法,其中,根据预设的广告物料参照数量、各目标计划标识各自对应的广告物料数量,对各目标计划标识进行合并,得到所述多个目标分组任务,包括:
将所述目标计划标识列表中的每一目标计划标识确定为一个初始任务;
将满足预设条件的多个初始任务合并得到一个目标分组任务,其中,预设条件为:多个初始任务的广告物料数量的总和、与所述广告物料参照数量之间的数量差异值小于预设第一阈值。
5.根据权利要求2-4中任一项所述的方法,其中,对每一目标分组任务进行分页处理,得到各目标分组任务各自对应的分片任务,包括:
针对每一目标分组任务,获取该目标分组任务对应的广告物料数量;
根据该目标分组任务对应的广告物料数量、所述线程数量、获取到的预设最大广告物料数量,计算得到该目标分组任务的每一分片任务对应的广告物料数量;
根据该目标分组任务对应的广告物料数量、计算得到的该目标分组任务的每一分片任务对应的广告物料数量,生成该目标分组任务对应的分片任务。
6.根据权利要求2-5中任一项所述的方法,在根据所述层级信息中的层级,生成所述层级对应的目标层级任务之后,所述方法还包括:
获取预存层级任务,其中,所述预存层级任务是基于在前的广告物料的下载请求确定的,所述预存层级任务中包括至少一个初始层级任务;
以及根据所述目标计划标识列表生成所述目标层级任务的多个目标分组任务,包括:若所述预存层级任务中,没有与所述目标层级任务相同或相似的初始层级任务,则根据所述目标计划标识列表生成所述多个目标分组任务。
7.根据权利要求6所述的方法,所述方法还包括:
若所述预存层级任务中,包括与所述目标层级任务相同或相似的第一初始层级任务,则根据所述第一初始层级任务生成所述多个目标分组任务。
8.根据权利要求7所述的方法,其中,所述目标计划标识列表中包括多个目标计划标识;若所述预存层级任务中,包括与所述目标层级任务相似的第一初始层级任务,则根据所述第一初始层级任务生成所述多个目标分组任务,包括:
建立所述第一初始层级任务的各初始分组任务各自对应的初始空集合,其中,每一初始分组任务对应的初始空集合用于指示该初始分组任务包括的初始计划标识;
针对每一目标计划标识,若该目标计划标识与所述第一初始层级任务的初始计划标识列表中的第一初始计划标识相同,则将该目标计划标识添加至与所述第一初始计划标识所属的初始分组任务的初始空集合中,若该目标计划标识与各初始计划标识均不相同,则将该目标计划标识添加至新增集合中,得到各目标集合,其中,所述各目标集合包括增加了目标计划标识的初始空集合、新增集合;
根据所述各目标集合确定所述多个目标分组任务。
9.根据权利要求8所述的方法,其中,根据所述各目标集合确定所述多个目标分组任务,包括:
针对每一目标集合,获取该目标集合对应的广告物料数量;
若该目标集合对应的广告物料数量等于预设的广告物料参照数量,则将该目标集合中的目标计划标识确定为一个目标分组任务;
若该目标集合对应的广告物料数量大于所述广告物料参照数量,则将该目标集合中的目标计划标识拆分为多个目标分组任务;
若该目标集合对应的广告物料数量小于所述广告物料参照数量,则将该目标集合中的目标计划标识与其他目标计划标识组合得到一个目标分组任务,或者,将该目标集合中的目标计划标识确定为一个目标分组任务;
其中,所述广告物料参照数量是基于获取历史广告物料数量的时长确定的。
10.根据权利要求9所述的方法,其中,将该目标集合中的目标计划标识拆分为多个目标分组任务,包括:
根据目标集合中各目标计划标识各自对应的广告物料数量、以及所述广告物料参照数量,将该目标集合中的目标计划标识拆分为多个目标分组任务。
11.根据权利要求7所述的方法,其中,若所述第一初始层级任务与所述目标层级任务相同,则根据所述第一初始层级生成所述多个目标分组任务,包括:
将所述第一初始层级任务对应的多个初始分组任务,确定为所述多个目标分组任务。
12.根据权利要求7-11中任一项所述的方法,所述目标计划标识列表中包括多个目标计划标识;所述方法还包括:
将所述目标计划标识列表、与每一初始层级任务对应的初始计划标识列表分别进行比对;
若所述目标计划标识列表、与第二初始层级任务对应的初始计划标识列表相同,则确定所述目标层级任务与所述第二初始层级任务相同;
若所述预存层级任务中,没有与所述目标层级任务相同的初始层级任务,则从所述预存层级任务中,获取包括所述多个目标计划标识最多的第三初始层级任务,并确定所述第三初始层级任务是否为与所述目标层级任务相似的初始层级任务。
13.根据权利要求12所述的方法,其中,确定所述第三初始层级任务是否为与所述目标层级任务相似的初始层级任务,包括:
确定所述第三初始层级任务中的初始计划标识的第一数量;
计算所述第三初始层级任务中的初始计划标识、与所述目标计划标识之间的差异数量;
计算所述差异数量与所述第一数量之间的商值,若所述商值小于等于预设第二阈值,则将所述第三初始层级任务确定为与所述目标层级任务相似的初始层级任务。
14.根据权利要求2-13中任一项所述的方法,还包括:
若下载失败,则获取下载失败对应的第一目标分组任务、以及所述第一目标分组任务对应的广告物料数量;
根据预设的广告物料参照数量、所述第一目标分组任务对应的广告物料数量,对下载失败的广告物料重新下载,其中,所述广告物料参照数量是基于获取历史广告物料数量的时长确定的。
15.根据权利要求14所述的方法,其中,根据预设的广告物料参照数量、所述第一目标分组任务对应的广告物料数量,对下载失败的广告物料重新下载,包括:
若所述第一目标分组任务对应的广告物料数量小于等于所述广告物料参照数量,则重新执行所述第一目标分组任务对应的线程任务;
若所述第一目标分组任务对应的广告物料数量大于所述广告物料参照数量,则重新对所述第一目标分组任务进行分页处理,得到所述第一目标分组任务的多个新分片任务,并根据所述多个新分片任务对下载失败的广告物料重新下载。
16.一种广告物料的处理装置,包括:
第一获取单元,用于获取广告物料的下载请求,其中,所述下载请求中包括所述广告物料的层级信息;
拆分单元,用于根据所述层级信息,将所述下载请求拆分为多个分片任务,其中,分片任务为所述下载请求对应的请求业务的最小任务单元;
分配单元,用于根据所述多个分片任务和获取到的线程数量,为各线程分配分片任务,得到各线程各自对应的线程任务;
控制单元,用于控制各线程并行执行各自对应的线程任务,其中,每一线程任务中包括至少一个分片任务。
17.根据权利要求16所述的装置,其中,所述拆分单元,包括:
第一生成子单元,用于根据所述层级信息中的层级,生成所述层级对应的目标层级任务,所述层级具有对应的目标计划标识列表;
第二生成子单元,用于根据所述目标计划标识列表生成所述目标层级任务的多个目标分组任务;
第一分页子单元,用于对每一目标分组任务进行分页处理,得到各目标分组任务各自对应的分片任务。
18.根据权利要求17所述的装置,其中,所述目标计划标识列表中包括多个目标计划标识;所述第二生成子单元,包括:
第一获取模块,用于获取各目标计划标识各自对应的广告物料数量;
合并模块,用于根据预设的广告物料参照数量、各目标计划标识各自对应的广告物料数量,对各目标计划标识进行合并,得到所述多个目标分组任务;
其中,所述广告物料参照数量是基于获取历史广告物料数量的时长确定的。
19.根据权利要求18所述的装置,其中,所述合并模块,包括:
第一确定子模块,用于将所述目标计划标识列表中的每一目标计划标识确定为一个初始任务;
合并子模块,用于将满足预设条件的多个初始任务合并得到一个目标分组任务,其中,预设条件为:多个初始任务的广告物料数量的总和、与所述广告物料参照数量之间的数量差异值小于预设第一阈值。
20.根据权利要求17-19中任一项所述的装置,其中,所述第一分页子单元,包括:
第二获取模块,用于针对每一目标分组任务,获取该目标分组任务对应的广告物料数量;
第一计算模块,用于根据该目标分组任务对应的广告物料数量、所述线程数量、获取到的预设最大广告物料数量,计算得到该目标分组任务的每一分片任务对应的广告物料数量;
生成模块,用于根据该目标分组任务对应的广告物料数量、计算得到的该目标分组任务的每一分片任务对应的广告物料数量,生成该目标分组任务对应的分片任务。
21.根据权利要求17-20中任一项所述的装置,所述拆分单元,还包括:
第一获取子单元,用于获取预存层级任务,其中,所述预存层级任务是基于在前的广告物料的下载请求确定的,所述预存层级任务中包括至少一个初始层级任务;
以及,所述第二生成子单元用于,若所述预存层级任务中,没有与所述目标层级任务相同或相似的初始层级任务,则根据所述目标计划标识列表生成所述多个目标分组任务。
22.根据权利要求21所述的装置,所述拆分单元,还包括:
第三生成子单元,用于若所述预存层级任务中,包括与所述目标层级任务相同或相似的第一初始层级任务,则根据所述第一初始层级任务生成所述多个目标分组任务。
23.根据权利要求22所述的装置,其中,所述目标计划标识列表中包括多个目标计划标识;若所述预存层级任务中,包括与所述目标层级任务相似的第一初始层级任务,则所述第三生成子单元,包括:
建立模块,用于建立所述第一初始层级任务的各初始分组任务各自对应的初始空集合,其中,每一初始分组任务对应的初始空集合用于指示该初始分组任务包括的初始计划标识;
添加模块,用于针对每一目标计划标识,若该目标计划标识与所述第一初始层级任务的初始计划标识列表中的第一初始计划标识相同,则将该目标计划标识添加至与所述第一初始计划标识所属的初始分组任务的初始空集合中,若该目标计划标识与各初始计划标识均不相同,则将该目标计划标识添加至新增集合中,得到各目标集合,其中,所述各目标集合包括增加了目标计划标识的初始空集合、新增集合;
第一确定模块,用于根据所述各目标集合确定所述多个目标分组任务。
24.根据权利要求23所述的装置,其中,所述第一确定模块,包括:
获取子模块,用于针对每一目标集合,获取该目标集合对应的广告物料数量;
第二确定子模块,用于若该目标集合对应的广告物料数量等于预设的广告物料参照数量,则将该目标集合中的目标计划标识确定为一个目标分组任务;
拆分子模块,用于若该目标集合对应的广告物料数量大于所述广告物料参照数量,则将该目标集合中的目标计划标识拆分为多个目标分组任务;
第三确定子模块,用于若该目标集合对应的广告物料数量小于所述广告物料参照数量,则将该目标集合中的目标计划标识与其他目标计划标识组合得到一个目标分组任务,或者,将该目标集合中的目标计划标识确定为一个目标分组任务;
其中,所述广告物料参照数量是基于获取历史广告物料数量的时长确定的。
25.根据权利要求24所述的装置,其中,所述拆分子模块用于,根据目标集合中各目标计划标识各自对应的广告物料数量、以及所述广告物料参照数量,将该目标集合中的目标计划标识拆分为多个目标分组任务。
26.根据权利要求22所述的装置,其中,若所述第一初始层级任务与所述目标层级任务相同,则第三生成子单元用于,将所述第一初始层级任务对应的多个初始分组任务,确定为所述多个目标分组任务。
27.根据权利要求22-26中任一项所述的装置,所述目标计划标识列表中包括多个目标计划标识;所述拆分单元,还包括:
比对子单元,用于将所述目标计划标识列表、与每一初始层级任务对应的初始计划标识列表分别进行比对;
第一确定子单元,用于若所述目标计划标识列表、与第二初始层级任务对应的初始计划标识列表相同,则确定所述目标层级任务与所述第二初始层级任务相同;
第二获取子单元,用于若所述预存层级任务中,没有与所述目标层级任务相同的初始层级任务,则从所述预存层级任务中,获取包括所述多个目标计划标识最多的第三初始层级任务;
第二确定子单元,用于确定所述第三初始层级任务是否为与所述目标层级任务相似的初始层级任务。
28.根据权利要求27所述的装置,其中,所述第二确定子单元,包括:
第二确定模块,用于确定所述第三初始层级任务中的初始计划标识的第一数量;
第二计算模块,用于计算所述第三初始层级任务中的初始计划标识、与所述目标计划标识之间的差异数量;
第三计算模块,用于计算所述差异数量与所述第一数量之间的商值;
第三确定模块,用于若所述商值小于等于预设第二阈值,则将所述第三初始层级任务确定为与所述目标层级任务相似的初始层级任务。
29.根据权利要求17-28中任一项所述的装置,还包括:
第二获取单元,用于若下载失败,则获取下载失败对应的第一目标分组任务、以及所述第一目标分组任务对应的广告物料数量;
下载单元,用于根据预设的广告物料参照数量、所述第一目标分组任务对应的广告物料数量,对下载失败的广告物料重新下载,其中,所述广告物料参照数量是基于获取历史广告物料数量的时长确定的。
30.根据权利要求29所述的装置,其中,所述下载单元,包括:
执行子单元,用于若所述第一目标分组任务对应的广告物料数量小于等于所述广告物料参照数量,则重新执行所述第一目标分组任务对应的线程任务;
第二分页子单元,用于若所述第一目标分组任务对应的广告物料数量大于所述广告物料参照数量,则重新对所述第一目标分组任务进行分页处理,得到所述第一目标分组任务的多个新分片任务;
下载子单元,用于根据所述多个新分片任务对下载失败的广告物料重新下载。
31.一种电子设备,包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1-15中任一项所述的方法。
32.一种存储有计算机指令的非瞬时计算机可读存储介质,其中,所述计算机指令用于使所述计算机执行根据权利要求1-15中任一项所述的方法。
33.一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现权利要求1-15中任一项所述方法的步骤。
CN202211497210.7A 2022-11-25 2022-11-25 广告物料的处理方法和装置 Pending CN115858115A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202211497210.7A CN115858115A (zh) 2022-11-25 2022-11-25 广告物料的处理方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211497210.7A CN115858115A (zh) 2022-11-25 2022-11-25 广告物料的处理方法和装置

Publications (1)

Publication Number Publication Date
CN115858115A true CN115858115A (zh) 2023-03-28

Family

ID=85666910

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211497210.7A Pending CN115858115A (zh) 2022-11-25 2022-11-25 广告物料的处理方法和装置

Country Status (1)

Country Link
CN (1) CN115858115A (zh)

Similar Documents

Publication Publication Date Title
CN110019125B (zh) 数据库管理的方法和装置
CN108734559B (zh) 一种订单处理方法和装置
CN112379971B (zh) 应用容器管理方法、装置及设备
CN109743202B (zh) 数据的管理方法、装置、设备及可读存储介质
US10761869B2 (en) Cloud platform construction method and cloud platform storing image files in storage backend cluster according to image file type
CN111898221A (zh) 选址方法、装置及计算机可读存储介质
CN112148693A (zh) 一种数据处理方法、装置及存储介质
CN110069265B (zh) 服务集群的升级方法、装置及存储介质
CA3139693A1 (en) Dynamic allocation of computing resources
US20220035844A1 (en) Centralized database system with geographically partitioned data
CN116325705A (zh) 边缘计算环境中的管理任务流
CN111176838A (zh) 为二分图中的节点分配嵌入向量的方法以及装置
CN115858115A (zh) 广告物料的处理方法和装置
CN114070889B (zh) 配置方法、流量转发方法、设备、存储介质及程序产品
CN113468140B (zh) 数据迁移处理方法、电子设备及计算机可读存储介质
CN116185578A (zh) 计算任务的调度方法和计算任务的执行方法
CN115665231A (zh) 服务创建方法、装置以及计算机可读存储介质
CN106888244B (zh) 一种业务处理方法及装置
CN115033551A (zh) 一种数据库迁移方法、装置、电子设备及存储介质
CN112183799A (zh) 用于合成任务单的任务分配方法及装置
CN113360689B (zh) 图像检索系统、方法、相关装置及计算机程序产品
CN115484149B (zh) 网络切换方法、网络切换装置、电子设备及存储介质
CN113778657B (zh) 一种数据处理方法和装置
CN111949500A (zh) 资源匹配方法、装置、电子设备及可读存储介质
CN113760897A (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