发明内容
本发明的主要目的在于提供一种网络数据下载方法及装置,以解决网络数据下载效率低的问题。
为了实现上述目的,根据本发明的一个方面,提供了一种网络数据下载方法。
根据本发明的网络数据下载方法包括:确定待下载网络数据,其中,待下载网络数据为随时间变化更新的网络数据,待下载网络数据包括多种类型的网络数据,多种类型的网络数据为更新时间间隔不同的网络数据;分别获取下载多种类型的网络数据的下载时长;根据下载时长和更新时间间隔分别计算多种类型的网络数据的单位下载时长,其中,单位下载时长为下载单位更新时间间隔的网络数据的时长;获取多种类型的网络数据的单位下载时长中的最小值;确定单位下载时长中的最小值对应的网络数据的更新时间间隔为目标更新时间间隔;按照目标更新时间间隔下载待下载网络数据。
进一步地,按照以下方法确定待下载网络数据包括的多种类型的网络数据:确定预设网络数据,其中,预设网络数据为更新时间间隔为预设时间间隔阈值的网络数据;对预设时间间隔阈值进行二分法运算,获取多个运算结果;分别获取更新时间间隔为多个运算结果的网络数据;确定预设网络数据和更新时间间隔为多个运算结果的网络数据为待下载网络数据包括的多种类型的网络数据。
进一步地,在按照目标更新时间间隔下载待下载网络数据之后,该方法还包括:监测下载待下载网络数据的网站的访客量;判断访客量是否超过第一阈值;如果访客量超过第一阈值,则在当前网络环境下重新获取目标更新时间间隔;按照重新获取的目标更新时间间隔继续下载待下载网络数据。
进一步地,在按照目标更新时间间隔下载待下载网络数据之后,该方法还包括:监测待下载网络数据所处的网络环境的变化参量;判断网络环境的变化参量是否超过第二阈值;如果网络环境的变化参量超过第二阈值,则在当前网络环境下重新获取目标更新时间间隔;按照重新获取的目标更新时间间隔继续下载待下载网络数据。
进一步地,在当前网络环境下重新获取目标更新时间间隔包括:获取多个历史目标更新时间间隔;计算多个历史目标更新时间间隔的平均值;根据多个历史目标更新时间间隔的平均值确定多个参考目标更新时间间隔;分别确定更新时间间隔为多个历史目标更新时间间隔的平均值和更新时间间隔为多个参考目标更新时间间隔的多种网络数据;确定多种网络数据对应的目标更新时间间隔为当前网络环境下重新获取的目标更新时间间隔。
进一步地,在当前网络环境下重新获取目标更新时间间隔之后,该方法还包括:获取多个历史目标更新时间间隔;计算多个历史目标更新时间间隔和重新获取的目标更新时间间隔的平均值,按照重新获取的目标更新时间间隔继续下载待下载网络数据包括:以多个历史目标更新时间间隔和重新获取的目标更新时间间隔的平均值为目标更新时间间隔继续下载待下载网络数据。
为了实现上述目的,根据本发明的另一方面,提供了一种网络数据下载装置。
根据本发明的网络数据下载装置包括:第一确定单元,用于确定待下载网络数据,其中,待下载网络数据为随时间变化更新的网络数据,待下载网络数据包括多种类型的网络数据,多种类型的网络数据为更新时间间隔不同的网络数据;第一获取单元,用于分别获取下载多种类型的网络数据的下载时长;计算单元,用于根据下载时长和更新时间间隔分别计算多种类型的网络数据的单位下载时长,其中,单位下载时长为下载单位更新时间间隔的网络数据的时长;第二获取单元,用于获取多种类型的网络数据的单位下载时长中的最小值;第二确定单元,用于确定单位下载时长中的最小值对应的网络数据的更新时间间隔为目标更新时间间隔;第一下载单元,用于按照目标更新时间间隔下载待下载网络数据。
进一步地,按照以下模块确定待下载网络数据包括的多种类型的网络数据:第一确定模块,用于确定预设网络数据,其中,预设网络数据为更新时间间隔为预设时间间隔阈值的网络数据;运算模块,用于对预设时间间隔阈值进行二分法运算,获取多个运算结果;获取模块,用于分别获取更新时间间隔为多个运算结果的网络数据;第二确定模块,用于确定预设网络数据和更新时间间隔为多个运算结果的网络数据为待下载网络数据包括的多种类型的网络数据。
进一步地,该装置还包括:第一监测单元,用于监测下载待下载网络数据的网站的访客量;第一判断单元,用于判断访客量是否超过第一阈值;第三获取单元,用于在访客量超过第一阈值时,在当前网络环境下重新获取目标更新时间间隔;第二下载单元,用于按照重新获取的目标更新时间间隔继续下载待下载网络数据。
进一步地,该装置还包括:第二监测单元,用于监测待下载网络数据所处的网络环境的变化参量;第二判断单元,用于判断网络环境的变化参量是否超过第二阈值;第四获取单元,用于如果网络环境的变化参量超过第二阈值,则在当前网络环境下重新获取目标更新时间间隔;第三下载单元,用于按照重新获取的目标更新时间间隔继续下载待下载网络数据。
通过本发明,采用包括以下步骤的方法:确定待下载网络数据,其中,待下载网络数据为随时间变化更新的网络数据,待下载网络数据包括多种类型的网络数据,多种类型的网络数据为更新时间间隔不同的网络数据;分别获取下载多种类型的网络数据的下载时长;根据下载时长和更新时间间隔分别计算多种类型的网络数据的单位下载时长,其中,单位下载时长为下载单位更新时间间隔的网络数据的时长;获取多种类型的网络数据的单位下载时长中的最小值;确定单位下载时长中的最小值对应的网络数据的更新时间间隔为目标更新时间间隔;按照目标更新时间间隔下载待下载网络数据,解决了网络数据下载效率低的问题,进而通过将单位下载时长中的最小值对应的网络数据的更新时间间隔作为目标更新时间间隔,并按照目标更新时间间隔下载待下载网络数据,达到了提高网络数据下载效率的效果。
具体实施方式
需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本发明。
为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分的实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本申请保护的范围。
需要说明的是,本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
根据本发明的实施例,提供了一种网络数据下载方法。
图1是根据本发明的网络数据下载方法的实施例的流程图。如图1所示,该方法包括步骤S102至步骤S112:
步骤S102,确定待下载网络数据,其中,待下载网络数据为随时间变化更新的网络数据,待下载网络数据包括多种类型的网络数据,多种类型的网络数据为更新时间间隔不同的网络数据。
待下载网络数据为随时间变化更新的网络数据,例如,消费数据报表,即广告投放在搜索引擎所产生的消费情况的数据报表。由于待下载网络数据的不断更新性,使得待下载网络数据可以按照不同的更新时间间隔来下载。例如,下载消费数据报表,可以每次下载更新时间间隔为10天、20或者30天等不同更新时间间隔的数据报表。通过API与搜索引擎交互测试发现,在规定的时间间隔上限内(下载时间间隔上限指API提供商规定每次提交时间间隔不得超过一个值,例如30天),每次下载不同更新时间间隔的数据,执行时间不是和所下载数据的更新时间间隔成正比的,而是会存在一个效率最高值。这是由于网络环境(例如网速)变化等因素的影响,导致不同的更新时间间隔来下载数据的效率往往是不同的。这样,就需要确定在特定的环境下以多大的更新时间间隔下载待下载的网络数据。
可选地,可以在特定的网络、网站访客量等条件下,对多种类型的网络数据进行下载测试,检测在更新时间间隔为多大时数据下载效率最高。以消费数据报表为例进行说明。假设API供应商规定的提交消费数据报表的时间间隔不得超过30天,则可以分别以更新时间间隔为30天、29天……1天分别进行下载测试,获取下载效率最高的数据对应的更新时间间隔。或者,也可以采用二分法运算等方式设定用来测试的更新时间间隔。需要说明的是,不同的网络数据的更新时间间隔不同,因此可选的测试方式也不同,可以按照用户的实际需求自行设定。对应不同更新时间间隔的网络数据可以认为是不同类型的网络数据。
优选地,可以按照以下方法确定待下载网络数据包括的多种类型的网络数据:确定预设网络数据,其中,预设网络数据为更新时间间隔为预设时间间隔阈值的网络数据;对预设时间间隔阈值进行二分法运算,获取多个运算结果;分别获取更新时间间隔为多个运算结果的网络数据;确定预设网络数据和更新时间间隔为多个运算结果的网络数据为待下载网络数据包括的多种类型的网络数据。
以消费数据报表为例进行说明。假设API供应商规定的提交消费数据报表的时间间隔不得超过30天,则按照二分法,可以分别对更新时间间隔为30天、15天、7天、3天、1天的网络数据进行下载测试。
步骤S104,分别获取下载多种类型的网络数据的下载时长。
以消费数据报表为例进行说明。比如,下载更新时间间隔为30天的消费数据报表的时长为66分钟,下载更新时间间隔为15天的消费数据报表的时长为45分钟。需要说明的是,在不同的网络环境下,相同更新时间间隔的网络数据的下载时长往往是存在差异的。
步骤S106,根据下载时长和更新时间间隔分别计算多种类型的网络数据的单位下载时长,其中,单位下载时长为下载单位更新时间间隔的网络数据的时长。
网络数据的单位下载时长是下载时长和更新时间间隔的比值,单位下载时长越短,表明该种类型的网络数据的下载效率越高;单位下载时长越长,表明该种类型的网络数据的下载效率越低。
图2是根据本发明的单位下载时长和更新时间间隔对应关系的示意图。如图2所示,横坐标是更新时间间隔,纵坐标是平均每天的下载时间(即单位下载时长)。数据1、3、7、15、30分别代表测试的更新时间间隔的天数;2、2.3、1.43、3、2.17分别代表以上天数分别对应的单位下载时长。可见,不同的更新时间间隔的网络数据对应的单位下载时长是不同的。更新时间间隔为15天的网络数据下载效率最低,更新时间间隔为7天的网络数据下载效率最高。
步骤S108,获取多种类型的网络数据的单位下载时长中的最小值。
步骤S110,确定单位下载时长中的最小值对应的网络数据的更新时间间隔为目标更新时间间隔。
步骤S112,按照目标更新时间间隔下载待下载网络数据。
例如,通过二分法运算的方式对不同更新时间间隔的网络数据的下载时长进行测试:
(1)第一次检测更新时间间隔为30天的下载时长,执行时间为66分钟(3960秒),平均每天132秒;
(2)第二次检测更新时间间隔为15天的下载时长,执行时间为45分钟(2700秒),平均每天180秒;
(3)第三次检测更新时间间隔为7天的下载时长,执行时间为10分钟(600秒),平均每天85.71秒;
(4)第四次检测更新时间间隔为3天的下载时长,执行时间为7分钟(420秒),平均每天140秒;
……
经过以上多次尝试,判断出85.71秒的方案(更新时间间隔为7天)为下载效率最高的方案,因此以更新时间间隔为7天进行网络数据的下载。该方法可以使用户的操作在API规定的下载时间间隔上限范围内动态确定每批下载数据的更新时间间隔,使得下载效率基本能达到最高。
在按照目标更新时间间隔下载待下载网络数据之后,由于下载网络数据的网站的访客量是会发生变动的,网站的访客量的变动会导致下载效率的变化,因此还可以进行如下步骤:监测下载待下载网络数据的网站的访客量;判断访客量是否超过第一阈值;如果访客量超过第一阈值,则在当前网络环境下重新获取目标更新时间间隔;按照重新获取的目标更新时间间隔继续下载待下载网络数据。
第一阈值是该网站访客量的一个参考值,当访客量(或者单位时间的访客量)超过第一阈值后,需要对当前网站环境的目标更新时间间隔进行重新的测试,保证以效率最高的方式进行网络数据下载。这里,第一阈值的设定可以但不局限于根据网络测试人员的测试经验来设定。
同样地,在按照目标更新时间间隔下载待下载网络数据之后,由于待下载网络数据所处的网络环境是会发生变动的,网络环境的变动会导致下载效率的变化,因此还可以进行如下步骤:监测待下载网络数据所处的网络环境的变化参量;判断网络环境的变化参量是否超过第二阈值;如果网络环境的变化参量超过第二阈值,则在当前网络环境下重新获取目标更新时间间隔;按照重新获取的目标更新时间间隔继续下载待下载网络数据。
第二阈值为描述网络环境变化的一个参量,例如,网速。当网络环境参量的变化超过第二阈值,比如,网速超过120Mbps或者网速低于60Mbps,则需要重新获取目标更新时间间隔,以保证以效率最高的方式进行网络数据下载。这里,第二阈值的设定可以但不局限于根据网络测试人员的测试经验来设定。
需要说明的是,当网络环境的变化导致待下载网络数据下载失败时,需要在该网络环境下重新进行测试,以获取该网络环境下最优的目标更新时间间隔。
在当前网络环境下重新获取目标更新时间间隔可以按照如下步骤进行:获取多个历史目标更新时间间隔;计算多个历史目标更新时间间隔的平均值;根据多个历史目标更新时间间隔的平均值确定多个参考目标更新时间间隔;分别确定更新时间间隔为多个历史目标更新时间间隔的平均值和更新时间间隔为多个参考目标更新时间间隔的多种网络数据;确定多种网络数据对应的目标更新时间间隔为当前网络环境下重新获取的目标更新时间间隔。
在当前网络环境下重新获取目标更新时间间隔之后,还可以进行如下步骤:获取多个历史目标更新时间间隔;计算多个历史目标更新时间间隔和重新获取的目标更新时间间隔的平均值。然后,按照重新获取的目标更新时间间隔继续下载待下载网络数据包括:以多个历史目标更新时间间隔和重新获取的目标更新时间间隔的平均值为目标更新时间间隔继续下载待下载网络数据。
具体地,当系统每次进行了上述测试后,系统会把最佳方案记录下来,经过一段时间的记录,系统会根据历史情况以及当前测试情况取平均值作为每批下载数据的更新时间间隔。这样可以对用户下载的总时间进行用时估计,误差很小。
另外,该方法不会每次都进行如前所述的测试,系统会以历史记录的最佳值的平均值为起点进行测试。例如:先前一个月的平均最佳值为更新时间间隔为7天,那么系统会自动选取3天、7天和15天三个值针对当前网络环境重新进行测试。如果最终获取的目标更新时间间隔和之前的记录类似,即可以直接选取更新时间间隔为7天进行数据下载,以节省每次测试消耗的时间。
该实施例由于采用了如下步骤:确定待下载网络数据,其中,待下载网络数据为随时间变化更新的网络数据,待下载网络数据包括多种类型的网络数据,多种类型的网络数据为更新时间间隔不同的网络数据;分别获取下载多种类型的网络数据的下载时长;根据下载时长和更新时间间隔分别计算多种类型的网络数据的单位下载时长,其中,单位下载时长为下载单位更新时间间隔的网络数据的时长;获取多种类型的网络数据的单位下载时长中的最小值;确定单位下载时长中的最小值对应的网络数据的更新时间间隔为目标更新时间间隔;按照目标更新时间间隔下载待下载网络数据,解决了网络数据下载效率低的问题,进而通过将单位下载时长中的最小值对应的网络数据的更新时间间隔作为目标更新时间间隔,并按照目标更新时间间隔下载待下载网络数据,达到了提高网络数据下载效率的效果。
根据本发明的实施例,提供了一种网络数据下载装置。需要说明的是,本发明实施例的网络数据下载装置可以用于执行本发明实施例所提供的网络数据下载方法,本发明实施例的网络数据下载方法也可以通过本发明实施例所提供的网络数据下载装置来执行。
图3是根据本发明的网络数据下载装置的实施例的示意图。如图3所示,该装置包括:第一确定单元10、第一获取单元20、计算单元30、第二获取单元40、第二确定单元50和第一下载单元60。
第一确定单元10,用于确定待下载网络数据,其中,待下载网络数据为随时间变化更新的网络数据,待下载网络数据包括多种类型的网络数据,多种类型的网络数据为更新时间间隔不同的网络数据。
可以按照以下模块确定待下载网络数据包括的多种类型的网络数据:第一确定模块,用于确定预设网络数据,其中,预设网络数据为更新时间间隔为预设时间间隔阈值的网络数据;运算模块,用于对预设时间间隔阈值进行二分法运算,获取多个运算结果;获取模块,用于分别获取更新时间间隔为多个运算结果的网络数据;第二确定模块,用于确定预设网络数据和更新时间间隔为多个运算结果的网络数据为待下载网络数据包括的多种类型的网络数据。
第一获取单元20,用于分别获取下载多种类型的网络数据的下载时长。
计算单元30,用于根据下载时长和更新时间间隔分别计算多种类型的网络数据的单位下载时长,其中,单位下载时长为下载单位更新时间间隔的网络数据的时长。
第二获取单元40,用于获取多种类型的网络数据的单位下载时长中的最小值。
第二确定单元50,用于确定单位下载时长中的最小值对应的网络数据的更新时间间隔为目标更新时间间隔。
第一下载单元60,用于按照目标更新时间间隔下载待下载网络数据。
该装置还可以包括:第一监测单元,用于监测下载待下载网络数据的网站的访客量;第一判断单元,用于判断访客量是否超过第二阈值;第三获取单元,用于在访客量超过第二阈值时,在当前网络环境下重新获取目标更新时间间隔;第二下载单元,用于按照重新获取的目标更新时间间隔继续下载待下载网络数据。
该装置还可以包括:第二监测单元,用于监测待下载网络数据所处的网络环境的变化参量;第二判断单元,用于判断网络环境的变化参量是否超过第一阈值;第四获取单元,用于如果网络环境的变化参量超过第一阈值,则在当前网络环境下重新获取目标更新时间间隔;第三下载单元,用于按照重新获取的目标更新时间间隔继续下载待下载网络数据。
该实施例提供的网络数据下载装置包括:第一确定单元10、第一获取单元20、计算单元30、第二获取单元40、第二确定单元50和第一下载单元60。该装置通过第二确定单元50将单位下载时长中的最小值对应的网络数据的更新时间间隔作为目标更新时间间隔,并利用第一下载单元60按照目标更新时间间隔下载待下载网络数据,解决了网络数据下载效率低的问题,进而达到了提高网络数据下载效率的效果。
显然,本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。