一种基于分布式消息系统的采集方法及装置制造方法及图纸

技术编号:15106192 阅读:86 留言:0更新日期:2017-04-08 16:51
本发明专利技术提供一种基于分布式消息系统的采集方法及装置,其中方法可以包括:建立自动分配规则;接收所述管理端向所述任务主题发送的目标采集任务;根据自动分配规则发送所述目标采集任务至所述至少一个采集节点,以使至少一个采集节点根据所述目标采集任务执行数据的采集;接收至少一个采集节点在确定采集的数据中包括子任务时向所述任务主题返回的该子任务,并将该子任务作为所述目标采集任务;重复执行接收步骤和发送步骤,直至在设定的时间段内未接收到所述至少一个采集节点返回的子任务。本发明专利技术能够实现自动分配采集任务,提高采集效率。

【技术实现步骤摘要】

本专利技术涉及数据处理
,特别涉及一种基于分布式消息系统的采集方法及装置
技术介绍
随着互联网的飞速发展,大数据这个概念越来越受到人们的关注。企业可以通过网络爬虫采集互联网中的数据,并且对数据进行深加工找出更有价值的数据分析结果,并通过分析结果提供决策支持,驱动企业的加速发展。传统的数据采集方式通过爬取采集任务的列表URL,人工将列表URL分配到采集节点进行采集。可见,传统的采集方式需要人工分配采集任务,效率较低。
技术实现思路
本专利技术提供一种基于分布式消息系统的采集方法及装置,能够自动分配采集任务。第一方面,本专利技术实施例提供了一种基于分布式消息系统的采集方法,应用于分布式消息系统,其中,所述分布式消息系统连接有至少一个采集节点及管理端,并配置任务主题,还包括:建立自动分配规则,所述自动分配规则用于实现在确定所述任务主题接收到采集任务时自动向所述至少一个采集节点分配该采集任务的触发功能;接收所述管理端向所述任务主题发送的目标采集任务;根据所述自动分配规则发送所述目标采集任务至所述至少一个采集节点,以使所述至少一个采集节点根据所述目标采集任务执行数据的采集;接收所述至少一个采集节点在确定采集的数据中包括子任务时向所述任务主题返回的该子任务,并将该子任务作为所述目标采集任务并执行根据所述自动分配规则发送所述目标采集任务步骤;重复执行接收所述管理端向所述任务主题发送的目标采集任务步骤和根据所述自动分配规则发送所述目标采集任务步骤步骤,直至在设定的时间段内未接收到所述至少一个采集节点返回的子任务。优选地,所述自动分配规则进一步包括:按均分配子规则;其中,所述发送所述采集任务至所述至少一个采集节点,包括:确定每一个采集节点所包括的当前任务量,并根据所述采集任务对应的总任务量,计算向每一个采集节点分配的目标任务量,并将计算的目标任务量发送给相应的采集节点,以使分配后每一个采集节点包括均等的任务量。优选地,进一步包括:配置日志主题,其中,所述分布式消息系统连接有分布式日志系统;接收所述至少一个采集节点发送到所述日志主题的采集日志和错误日志,输出所述采集日志和错误日志给分布式日志系统,通过分布式日志系统分析和统计采集状况。第二方面,本专利技术实施例提出了一种基于分布式消息系统的采集方法,应用于采集节点,所述采集节点连接有分布式消息系统,还包括:接收所述分布式消息系统发送的目标采集任务;判断所述目标采集任务中是否包括列表URL,如果所述目标采集任务包括列表URL,将所述列表URL中的明细URL作为子任务发送给所述分布式消息系统,以使所述分布式消息系统将所述子任务作为目标采集任务重新执行分配,并执行上一步;否则,执行下一步;爬取所述目标采集任务,并存储爬取到的数据;重复执行判断步骤和爬取步骤,直至所述目标采集任务中不包括列表URL。第三方面,本专利技术实施例提出了一种分布式消息系统,连接有至少一个采集节点及管理端,还包括:配置模块,用于配置任务主题:建立模块,用于建立自动分配规则,所述自动分配规则用于实现在确定所述任务主题接收到采集任务时自动向所述至少一个采集节点分配该采集任务的触发功能;接收模块,用于接收所述管理端向所述任务主题发送的目标采集任务,将所述目标采集任务输出给发送模块;发送模块,用于根据所述自动分配规则发送所述目标采集任务至所述至少一个采集节点,以使所述至少一个采集节点根据所述目标采集任务执行数据的采集;处理模块,用于接收所述至少一个采集节点在确定采集的数据中包括子任务时向所述任务主题返回的该子任务,并将该子任务作为所述目标采集任务并触发发送模块;循环模块,用于重复触发发送模块和处理模块,直至在设定的时间段内未接收到所述至少一个采集节点返回的子任务。优选地,进一步包括:规则定义模块,用于定义自动分配规则的按均分配子规则;所述发送所述采集任务至所述至少一个采集节点,包括:确定每一个采集节点所包括的当前任务量,并根据所述采集任务对应的总任务量,计算向每一个采集节点分配的目标任务量,并将计算的目标任务量发送给相应的采集节点,以使分配后每一个采集节点包括均等的任务量。优选地,进一步包括:日志配置模块,用于配置日志主题,其中,所述分布式消息系统连接有分布式日志系统;日志接收模块,用于接收所述至少一个采集节点发送到所述日志主题的采集日志和错误日志,输出所述采集日志和错误日志给分布式日志系统,通过分布式日志系统分析和统计采集状况。第四方面,本专利技术实施例提出了一种采集节点,连接有分布式消息系统,还包括:任务接收模块,用于接收所述分布式消息系统发送的目标采集任务,将所述目标采集任务输出给判断模块;判断模块,用于判断所述目标采集任务中是否包括列表URL,如果所述目标采集任务包括列表URL,将所述列表URL中的明细URL作为子任务发送给所述分布式消息系统,以使所述分布式消息系统将所述子任务作为目标采集任务重新执行分配,并触发任务接收模块;否则,触发爬取模块;爬取模块,用于爬取所述目标采集任务,并存储爬取到的数据;循环模块,用于重复触发判断模块和爬取模块,直至所述目标采集任务中不包括列表URL。本专利技术实施例提出的基于分布式消息系统的采集方法及装置,分布式消息系统通过接收管理端和采集节点发送的采集任务,根据自动采集规则自动分配采集任务到采集节点,从而可以实现自动分配采集任务,提高采集效率。附图说明图1是本专利技术实施例提供的方法流程图;图2是本专利技术另一实施例提供的方法流程图;图3是本专利技术又一实施例提供的方法流程图;图4是本专利技术实施例提供的分布式消息系统结构示意图;图5是本专利技术另一实施例提供的分布式消息系统结构示意图;图6是本专利技术又一实施例提供的分布式消息系统结构示意图;图7是本专利技术实施例提供的采集节点结构示意图。具体实施方式下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。本专利技术实施例提供了一种基于分布式消息系统的采集方法,应用于分布式消息系统,其中,所述分布式消息系统连接有至少一个采本文档来自技高网...

