一种大数据任务调度装置制造方法及图纸

技术编号:14399597 阅读:62 留言:0更新日期:2017-01-11 12:48
本发明专利技术公开了一种大数据任务调度装置,是一种通用的大数据任务调度方案,可以在不同平台上运行,提高大数据的处理性能。其技术方案为:大数据任务调度装置包括执行器、时间存储接口、数据接口以及调度器,其中:执行器,封装具体任务的执行,提供统一的调用接口供调度器调用;时间存储接口,记录数据接口的时间,并提供查询服务;数据接口,存储数据;调度器,实现大数据各个任务之间的调度。

【技术实现步骤摘要】

本专利技术涉及一种任务调度装置,尤其涉及针对大数据任务的调度装置。
技术介绍
随着大数据时代的来临,如何实现高效的存储和计算,通常采用的提高CPU性能和改用更大容量磁盘的做法,已经变得越来越困难。在这种背景下,以网络和网络通信技术为依托,将分散在不同地理位置的计算机连接起来,组成空间上分散、逻辑上统一的数据存储和计算集群,成为当前实现大规模数据处理的主要选择,以及不同大数据计算框架层出不穷,如面向大数据存储计算的hadoop,面向内存迭代运算的spark,专门针对流式计算的storm等,这些计算框架在处理各自领域业务时都有特定的优化性能十分高效,但是这些计算框架都存在一个问题,那就是任务间的协作依赖处理问题,当业务计算任务之间存在先后执行依赖的时候,计算框架就往往受到严重制约,甚至引起效率在数量级程度的下降。
技术实现思路
以下给出一个或多个方面的简要概述以提供对这些方面的基本理解。此概述不是所有构想到的方面的详尽综览,并且既非旨在指认出所有方面的关键性或决定性要素亦非试图界定任何或所有方面的范围。其唯一的目的是要以简化形式给出一个或多个方面的一些概念以为稍后给出的更加详细的描述之序。本专利技术的目的在于解决上述问题,提供了一种大数据任务调度装置,是一种通用的大数据任务调度方案,可以在不同平台上运行,提高大数据的处理性能。本专利技术的技术方案为:本专利技术揭示了一种大数据任务调度装置,包括执行器、时间存储接口、数据接口以及调度器,其中:执行器,封装具体任务的执行,提供统一的调用接口供调度器调用;时间存储接口,记录数据接口的时间,并提供查询服务;数据接口,存储数据;调度器,实现大数据各个任务之间的调度。根据本专利技术的大数据任务调度装置的一实施例,执行器实现的操作包括数据清洗、数据结构的改变、数据计算。根据本专利技术的大数据任务调度装置的一实施例,执行器执行执行机制是同步和异步同时存在,多个任务依赖链之间是异步的,在一个任务依赖链中任务和任务之间是同步的。根据本专利技术的大数据任务调度装置的一实施例,时间存储接口进一步包括:时间更新单元,当任务成功执行时,更新数据的截止时间;时间查询单元,查询数据的截止时间;时间修改单元,更改数据的截止时间。根据本专利技术的大数据任务调度装置的一实施例,数据接口进一步包括:按时间存储单元,基于时间标识存储数据;非时间存储单元,不按时间标识存储数据;数据获取单元,提供数据分片计算的信息,对异构的底层数据提供读取的封装。根据本专利技术的大数据任务调度装置的一实施例,调度器进一步包括:数据管理模块,计算全量数据的运算,计算相对时间内的数据,对单位时间数据进行增量计算;任务依赖模块,处理任务依赖队列中各个任务执行的先后顺序;容错机制模块,根据不同集群本身的容错机制做定制化对接;补跑策略模块,让数据接口从其上游的数据接口重新获取数据并进行计算,若数据接口是时间相关的,则通过时间存储接口将下游所有数据时间设为故障或延迟发生前,再重启相关任务链,以使数据计算正确,若数据接口是时间无关的,则直接重启相关任务链。本专利技术对比现有技术有如下的有益效果:本专利技术的大数据任务调度装置中设有执行器、时间存储接口、数据接口以及调度器。本专利技术的大数据任务调度装置在不同的平台上实现运行,可以用任意现代编程语言来实现,包括但不限于java、scala、ruby、python、C#、C++等。数据调度在执行层面会被拆解为若干小而具体的任务进行,例如mapreduce、hivesql等,优化的异构的调度不同计算框架的任务。附图说明图1示出了本专利技术的大数据任务调度装置的实施例的原理图。具体实施方式在结合以下附图阅读本公开的实施例的详细描述之后,能够更好地理解本专利技术的上述特征和优点。在附图中,各组件不一定是按比例绘制,并且具有类似的相关特性或特征的组件可能具有相同或相近的附图标记。图1示出了本专利技术的大数据任务调度装置的实施例的原理。请参见图1,本实施例的大数据任务调度装置包括:执行器1、时间存储接口2、数据接口3以及调度器4。其中执行器1用于封装具体任务的执行,提供统一的调用接口供调度器4调用。执行器1实现的操作可能是hadoop、hbase、hive、spark等,它们主要是完成业务的一些计算,如数据的清洗、数据结构的改变、数据的计算等操作。执行器1执行机制上可以是异步的也可以是同步的,以适应不同场景调度并发性能的需求。执行器1执行机制大量使用同步和异步策略。当有大量的且不存在依赖的任务先后提交到集群时,集群不可能等一个任务完成了再执行另外一个任务,这样会导致效率低下,所以并行且异步执行多任务是非常有必要且高效的。任务与任务之间没有任何影响,一个任务的失败不会影响到另外一个任务的执行,以及任务执行的结果;当业务处理任务之间存在依赖关系的时候,只有等被依赖的任务执行完毕,依赖的数据准备好了,下一个依赖的任务才能开始执行,当被依赖的任务执行失败,那么接下来依赖的任务就不再执行了,以此类推。这种同步机制虽然降低了效率,但是再保证数据的准确性上还是有必要这样做的。所以执行器1执行执行机制是同步和异步同时存在的,多个任务依赖链之间是异步的,而在一个任务依赖链中任务与任务之间是同步的。时间存储接口2主要负责记录数据接口的时间,并提供查询服务。时间存储接口2进一步包括时间更新单元21、时间查询单元22以及时间修改单元23。其中时间更新单元21用于实现当任务成功执行时,更新数据的截止时间。当任务成功执行,系统会调用时间存储接口更新数据的截止时间,也就是该数据任务下次要执行的开始的时间,但是当该任务在本次执行失败,那么在记录的时间不做变动仍然是上次该数据上次成功执行的时间。时间查询单元22用于查询数据的截止时间。时间修改单元23用于更改数据的截止时间。时间修改单元23提供时间修改服务,由于大数据计算的特殊性,有时候任务计算的数据会出现不准确,比如可能是数据生成与消费异步,延迟等情况导致的,可以通过该接口把数据的截止时间即下次执行的时间向前调整,这样就可以让这部分数据重新进行计算。每当新的任务要上线的时候,也可以通过该接口事先设置好对应数据接口的第一次运行的起始时间。数据接口3负责存储数据,对不同系统上的数据存取提供统一的抽象,如hbase、hive、hdfs、redis、以及mysql等关系型数据库。数据存储上大体分为按时间存储,以及不按时间存储。相应的,数据接口3包括按时间存储单元31、非时间存储单元32以及数据获取单元33。其中按时间存储单元31是基于时间标识存储数据。按时间存储的数据,具体的粒度可以从年细分到秒甚至毫秒,并提供按相应单位量获取的接口,以及数据时间的起始范围接口。数据按时间存储一方面是考虑到是随着时间线型增长的,通过按时间存取可以很自然的设计数据的分片获取方式,另外一方面很多业务并不要求使用全量数据,例如推荐系统一般只考虑用户最近一段时间的行为做推荐,用户行为会随着年龄和使用时间发生变化,取全量数据做分析是不合适的,在这个例子下,我们会安装天汇总用户行为,数据的粒度设为天,然后推荐的离线分析接口再按照一定时间范围从用户行为的数据接口获取数据。非时间存储单元32是不按时间标识存储数据。非按时间存储的数据,只提供全量获取的本文档来自技高网...
一种大数据任务调度装置

