鲲鹏社区首页
中文
注册
开发者
我要评分
获取效率
正确性
完整性
易理解
在线提单
论坛求助

其他调优

目的

根据核心数来调整分片数,使得每个核心处理的数据量尽可能一样,避免因数据倾斜导致的单核处理时间过长。

方法

  • 该场景下采用3~5倍总核数作为数据分片的Partitions和Parallelism进行数据分片,减小单Task文件大小,对性能有提升。可以使用以下分片设置:
    1
    2
    spark.sql.shuffle.partitions 1000
    spark.default.parallelism 2000
    
  • HiBench在配置文件中指定的运行核数、内存大小可以根据实际环境来做调整,来达到最优性能。例如对于鲲鹏920 5220处理器,Terasort场景建议以下Executor参数:
    1
    2
    3
    4
    yarn.executor.num 27
    yarn.executor.cores 7
    spark.executor.memory 25G
    spark.driver.memory 36G