简述spark的基本流程

简述spark的基本流程,第1张

有以下四个步骤。

1构建SparkApplication的运行环境(启动SparkContext),SparkContext向资源管理器(可以是Standalone、Mesos或YARN)注册并申请运行Executor资源。

2资源管理器分配Executor资源并启动StandaloneExecutorBackend,Executor运行情况将随着心跳发送到资源管理器上。

3SparkContext构建成DAG图,将DAG图分解成Stage,并把Taskset发送给TaskScheduler。Executor向SparkContext申请Task,TaskScheduler将Task发放给Executor运行同时SparkContext将应用程序代码发放给Executor。

4Task在Executor上运行,运行完毕释放所有资源。

ApacheSpark是专为大规模数据处理而设计的快速通用的计算引擎。Spark是UCBerkeleyAMPlab(加州大学伯克利分校的AMP实验室)所开源的类HadoopMapReduce的通用并行框架,Spark,拥有HadoopMapReduce所具有的优点;但不同于MapReduce的是——Job中间输出结果可以保存在内存中,从而不再需要读写HDFS,因此Spark能更好地适用于数据挖掘与机器学习等需要迭代的MapReduce的算法。

本文前提是已经正确安装好scala,sbt以及spark了 简述将程序挂载到集群上运行的步骤:

1、构建sbt标准的项目工程结构:SBT项目工程结构图其中:~/buildsbt文件用来配置项目的基本信息(项目名、组织名、项目版本、使用的scala版本或者再次配置些项目所需的依赖包);project/buildproperties文件配置你要使用什么版本的sbt对项目 *** 作;project/pluginssbt文件是给项目添加所需的插件;project/Buildscala文件是对项目进行些复杂的高级配置;详细的sbt安装配置实用参见博文:

2、到相应目录下编写程序,spark程序必须要创建一个SparkContext实例。SparkContext("master", "projectName", "SPARK_HOME", "yourProjectjar path")

3、sbt compile命令编译程序无错后,sbt package命令将程序打包。默认打包的jar文件存放路径为:项目根目录/target/scala-xxxxxx/your-project-name_xxxxxx-xxjar

4、将打包好的jar问价添加到SPAK_CLASSPATH中(在linux中根据作用范围的不同有多种更改环境变量的方式,这里只说我的配置方式:spark根目录下的conf/spark-envsh文件添加SPARK_CLASSPATH:xxxxxxxx)

5、配置好环境变量后就可以在spark的根目录下使用/run脚本运行你的程序了例如:/run sparkexamplesSparkPi spark://masterIP:port注意,如果程序涉及IO *** 作起默认路径为SPARK_HOME;至于如何修改这个路径,有待研究

转载,仅供参考。

以上就是关于简述spark的基本流程全部的内容,包括:简述spark的基本流程、怎么让程序运行在spark集群上、等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zz/10636262.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-10
下一篇 2023-05-10

发表评论

登录后才能评论

评论列表(0条)

保存