Spark 参数配置的几种方法

本文详细介绍了Spark参数配置的三种方式:1) SparkConf中设置,2) 动态加载属性,3) conf/spark-defaults.conf 文件定义。讨论了属性加载优先级和如何查看应用程序属性。重点讲解了Spark应用程序的属性参数,如`spark.executor.memory`,`spark.driver.cores`等,以及调度、日志、动态分配等相关配置。文章强调正确设置参数对性能的影响,并提供了Spark UI查看属性参数的方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.Spark 属性
Spark应用程序的运行是通过外部参数来控制的,参数的设置正确与否,好与坏会直接影响应用程序的性能,也就影响我们整个集群的性能。参数控制有以下方式:
(1)直接设置在SparkConf,通过参数的形式传递给SparkContext,达到控制目的。(通过set()方法传入key-value对)比如:

val conf = new SparkConf()
    .setMaster(”local[2]“) #注意1
    .setAppName(”test“)
    .set(“spark.cores.max”, “10”) ######set()方法传入属性参数
val sc = new SparkContext(conf)
#注意1 本地开启2个线程来工作,注意了,本地工作方式除了集合生成RDD、读取本地文件和hdfs文件能开启一个线程就可以工作外,其他情况都开启至少两条线程才能正常工作。这是由于除以上情况,Spark会开启一个reciver来接受数据,若只有一条线程,reciver就占用唯一线程的资源,而数据处理等操作将没有资源可执行。

(2)动态加载Spark属性。为了应用程序名字和集群方式等属性不硬编码,灵活应用。可以这样处理:val sc = new SparkContext(new Spar

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值