【技术实现步骤摘要】
一种数据处理方法及装置
本专利技术涉及大数据
,尤其涉及一种数据处理方法及装置。
技术介绍
Spark是一种基于内存并行计算框架的分布式批处理系统和分析挖掘引擎,通过将大量数据集计算任务分配到多台计算机上,提供高效内存计算。Spark应用程序(Application)运行在SparkDriver(驱动)上。SparkDrive启动时,会创建SparkContext(上下文),并配置SparkContext,进而初始化SparkContext。完成SparkContext初始化后,SparkDrive会将应用程序转化为task,并向clustermanager(集群管理者)(如YARN(YetAnotherResourceNegotiator,另一种资源协调者))申请资源运行Executor(执行者),按照预设策略将task分配给各Executor执行。其中,各Executor均会向SparkDrive注册,进而SparkDrive可以监控Executor中task的执行情况。目前,以YRAN作为clustermanager运行的Spark(可以称为SparkOnYarn)主要包括YARN-Client(客户端)和YARN-Cluster两种模式。YARN-cluster模式下作业执行流程:1、Sparkclient(或称为SparkYARNclient)向ResourceManager(资源管理者,简称RM)提交应用程序;2、RM收到应用程序后,在集群中选择一个NodeManager(节点管理者,简称NM),为该应用程序分配一个Container(容 ...
【技术保护点】
1.一种数据处理方法,其特征在于,应用于包括多于一个Spark驱动Driver的另一种资源协调者YARN‑集群Cluster模式的Spark on YARN集群中的任一Spark Driver,所述方法包括:启动完成后,根据共享内存层中保存的Spark Context初始化数据向资源管理者RM发送资源分配请求;接收所述RM响应所述资源分配请求分配的容器,并分别指示各容器所属节点的节点管理者NM在所分配的容器中启动执行器;为各执行器分配任务,并对所述执行器中执行的任务进行监控,将任务执行得到的数据保存至所述共享内存层。
【技术特征摘要】
1.一种数据处理方法,其特征在于,应用于包括多于一个Spark驱动Driver的另一种资源协调者YARN-集群Cluster模式的SparkonYARN集群中的任一SparkDriver,所述方法包括:启动完成后,根据共享内存层中保存的SparkContext初始化数据向资源管理者RM发送资源分配请求;接收所述RM响应所述资源分配请求分配的容器,并分别指示各容器所属节点的节点管理者NM在所分配的容器中启动执行器;为各执行器分配任务,并对所述执行器中执行的任务进行监控,将任务执行得到的数据保存至所述共享内存层。2.根据权利要求1所述的方法,其特征在于,所述方法还包括:当所述SparkDriver为首个启动的SparkDriver时,进行Spark上下文Context初始化,将SparkContext初始化数据保存至共享内存层。3.根据权利要求2所述的方法,其特征在于,确定是否为首个启动的SparkDriver,包括:启动后,且确定共享内存层中不存在SparkContext初始化数据时,确定自身为首个启动的SparkDriver;启动后,且确定共享内存层中存在SparkContext初始化数据时,确定自身为非首个启动的SparkDriver。4.根据权利要求1所述的方法,其特征在于,所述方法还包括:启动时,向Zookeeper注册,以使所述Zookeeper在确定存在SparkDriver异常时,向AM发送通知报文,由AM按照预设策略通知其它已启动的SparkDriver或启动新的SparkDriver替代该异常SparkDriver进行任务分配和监控。5.一种数据处理方法,其特征在于,应用于包括多于一个Spark驱动Driver的另一种资源协调者YARN-集群Cluster模式的SparkonYARN集群中的资源管理者RM,所述方法包括:接收Spark客户端提交的应用程序;为所述应用程序分配用于启动AM的容器,并指示该容器所属节点的节点管理者NM在该容器中启动AM;接收所述AM发送的资源分配请求,并响应该资源分配请求为所述AM分配多于一个的容器,以使所述AM分别指示各容器所属节点的NM在各容器中启动Spark驱动Driver;接收每个SparkDriver发送的资源分配请求,并响应该资源分配请求为每个所述SparkDriver分配容器;其中,所述资源分配请求由所述每个SparkDriver在启动后根据共享内存层中的SparkContext初始化数据向所述RM发起。6.根据权利要求5所述的方法,其特征在于,所述应用程序包括AM以及启动AM的命令;所述为所述应用程序分配用于启动AM的容器,并指示该容器所属节点的节点管理者NM在该容器中启动AM,包括:为所述应用程序分配一个用于启动AM的容器,并向容器所属节点的NM发送容器启动命令,以使该NM根据该容器启动命令中携带的容器的令牌对容器进行合法性校验,并当校验通过后,启动容器;将所述AM和启动AM的命令发送给该NM,以使该NM该AM和启动AM的命令在所启动的容器中启动AM。7.根据权利要求5所述的方法,其特征在于,所述响应该资源分配请求为所述SparkDriver分配容器,包括:根据该资源分配请求中携带的执行器的数量,为所述SparkDriver分配等量的容器。8.一种数据处理装置,其特征在于,应用于包括多于一个Spark驱动Driver的另一种资源协调者YARN-集群Cluster模...
【专利技术属性】
技术研发人员:赵英超,
申请(专利权)人:新华三大数据技术有限公司,
类型:发明
国别省市:河南,41
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。