291294878

2018-10-22   阅读量: 653

大数据 Spark

spark的七个参数分别是什么?

扫码加入数据分析学习群

• num-executors:该作业总共需要多少executor进程执行

建议:每个作业运行一般设置5-~100个左右较合适

• executor-memory:设置每个executor进程的内存, num-executors* executor-memory代表作业申请的总内存量(尽量不要超过最大总内存的1/3~1/2)

建议:设置4G~8G较合适

• executor-cores: 每个executor进程的CPU Core数量,该参数决定每个executor进程并行执行task线程的能力,num-executors * executor-cores代表作业申请总CPU core数(不要超过总CPU Core的1/3~1/2 )

建议:设置2~4个较合适

• driver-memory: 设置Driver进程的内存

建议:通常不用设置,一般1G就够了,若出现使用collect算子将RDD数据全部拉取到Driver上处理,就必须确保该值足够大,否则OOM内存溢出

• spark.default.parallelism: 每个stage的默认task数量

建议:设置500~1000较合适,默认一个HDFS的block对应一个task,Spark默认值偏少,这样导致不能充分利用资源

• spark.storage.memoryFraction: 设置RDD持久化数据在executor内存中能占的比例,默认0.6,即默认executor 60%的内存可以保存持久化RDD数据

建议:若有较多的持久化操作,可以设置高些,超出内存的会频繁gc导致运行缓慢

• spark.shuffle.memoryFraction: 聚合操作占executor内存的比例,默认0.2

建议:若持久化操作较少,但shuffle较多时,可以降低持久化内存占比,提高shuffle操作内存占比

添加CDA认证专家【维克多阿涛】,微信号:【cdashijiazhuang】,提供数据分析指导及CDA考试秘籍。已助千人通过CDA数字化人才认证。欢迎交流,共同成长!
0.0000 0 2 关注作者 收藏

评论(0)


暂无数据

推荐课程

推荐帖子