The invention provides a method and system for asynchronous submission of hybrid large data tasks, which includes: at least one working node sends heartbeat information data to Zookeeper at preset time intervals, obtains load information of the working node and sends it to Zookeeper; at least one main control node in the control node obtains heartbeat information data of each working node from Zookeeper; Determine the available working nodes; at least one of the control nodes receives the tasks submitted from outside, gets the load information of all available working nodes from Zookeeper, gets the address of the selected working nodes from all available working nodes according to the load information according to the preset scheduling algorithm, and sends the tasks to the selected working nodes; The nodes read tasks in task priority queue, generate different cluster clients according to task attributes, and submit tasks using different cluster clients.
【技术实现步骤摘要】
一种混合式大数据任务异步提交的方法和系统
本专利技术涉及大数据技术数据处理领域,尤其涉及一种混合式大数据任务异步提交的方法和系统。
技术介绍
目前具有多种大数据框架的任务提交方式,但是像spark,flink,hadoopMR,storm等大数据框架的任务提交都是人工通过命令行的方式提交,不同的框架提交的命令各式各样不统一这样比较麻烦,而且不支持批量提交,要提交多个任务效率较低,也不能对提交的不同类型的任务做到实时监控和统一的管理。
技术实现思路
本专利技术旨在提供一种克服上述问题之一或者至少部分地解决上述任一问题的混合式大数据任务异步提交的方法和系统。为达到上述目的,本专利技术的技术方案具体是这样实现的:本专利技术的一个方面提供了一种混合式大数据任务异步提交的方法,包括:至少一个工作节点向Zookeeper按照预设时间间隔发送心跳信息数据,获取工作节点的负载信息,并将负载信息发送至Zookeeper;至少一个管控节点中的主管控节点从Zookeeper获取各个工作节点的心跳信息数据,确定可用的工作节点;至少一个管控节点中的任一管控节点接收外部提交的任务,并将任务存储在任务队列里,从Zookeeper获取所有可用的工作节点的负载信息,根据负载信息按照预设调度算法获取从所有可用的工作节点中选择出的工作节点地址,把任务发送至选择出的工作节点上;选择出的工作节点接收管控节点发送的任务,并将任务存储在任务优先级队列中;选择出的工作节点通过任务执行线程读取任务优先级队列中的任务,根据任务属性生成不同的集群客户端,并利用不同的集群客户端提交任务。其中,方法还包括:至少一个管 ...
【技术保护点】
1.一种混合式大数据任务异步提交的方法,其特征在于,包括:至少一个工作节点向所述Zookeeper按照预设时间间隔发送心跳信息数据,获取所述工作节点的负载信息,并将所述负载信息发送至所述Zookeeper;至少一个管控节点中的主管控节点从所述Zookeeper获取各个工作节点的心跳信息数据,确定可用的工作节点;至少一个管控节点中的任一管控节点接收外部提交的任务,并将所述任务存储在任务队列里,从所述Zookeeper获取所有可用的工作节点的负载信息,根据所述负载信息按照预设调度算法获取从所有可用的工作节点中选择出的工作节点地址,把所述任务发送至所述选择出的工作节点上;所述选择出的工作节点接收所述管控节点发送的所述任务,并将所述任务存储在任务优先级队列中;所述选择出的工作节点通过任务执行线程读取任务优先级队列中的所述任务,根据所述任务属性生成不同的集群客户端,并利用所述不同的集群客户端提交所述任务。
【技术特征摘要】
1.一种混合式大数据任务异步提交的方法,其特征在于,包括:至少一个工作节点向所述Zookeeper按照预设时间间隔发送心跳信息数据,获取所述工作节点的负载信息,并将所述负载信息发送至所述Zookeeper;至少一个管控节点中的主管控节点从所述Zookeeper获取各个工作节点的心跳信息数据,确定可用的工作节点;至少一个管控节点中的任一管控节点接收外部提交的任务,并将所述任务存储在任务队列里,从所述Zookeeper获取所有可用的工作节点的负载信息,根据所述负载信息按照预设调度算法获取从所有可用的工作节点中选择出的工作节点地址,把所述任务发送至所述选择出的工作节点上;所述选择出的工作节点接收所述管控节点发送的所述任务,并将所述任务存储在任务优先级队列中;所述选择出的工作节点通过任务执行线程读取任务优先级队列中的所述任务,根据所述任务属性生成不同的集群客户端,并利用所述不同的集群客户端提交所述任务。2.根据权利要求1所述的方法,其特征在于,还包括:至少一个管控节点向Zookeeper注册分布式锁;所述至少一个管控节点中的一个节点接收所述Zookeeper发送的分布式锁,确定所述至少一个管控节点中的一个节点为主管控节点。3.根据权利要求1所述的方法,其特征在于,还包括:所述选择出的工作节点实时监控已提交的任务的状态信息,并将所述已提交的任务的状态信息发送至所述Zookeeper进行存储。4.根据权利要求3所述的方法,其特征在于,还包括:所述管控节点从所述Zookeeper获取所述已提交的任务的状态信息,确定是否有失败的任务,如果有失败的任务,则发送告警提示。5.根据权利要求1所述的方法,其特征在于,所述至少一个管控节点中的主管控节点从所述Zookeeper获取各个工作节点的心跳信息数据之后,确定可用的工作节点之前还包括:所述主管控节点超过预设时长未收到工作节点心跳信息数据,则确定未收到心跳信息数据的工作节点不可用,删除不可用的工作节点。...
【专利技术属性】
技术研发人员:杨思枢,
申请(专利权)人:杭州玳数科技有限公司,
类型:发明
国别省市:浙江,33
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。