一种应用于分布式采集系统的任务调度方法

文档序号:9200277阅读:945来源:国知局
一种应用于分布式采集系统的任务调度方法
【技术领域】
[0001] 本发明涉及大数据技术领域,具体地说是一种实用性强、应用于分布式采集系统 的任务调度方法。
【背景技术】
[0002] 随者互联网的飞速发展,大数据这个概念越来越受到人们的关注。企业通过采集 互联网中的数据,可以从大量数据中找出有价值数据进行分析,并通过分析结果提供决策 支持,驱动企业的加速发展。数据的价值越来越受到人们的关注。
[0003] 但互联网中的信息各种各样,互联网的规模也越来越庞大,传统的采集方式需要 在大量服务器中部署采集系统,采集时需要逐个服务器进行管理和配置。各采集系统之间 没有关联,也非常容易出现重复采集或者少采集的情况,导致采集的效率不高,维护起来也 十分不便。
[0004] 任务调度管理作为基础架构通常会出现于我们的业务系统中,目的是让各种任务 能够按计划有序执行。在数据采集系统中,我们需要对不同网站的多个种类进行采集,采集 时需要针对网站地址、采集分类进行大量配置,然后在多个服务器上分别进行采集,这些相 对耗时的操作通过任务调度系统来异步并行执行,既能提高任务的执行效率又能保障任务 执行的可靠性。基于此,现提供一种可解决上述问题、应用于分布式采集系统的任务调度方 法。

【发明内容】

