您的位置:首页 > 运维架构

spark监控调优

2016-09-14 19:05 288 查看
一、Spark运行时架构:
Spark分布式结构采取 主/从 结构模式。主是驱动器(Driver)节点,这个节点负责中央协调,调度各个工作(执行器executor)节点。
从是执行器(executor)节点。
Spark驱动器节点和执行器节点统称为Spark应用。Spark应用通过集群管理器在集群的机器上启动。

二、驱动器和执行器的任务:
驱动器任务:负责运行组成Spark作业的任务;
执行器任务:为要求缓存的RDD提供内存式存储。

三、集群管理器
Cluster Manager可以用来启动驱动器节点、执行器节点。一般来说,包含以下的集群管理器:Hadoop Yarn,Apache Mesos,Spark自带的集群管理器。

四、spark-submit的格式:
/bin/spark-submit [options] <app jar | python file> [app options]

五、Spark性能调优:
如何调优和调试生产环境中的Spark工作负载。
1.调整Spark应用的运行时配置选项。通过SparkConf类对Spark进行配置。
val conf = new SparkConf()
conf.set("spark.app.name","My Spark App")
conf.set("spark.master","local[4]")
conf.set("spark.ui.port","36000")

val sc = new SparkContext(conf)

2.在提交任务给spark-submit时,可以通过--conf 选项来。
例如bin/spark-submit --class com.vip.SimpleClass --master local[4] --name "My Spark App" --conf spark.ui.port=36000 myapp.jar

3.通过spark-submit的--properties-file标记来指定配置文件的路径:
spark-submit --class com.vip.SimpleClass --properties-file my-config.conf

既然上边介绍了3种不同的方法来设置参数,所以如果在3个情况都配置之后,会发生冲突,那么这3种方式有一个优先级区别。优先级从高到低分别是1,2,3。如果冲突时,以第1种为准。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  监控 调优 spark