数据采集方法及装置制造方法及图纸

技术编号:16330064 阅读:54 留言:0更新日期:2017-09-29 21:15
本发明专利技术实施例公开了一种数据采集方法及装置,涉及信息技术领域,能够避免数据的重复采集,并且可以提高采集速度。本发明专利技术的方法包括:首先对采集任务进行拆分,得到多个分布式采集任务,并将所述多个分布式采集任务分别发送至对应的采集节点,然后接收各采集节点分别返回的数据信息,最后根据各所述数据信息,输出采集结果。

【技术实现步骤摘要】
数据采集方法及装置
本专利技术涉及信息
,尤其涉及一种数据采集方法及装置。背景技现有技术中,当采集节点需要采集数据时,向相应的服务器发起数据采集请求,并获取对应的数据信息。如果当前向服务器采集数据的采集节点较多,则会造成大量的重复采集,浪费采集次数。
技术实现思路
本专利技术的实施例提供一种数据采集方法及装置,能够解决重复采集数据的问题。为达到上述目的,本专利技术的实施例采用如下技术方案:第一方面,本专利技术的实施例提供一种数据采集方法,包括:对采集任务进行拆分,得到多个分布式采集任务;将所述多个分布式采集任务分别发送至对应的采集节点;接收各所述采集节点分别返回的数据信息;根据各所述数据信息,输出采集结果。结合第一方面,在第一方面的第一种可能的实现方式中,所述数据信息包括曾缓存数据信息或当前采集数据信息;其中,所述曾缓存数据信息缓存在采集节点,所述当前采集数据信息由采集节点基于所述分布式采集任务进行实时采集。结合第一方面,在第一方面的第二种可能的实现方式中,所述方法还包括:获取各所述采集节点的采集速度及采集成功率;基于所述采集速度及所述采集成功率,调整分布式采集任务的数量及采集节点的数量。结合第一方面,在第一方面的第三种可能的实现方式中,所述方法还包括:将所述采集结果发送给各所述采集节点。第二方面,本专利技术的实施例提供一种数据采集装置,包括:拆分模块,用于对采集任务进行拆分,得到多个分布式采集任务;任务发送模块,用于将所述拆分模块拆分得到的所述多个分布式采集任务分别发送至对应的采集节点;接收模块,用于接收各所述采集节点分别返回的数据信息;输出模块,用于根据所述接收模块接收的各所述数据信息,输出采集结果。结合第二方面,在第二方面的第一种可能的实现方式中,所述接收模块接收的所述数据信息包括曾缓存数据信息或当前采集数据信息;其中,所述曾缓存数据信息缓存在采集节点,所述当前采集数据信息由采集节点基于所述分布式采集任务进行实时采集。结合第二方面,在第二方面的第二种可能的实现方式中,所述装置还包括:获取模块、调整模块;所述获取模块,用于获取各所述采集节点的采集速度及采集成功率;所述调整模块,用于基于所述获取模块获取的所述采集速度及所述采集成功率,调整分布式采集任务的数量及采集节点的数量。结合第二方面,在第二方面的第三种可能的实现方式中,所述装置还包括:数据发送模块;所述数据发送模块,用于将所述采集结果发送给各所述采集节点。本专利技术实施例提供的数据采集方法及装置,通过首先对采集任务进行拆分,得到多个分布式采集任务,并将所述多个分布式采集任务分别发送至对应的采集节点,然后接收各采集节点分别返回的数据信息,最后根据各所述数据信息,输出采集结果。能够在多个采集节点同时向服务器采集数据时,通过各不同采集节点分别采集相应数据片段,并将各数据片段进行整合后发送给采集节点,能够实现发布式并发数据采集,从而可以避免数据的重复采集,并且可以提高采集速度。附图说明为了更清楚地说明本专利技术实施例中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。图1是本专利技术实施例的数据采集方法的流程示意图;图2是本专利技术实施例的数据采集方法的另一流程示意图;图3是本专利技术实施例的数据采集装置结构示意图;图4是本专利技术实施例的数据采集装置的另一结构示意图。具体实施方式下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本专利技术保护的范围。本专利技术一实施例提供一种数据采集方法,如图1所示,所述方法包括:101、对采集任务进行拆分,得到多个分布式采集任务。其中,分布式采集任务的数量可以基于当前的采集节点个数进行实时确定,也可以按照当前采集数据所占空间的大小进行确定。在本专利技术实施例中,可以对采集任务进行数据等量拆分,即每个分布式采集任务对应的待采集数据大小均相同;也可以按照各采集节点的采集能力(例如,采集节点采集数据的速度和/或成功率)对采集任务进行拆分,即对于采集速度快且采集成功率高的采集节点,为其分配的分布式采集任务对应的待采集数据越大。对于本专利技术实施例,采集任务可以针对任何数据的采集,例如,采集任务可以为对网页数据的采集。102、将多个分布式采集任务分别发送至对应的采集节点。其中,分布式采集任务携带有采集节点标识及待采集数据标识。103、接收各采集节点分别返回的数据信息。其中,采集节点返回的数据信息,可以是采集节点实时基于分布式采集任务进行数据采集得到,也可以是已缓存在采集节点的数据。104、根据各所述数据信息,输出采集结果。其中,采集结果包括采集任务对应的数据信息。在本专利技术实施例中,采集结果可以由各数据信息拼接得到。与现有技术相比,本专利技术实施例能够在多个采集节点同时向服务器采集数据时,通过各不同采集节点分别采集相应数据片段,并将各数据片段进行整合后发送给采集节点,能够实现发布式并发数据采集,从而可以避免数据的重复采集,并且可以提高采集速度。本专利技术又一实施例提供一种数据采集方法,如图2所示,所述方法包括:201、获取各采集节点的采集速度及采集成功率。202、基于采集速度及采集成功率,调整分布式采集任务的数量及采集节点的数量。例如,对于采集成功率较低的采集节点,可以将其从采集任务中删除,以避免由于部分采集节点对数据采集失败,而导致采集任务失败的情况。在本专利技术实施例中,删除部分成功率较低的采集节点后,即减少采集任务的数量及采集节点的数量。再例如,对于新加入的采集速度较高或采集成功率较高的采集节点,可以将其加入采集任务,即增加采集任务的数量及采集节点的数量。对于本专利技术实施例,可以基于采集速度及采集成功率,对分布式采集任务的数量及采集节点的数量进行动态调整。在本专利技术实施例中,可以按照预设时间间隔,动态调整分布式采集任务的数量及采集节点的数量;也可以按照随机时间间隔,动态调整分布式采集任务的数量及采集节点的数量。例如,期望采集的数据信息总量为Itotal,单位为Byte;可用的采集节点数量为N,各采集节点的采集速度为vi,(1≤i≤N),单位为Byte/s;各采集节点的采集成功率为pi,(1≤i≤N),用百分比表示。步骤202可根据需求的不同,而实施为以下方式:方式1:要求在给定的时间ΔT1内完成采集任务,且要求所有采集节点参与数据采集。为完成采集任务,每个采集节点工作的有效采集时间ΔT2为:其中,λ为防止数据丢包等意外而设置的时间放大系数,一般可取1≤λ≤1.2;第i个采集节点分配的数据采集任务表示为Ii,表示第i个采集节点所需要采集的数据信息量:ΔT2也是能够完成采集任务的最短时间,因此ΔT1≥ΔT2。上述方式1,可以控制采集任务的采集时间,且充分利用每个采集节点,满足对采集时间的需求。方式2:要求在给定的时间ΔT1内(单位可为秒)完成采集任务,且只要求采集效率最高的若干个采集节点完成采集任务。为完成采集任务,要求的平均有效数据采集速率本文档来自技高网...
数据采集方法及装置

