一种云计算中自动监控分布式网络爬虫的方法技术

技术编号:10340128 阅读:174 留言:0更新日期:2014-08-21 13:13
本发明专利技术公开了一种云计算中自动监控分布式网络爬虫的方法,属于一种云计算技术,一种云计算中自动监控分布式网络爬虫的方法,通过脚本和轮询实现实时监控nutch任务,执行并自动启动下一步操作;由两个脚本实现,脚本Ⅰ是循环执行多个抓取周期,每个周期中顺序执行每一步任务,并将执行情况写入日志;脚本Ⅱ是使用crond实时监控任务是否在执行,如果终止,检查上一步执行情况,将中断信息发送邮件给运维人员,并自动启动下一步任务继续执行。本发明专利技术通过脚本和轮询实现实时监控nutch任务执行,并自动启动下一步操作;数据抓取时间,使用方便。

【技术实现步骤摘要】
—种云计算中自动监控分布式网络爬虫的方法
本专利技术涉及一种云计算技术,具体地说是。
技术介绍
云计算(cloud computing)是基于互联网的相关服务的增加、使用和交付模式,通常涉及通过互联网来提供动态易扩展且经常是虚拟化的资源。云是网络、互联网的一种比喻说法。云计算是通过网络提供可伸缩的廉价的分布式计算能力。云计算为物联网所产生的海量数据提供了很好的存储空间,并使得实时在线处理成为可能。云计算是实现物联网的核心,运用云计算模式使得物联网中各类物品的实时动态管理和智能分析变得可能。云计算为物联网提供了可用、便捷、按需的网络访问,如果没有这个工具,物联网产生的海量信息无法传输、处理和应用。hadoop是云计算技术的重要组成部分,它是目前云计算、大数据解决方案中最为流行和最为稳定的工具,是一个能够对大量数据进行分布式处理的软件框架。Nutch是与Hadoop结合最好的分布式网络爬虫软件,所谓网络爬虫是一个自动提取网页的程序,它是搜索引擎的重要组成。Nutch是一个由Java实现的,刚刚诞生开放源代码(open-source)的web搜索引擎。Nutch主要分为两个部分:爬虫crawler和查询searcher, Crawler主要用于从网络上抓取网页并为这些网页建立索引,Searcher主要利用这些索引检索用户的查找关键词来产生查找结果。两者之间的接口是索引,所以除去索引部分,两者之间的耦合度很低。Nutch的一步式抓取命令Crawler在执行时,经常中断。而按Nutch —个抓取周期的分步任务顺序generate、fetch、parse、updatedb单步执行则不会产生这个问题。但是分单步抓取需要实时关注任务的状态,在上一任务结束时手动启动下一任务。这种方式过于占用人力,而且在很容易出现一段时间任务停止而没被发现,从而浪费数据抓取时间。
技术实现思路
本专利技术的技术任务是提供一种通过脚本和轮询实现实时监控nutch任务执行,并自动启动下一步操作的。本专利技术的技术任务是按以下方式实现的,,通过脚本和轮询实现实时监控nutch任务,执行并自动启动下一步操作;由两个脚本实现,脚本I是循环执行多个抓取周期,每个周期中顺序执行每一步任务,并将执行情况写入日志;脚本II是使用crond实时监控任务是否在执行,如果终止,检查上一步执行情况,将中断信息发送邮件给运维人员,并自动启动下一步任务继续执行,具体流程为: (1)、开始,每分钟执行一次获取是否有正在执行的nutch任务; (2)、如果没有执行nutch任务,将相关信息发送邮件给运维人员;(3)、从日志runapps.log中获取已经运行的周期数; (4)、若已经运行的周期数没有执行完指定循环数,从日志runapps.log中获取当前未结束的批次batchid,从日志runapps.log中获取上一步任务名称; (5)、若上一步任务名称为generate,则nutch获取,并将任务内容和结束时间写入日志runapps.log ;若上一步任务名称为fetch,则nutch解析,并将任务内容和结束时间写入日志runapps.log ;若上一步任务名称为parse,贝Unutch更新,并将任务内容和结束时间写入日志runapps.log ;若上一步任务名称为updatedb,则nutch启动下一步任务继续执行。脚本I的伪代码如下,crawl, sh:本文档来自技高网
...

【技术保护点】
一种云计算中自动监控分布式网络爬虫的方法,其特征在于通过脚本和轮询实现实时监控nutch任务,执行并自动启动下一步操作;由两个脚本实现,脚本Ⅰ是循环执行多个抓取周期,每个周期中顺序执行每一步任务,并将执行情况写入日志;脚本Ⅱ是使用crond实时监控任务是否在执行,如果终止,检查上一步执行情况,将中断信息发送邮件给运维人员,并自动启动下一步任务继续执行,具体流程为:(1)、开始,每分钟执行一次获取是否有正在执行的nutch任务;(2)、如果没有执行nutch任务,将相关信息发送邮件给运维人员;(3)、从日志runapps.log中获取已经运行的周期数;(4)、若已经运行的周期数没有执行完指定循环数,从日志runapps.log中获取当前未结束的批次batchid,从日志runapps.log中获取上一步任务名称;(5)、若上一步任务名称为generate,则nutch获取,并将任务内容和结束时间写入日志runapps.log;若上一步任务名称为fetch,则nutch解析,并将任务内容和结束时间写入日志runapps.log;若上一步任务名称为parse,则nutch更新,并将任务内容和结束时间写入日志runapps.log;若上一步任务名称为updatedb,则nutch启动下一步任务继续执行。...

【技术特征摘要】
1.一种云计算中自动监控分布式网络爬虫的方法,其特征在于通过脚本和轮询实现实时监控nutch任务,执行并自动启动下一步操作;由两个脚本实现,脚本I是循环执行多个抓取周期,每个周期中顺序执行每一步任务,并将执行情况写入日志;脚本II是使用crond实时监控任务是否在执行,如果终止,检查上一步执行情况,将中断信息发送邮件给运维人员,并自动启动下一步任务继续执行,具体流程为: (1)、开始,每分钟执行一次获取是否有正在执行的nutch任务; (2)、如果没有执行nutch任务,将相关信息发送邮件给运维人员; (3)、从日志runapps.log中获取已经运行的周期数; (4)、若已经运行的周期数没有执行完指定循环数,从日志runapps.log中获取当前未结束的批次batchid,从日志runapps.log中获取上一步任务名称; (5)、若上一步任务名称为generate,则nutch获取,并将任务内容和结束时间写入日志runapps.log ;若上一步任务名称为fetch,则nutch解析,并将任务内容和结束时间写入日志runapps.log ;若上一步任务名称为parse,则nutch更新,并将任务内容和结束时间写入日志runapps.log ;若上一步任务名称为updatedb,则nutch启动下一步任务继续执行。2.根据权利要求...

【专利技术属性】
技术研发人员:范莹于治楼梁华勇
申请(专利权)人:浪潮集团有限公司
类型:发明
国别省市:山东;37

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

1