[0005] 本发明的技术任务是针对以上不足之处,提供一种实用性强、应用于分布式采集 系统的任务调度方法。
[0006] -种应用于分布式采集系统的任务调度方法,其具体实现过程为:将采集任务动 态分配到集群的若干服务器中,每台服务器都配备采集程序且执行不同的采集任务,从而 完成动态采集监控。
[0007] 所述任务调度过程的详细步骤为: 部署服务器集群和控制该集群的控制台,在集群内的每台服务器上均配置采集程序; 在控制台上设置任务调度策略,即确定任务名称、最大线程数、执行任务的所有采集程 序服务器地址信息; 通过控制台配置采集任务信息,该信息包括任务名称、任务执行类、任务执行的开始时 间和结束时间、数据任务项; 将上述信息配置完成后保存,由控制台系统自动分发任务给集群并执行采集任务,完 成米集过程。
[0008] 所述采集用的集群为ZooKe印er服务器集群,该集群内的服务器实现对各个采集 节点的监控,在采集程序中集成ZooKeeper,配置ZooKeeper集群相关信息;采集程序中集 成分布试调试管理框架,以实现任务的动态分发调度。
[0009] 所述分布试调试管理框架是指TbSchedule开源框架,并实现IScheduleTaskDealMulti 批量任务接口。
[0010] 所述IScheduleTaskDealMulti接口实现类的selectTasks,获取要采集的网站及 采集类型信息,获取参数由调度器自行分配,该selectTasks参数为采集网站、网站类别的 数据集合,集合信息存储在数据库中。
[0011] 所述采集任务的分配通过调度程序完成,该调度程序自动查询出selectTasks参 数,并根据配置信息,对数据ID的哈希值取模,将任务均分,使得系统按任务项将任务均分 给采集服务器。
[0012] 本发明的一种应用于分布式采集系统的任务调度方法,具有以下优点: 该发明的一种应用于分布式采集系统的任务调度方法可以让让一种批量采集任务或 者不断变化的采集任务,能够被动态的分配到多个服务区的应用中并行执行。所有的任务 能够被不重复,不遗漏的快速处理;可以指定调度的时间区间,灵活性强,实用性强,适用范 围广泛,易于推广。
【附图说明】
[0013] 附图1为本发明的系统架构示意图。
【具体实施方式】
[0014] 下面结合附图和具体实施例对本发明作进一步说明。
[0015] 本发明的提供一种应用于分布式采集系统的任务调度方法,让多个采集任务动态 的分配到多台服务器的采集程序中并行执行,所有的任务能够被不重复,不遗漏的快速处 理,并且能动态的监控、管理采集任务的执行。
[0016] 如附图1所示,其具体实现过程为:将采集任务动态分配到集群的若干服务器中, 每台服务器都配备采集程序且执行不同的采集任务,从而完成动态采集监控。
[0017] 所述任务调度过程的详细步骤为: 部署服务器集群和控制该集群的控制台,在集群内的每台服务器上均配置采集程序; 在控制台上设置任务调度策略,即确定任务名称、最大线程数、执行任务的所有采集程 序服务器地址信息; 通过控制台配置采集任务信息,该信息包括任务名称、任务执行类、任务执行的开始时 间和结束时间、数据任务项; 将上述信息配置完成后保存,由控制台系统自动分发任务给集群并执行采集任务,完 成米集过程。
[0018] 所述采集用的集群为ZooKe印er服务器集群,该集群内的服务器实现对各个采集 节点的监控,在采集程序中集成ZooKeeper,配置ZooKeeper集群相关信息;采集程序中集 成分布试调试管理框架,以实现任务的动态分发调度。
[0019] 所述分布试调试管理框架是指TbSchedule开源框架,并实现IScheduleTaskDealMulti 批量任务接口。
[0020] 所述IScheduleTaskDealMulti接口实现类的selectTasks,获取要采集的网站及 采集类型信息,获取参数由调度器自行分配,该selectTasks参数为采集网站、网站类别的 数据集合,集合信息存储在数据库中。
[0021] 所述采集任务的分配通过调度程序完成,该调度程序会自动查询出集合,并根据 配置信息,对数据ID的哈希值取模,将任务均分,比如将一个网站类别数据表的数据ID哈 希后按1000取模,即可得到最多1000个任务项,系统可以按任务项将任务均分给指定的采 集服务器。
[0022] 具体实施例:在实际操作中,通过以下步骤实现任务调度过程。
[0023] 步骤一,本方法依赖于Hadoop ZooKeeper组件,首先要配好ZooKeeper集群,以便 实现任务的分布式配置及各服务间的交互通信。
[0024] 步骤二,在各ZooKe印er服务器上部署采集程序。
[0025] 步骤三,部署TbSchedule的TbScheduleConsole程序,这个是对调度任务配置、部 署、监控的终端。
[0026] 步骤四,在TbScheduleConsole控制台中配置ZooKeeper服务器的连接。
[0027] 步骤四,在任务管理页面配置调度策略,填写任务名称、最大线程数、执行任务的 所有采集程序服务器地址等信息(多个服务器以逗号分隔)。
[0028] 步骤五,配置任务,配置信息包含任务名称、任务执行类、任务执行的开始结束时 间、数据任务项等信息,其中任务名称要和策略中的任务名称对应;任务执行类和采集程序 中配置的执行类对应;开始结束时间为Crontab格式,见下表:
数据任务项对应采集资源的分组信息,控制台调度器将数据任务项均分给各采集服务 器。
[0029] 步骤六,将以上设置配置完并保存后,系统自动分发执行采集任务,可以在管理页 面看到各服务器节点的任务执行情况。
[0030] 在上述技术方案中,相类似的采集任务可以统一维护,根据网站、资源类型等参数 信息通过调度程序自动分类,并分发给各个采集服务器进行自动采集;少数特殊任务也可 以进行单个维护配置,从而对所有任务进行统一管理。避免了在多个采集服务器中进行大 量而重复的配置维护工作。
[0031] 上述【具体实施方式】仅是本发明的具体个案,本发明的专利保护范围包括但不限于 上述【具体实施方式】,任何符合本发明的一种应用于分布式采集系统的任务调度方法的权利 要求书的且任何所属技术领域的普通技术人员对其所做的适当变化或替换,皆应落入本发 明的专利保护范围。
【主权项】
1. 一种应用于分布式采集系统的任务调度方法,其特征在于,其具体实现过程为:将 采集任务动态分配到集群的若干服务器中,每台服务器都配备采集程序且执行不同的采集 任务,从而完成动态采集监控。2. 根据权利要求1所述的一种应用于分布式采集系统的任务调度方法,其特征在于, 所述任务调度过程的详细步骤为: 部署服务器集群和控制该集群的控制台,在集群内的每台服务器上均配置采集程序; 在控制台上设置任务调度策略,即确定任务名称、最大线程数、执行任务的所有采集程 序服务器地址信息; 通过控制台配置采集任务信息,该信息包括任务名称、任务执行类、任务执行的开始时 间和结束时间、数据任务项; 将上述信息配置完成后保存,由控制台系统自动分发任务给集群并执行采集任务,完 成米集过程。3. 根据权利要求2所述的一种应用于分布式采集系统的任务调度方法,其特征在于, 所述采集用的集群为ZooKeeper服务器集群,该集群内的服务器实现对各个采集节点的监 控,在采集程序中集成ZooKeeper,配置ZooKeeper集群相关信息;采集程序中集成分布试 调试管理框架,以实现任务的动态分发调度。4. 根据权利要求3所述的一种应用于分布式采集系统的任务调度方法,其特征在于, 所述分布试调试管理框架是指TbSchedule开源框架,并实现IScheduleTaskDealMulti批 量任务接口。5. 根据权利要求4所述的一种应用于分布式采集系统的任务调度方法,其特征在于, 所述IScheduleTaskDealMulti接口实现类的selectTasks,获取要采集的网站及采集类 型信息,获取参数由调度器自行分配,该selectTasks参数为采集网站、网站类别的数据集 合,集合信息存储在数据库中。6. 根据权利要求5所述的一种应用于分布式采集系统的任务调度方法,其特征在于, 所述采集任务的分配通过调度程序完成,该调度程序自动查询出selectTasks参数,并根 据配置信息,对数据ID的哈希值取模,将任务均分,使得系统按任务项将任务均分给采集 服务器。
【专利摘要】本发明公开了一种应用于分布式采集系统的任务调度方法,其具体实现过程为:将采集任务动态分配到集群的若干服务器中,每台服务器都配备采集程序且执行不同的采集任务,从而完成动态采集监控。该一种应用于分布式采集系统的任务调度方法与现有技术相比,让批量采集任务或者不断变化的采集任务,能够被动态的分配到多个服务区的应用中并行执行。所有的任务能够被不重复,不遗漏的快速处理。
【IPC分类】G06F9/48
【公开号】CN104915259
【申请号】CN201510327473
【发明人】张裕超, 孙海峰, 王传超
【申请人】浪潮软件集团有限公司
【公开日】2015年9月16日
【申请日】2015年6月15日
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1