【技术保护点】
一种基于分布式消息系统的采集方法,其特征在于,应用于分布式消息系统,其中,所述分布式消息系统连接有至少一个采集节点及管理端,并配置任务主题,还包括:S1:建立自动分配规则,所述自动分配规则用于实现在确定所述任务主题接收到采集任务时自动向所述至少一个采集节点分配该采集任务的触发功能;S2:接收所述管理端向所述任务主题发送的目标采集任务;S3:根据所述自动分配规则发送所述目标采集任务至所述至少一个采集节点,以使所述至少一个采集节点根据所述目标采集任务执行数据的采集;S4:接收所述至少一个采集节点在确定采集的数据中包括子任务时向所述任务主题返回的该子任务,并将该子任务作为所述目标采集任务并执行S3;S5:重复执行S3‑S4,直至在设定的时间段内未接收到所述至少一个采集节点返回的子任务。

【技术特征摘要】
1.一种基于分布式消息系统的采集方法,其特征在于,应用于分布式消
息系统,其中,所述分布式消息系统连接有至少一个采集节点及管理端,并
配置任务主题,还包括:
S1:建立自动分配规则,所述自动分配规则用于实现在确定所述任务主
题接收到采集任务时自动向所述至少一个采集节点分配该采集任务的触发功
能;
S2:接收所述管理端向所述任务主题发送的目标采集任务;
S3:根据所述自动分配规则发送所述目标采集任务至所述至少一个采集
节点,以使所述至少一个采集节点根据所述目标采集任务执行数据的采集;
S4:接收所述至少一个采集节点在确定采集的数据中包括子任务时向所
述任务主题返回的该子任务,并将该子任务作为所述目标采集任务并执行
S3;
S5:重复执行S3-S4,直至在设定的时间段内未接收到所述至少一个采
集节点返回的子任务。
2.根据权利要求1所述的方法,其特征在于,
所述自动分配规则进一步包括:按均分配子规则;
所述发送所述采集任务至所述至少一个采集节点,包括:确定每一个采
集节点所包括的当前任务量,并根据所述采集任务对应的总任务量,计算向
每一个采集节点分配的目标任务量,并将计算的目标任务量发送给相应的采
集节点,以使分配后每一个采集节点包括均等的任务量。
3.根据权利要求1所述的方法,其特征在于,进一步包括:
配置日志主题,其中,所述分布式消息系统连接有分布式日志系统;
接收所述至少一个采集节点发送到所述日志主题的采集日志和错误日
志,输出所述采集日志和错误日志给分布式日志系统,通过分布式日志系统
分析和统计采集状况。
4.一种基于分布式消息系统的采集方法,其特征在于,应用于采集节点,
所述采集节点连接有分布式消息系统,还包括:
S1:接收所述分布式消息系统发送的目标采集任务;
S2:判断所述目标采集任务中是否包括列表URL,如果所述目标采集任
务包括列表URL,将所述列表URL中的明细URL作为子任务发送给所述分
布式消息系统,以使所述分布式消息系统将所述子任务作为目标采集任务重
新执行分配,并执行S1;否则,执行S3;
S3:爬取所述目标采集任务,并存储爬取到的数据;
S4:重复执行步骤S2-S3,直至所述目标采集任务中不包括列表URL。
5.一种分布式消息系统,其特征在于,连接有至少一个采集节点及管理
端,还包...

【专利技术属性】
技术研发人员:张裕超王传超孙海峰
申请(专利权)人:浪潮软件集团有限公司
类型:发明
国别省市:山东;37

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

1