【技术保护点】
一种数据采集方法,其特征在于,包括:对采集任务进行拆分,得到多个分布式采集任务;将所述多个分布式采集任务分别发送至对应的采集节点;接收各所述采集节点分别返回的数据信息;根据各所述数据信息,输出采集结果。

【技术特征摘要】
1.一种数据采集方法,其特征在于,包括:对采集任务进行拆分,得到多个分布式采集任务;将所述多个分布式采集任务分别发送至对应的采集节点;接收各所述采集节点分别返回的数据信息;根据各所述数据信息,输出采集结果。2.根据权利要求1所述的方法,其特征在于,所述数据信息包括曾缓存数据信息或当前采集数据信息;其中,所述曾缓存数据信息缓存在采集节点,所述当前采集数据信息由采集节点基于所述分布式采集任务进行实时采集。3.根据权利要求1所述的方法,其特征在于,所述方法还包括:获取各所述采集节点的采集速度及采集成功率;基于所述采集速度及所述采集成功率,调整分布式采集任务的数量及采集节点的数量。4.根据权利要求1所述的方法,其特征在于,所述方法还包括:将所述采集结果发送给各所述采集节点。5.一种数据采集装置,其特征在于,包括:拆分模块,用于对采集任务进行拆分,得到多个分布式采集任务;任务发送模块,用...

【专利技术属性】
技术研发人员:汤寒林
申请(专利权)人:贵州数据宝网络科技有限公司
类型:发明
国别省市:贵州,52

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1