[发明专利]一种数据处理方法及装置有效
申请号: | 201711455415.8 | 申请日: | 2017-12-28 |
公开(公告)号: | CN108255619B | 公开(公告)日: | 2019-09-17 |
发明(设计)人: | 赵英超 | 申请(专利权)人: | 新华三大数据技术有限公司 |
主分类号: | G06F9/54 | 分类号: | G06F9/54;G06F9/50 |
代理公司: | 北京博思佳知识产权代理有限公司 11415 | 代理人: | 林祥 |
地址: | 450000 河南省郑州市高新技*** | 国省代码: | 河南;41 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 共享内存 数据处理 分配 发送资源分配 资源分配请求 初始化数据 处理性能 任务执行 数据保存 性能瓶颈 硬件配置 集群 服务器 保存 监控 响应 应用 | ||
1.一种数据处理方法,其特征在于,应用于包括多于一个Spark Driver的YARN-Cluster模式的Spark on YARN集群中的任一Spark Driver,所述方法包括:
启动完成后,根据共享内存层中保存的Spark Context初始化数据向资源管理者RM发送资源分配请求;
接收所述RM响应所述资源分配请求分配的容器,并分别指示各容器所属节点的节点管理者NM在所分配的容器中启动执行器;
为各执行器分配任务,并对所述执行器中执行的任务进行监控,将任务执行得到的数据保存至所述共享内存层。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
当所述Spark Driver为首个启动的Spark Driver时,进行Spark上下文Context初始化,将Spark Context初始化数据保存至共享内存层。
3.根据权利要求2所述的方法,其特征在于,确定是否为首个启动的Spark Driver,包括:
启动后,且确定共享内存层中不存在Spark Context初始化数据时,确定自身为首个启动的Spark Driver;
启动后,且确定共享内存层中存在Spark Context初始化数据时,确定自身为非首个启动的Spark Driver。
4.根据权利要求1所述的方法,其特征在于,所述方法还包括:
启动时,向Zookeeper注册,以使所述Zookeeper在确定存在Spark Driver异常时,向AM发送通知报文,由AM按照预设策略通知其它已启动的Spark Driver或启动新的SparkDriver替代该异常Spark Driver进行任务分配和监控。
5.一种数据处理方法,其特征在于,应用于包括多于一个Spark Driver的YARN-Cluster模式的Spark on YARN集群中的资源管理者RM,所述方法包括:
接收Spark客户端提交的应用程序;
为所述应用程序分配用于启动AM的容器,并指示该容器所属节点的节点管理者NM在该容器中启动AM;
接收所述AM发送的资源分配请求,并响应该资源分配请求为所述AM分配多于一个的容器,以使所述AM分别指示各容器所属节点的NM在各容器中启动Spark驱动Driver;
接收每个Spark Driver发送的资源分配请求,并响应该资源分配请求为每个所述Spark Driver分配容器;其中,所述资源分配请求由所述每个Spark Driver在启动后根据共享内存层中的Spark Context初始化数据向所述RM发起。
6.根据权利要求5所述的方法,其特征在于,所述应用程序包括AM以及启动AM的命令;
所述为所述应用程序分配用于启动AM的容器,并指示该容器所属节点的节点管理者NM在该容器中启动AM,包括:
为所述应用程序分配一个用于启动AM的容器,并向容器所属节点的NM发送容器启动命令,以使该NM根据该容器启动命令中携带的容器的令牌对容器进行合法性校验,并当校验通过后,启动容器;
将所述AM和启动AM的命令发送给该NM,以使该NM根据该AM和启动AM的命令在所启动的容器中启动AM。
7.根据权利要求5所述的方法,其特征在于,所述响应该资源分配请求为所述SparkDriver分配容器,包括:
根据该资源分配请求中携带的执行器的数量,为所述Spark Driver分配等量的容器。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于新华三大数据技术有限公司,未经新华三大数据技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201711455415.8/1.html,转载请声明来源钻瓜专利网。