spark参数调整

直接报错  spark Kryo serialization failed: Buffer overflow 错误

Caused by: org.apache.spark.SparkException: Kryo serialization failed: Buffer overflow. Available: 0, required: 28. To avoid this, increase spark.kryoserializer.buffer.max value

提示需要调整的参数是 spark.kryoserializer.buffer.max 最少是28  

直接在 submit时候配置算了

 --conf 'spark.kryoserializer.buffer.max=64'

有时候设置 

sparkConf.set("spark.kryoserializer.buffer","64");

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
在进行Spark参数调优时,我们可以考虑以下几个主要参数: 1. num-executors:该参数用于设置Executor的数量。在Spark 1.6之前,它还用于设置RDD持久化数据在Executor内存中所占的比例,默认为0.6。可以根据作业中需要持久化的RDD数量来调整参数值。如果作业中有较多的RDD需要进行持久化操作,可以将该参数值调高;如果作业中只有少量的RDD需要进行持久化操作,可以将该参数值调低。\[2\] 2. Spark.Shuffle.memoryFraction:该参数用于设置Driver进程的内存。通常情况下,我们不需要显式地设置该参数,因为Driver运行内存的默认值为512MB。但是,当使用collect算子时,需要确保Driver内存足够大,以避免出现内存溢出的错误。一般建议将Driver内存设置为1G~4G。\[3\] 3. Spark.default.parallelism:该参数用于设置默认的并行度。并行度决定了作业中任务的并发执行程度。默认情况下,Spark会根据集群的总核数来自动设置并行度。但是,如果需要手动设置并行度,可以调整参数的值。一般建议将并行度设置为集群的总核数的2~3倍。\[1\] 通过调整这些参数,我们可以优化资源使用率,提升Spark作业的执行性能。请根据实际情况和需求进行参数调优。 #### 引用[.reference_title] - *1* *2* *3* [Spark性能调优](https://blog.csdn.net/aikeaidecxy/article/details/126491521)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

mtj66

看心情

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值