【技术保护点】
一种大数据任务调度装置,包括执行器、时间存储接口、数据接口以及调度器,其中:执行器,封装具体任务的执行,提供统一的调用接口供调度器调用;时间存储接口,记录数据接口的时间,并提供查询服务;数据接口,存储数据;调度器,实现大数据各个任务之间的调度。

【技术特征摘要】
1.一种大数据任务调度装置,包括执行器、时间存储接口、数据接口以及调度器,其中:执行器,封装具体任务的执行,提供统一的调用接口供调度器调用;时间存储接口,记录数据接口的时间,并提供查询服务;数据接口,存储数据;调度器,实现大数据各个任务之间的调度。2.根据权利要求1所述的大数据任务调度装置,其特征在于,执行器实现的操作包括数据清洗、数据结构的改变、数据计算。3.根据权利要求1所述的大数据任务调度装置,其特征在于,执行器执行执行机制是同步和异步同时存在,多个任务依赖链之间是异步的,在一个任务依赖链中任务和任务之间是同步的。4.根据权利要求1所述的大数据任务调度装置,其特征在于,时间存储接口进一步包括:时间更新单元,当任务成功执行时,更新数据的截止时间;时间查询单元,查询数据的截止时间;时间修改单元,更改数据的截止时...

【专利技术属性】
技术研发人员:陈最元
申请(专利权)人:上海证大喜马拉雅网络科技有限公司
类型:发明
国别省市:上海;31

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

1