Jast blog Jast blog
首页
  • 《Ambari自定义开发教程》笔记
  • 《CDH教程》笔记
  • 《ClickHouse教程》笔记
  • 《HDFS教程》笔记
  • 《DolphinScheduler教程》笔记
  • 《Hbase教程》笔记
  • 《Iceberg教程》笔记
  • 《Hive教程》笔记
  • 《Flume教程》笔记
  • 《Kafka教程》笔记
  • 《Impala教程》笔记
  • 《Hue教程》笔记
  • 《Spark教程》笔记
  • 《Flink教程》笔记
  • 《Phoenix教程》笔记
  • 《ElasticSearch教程》笔记
  • 《Kylin教程》笔记
  • 《Storm教程》笔记
  • 《Yarn教程》笔记
  • 《Presto教程》笔记
  • 《图数据库教程》笔记
  • 《Kerberos教程》笔记
  • 《Maxwell教程》笔记
  • 《MinIO教程》笔记
  • 《DataX教程》笔记
  • 《Superset教程》笔记
  • 《IOTDB教程》笔记
  • 《大数据相关》笔记
  • 《PaddleNLP教程》笔记
  • 《Nginx教程》笔记
  • 《Java技术文档》
  • 《Maven教程》笔记
  • 《IDEA使用教程》
  • 学习
  • 面试
  • 心情杂货
  • 实用技巧
  • 友情链接
关于
收藏
  • 分类
  • 标签
  • 归档

Jast-zsh

如果你知道你要去哪里,全世界都会给你让路。
首页
  • 《Ambari自定义开发教程》笔记
  • 《CDH教程》笔记
  • 《ClickHouse教程》笔记
  • 《HDFS教程》笔记
  • 《DolphinScheduler教程》笔记
  • 《Hbase教程》笔记
  • 《Iceberg教程》笔记
  • 《Hive教程》笔记
  • 《Flume教程》笔记
  • 《Kafka教程》笔记
  • 《Impala教程》笔记
  • 《Hue教程》笔记
  • 《Spark教程》笔记
  • 《Flink教程》笔记
  • 《Phoenix教程》笔记
  • 《ElasticSearch教程》笔记
  • 《Kylin教程》笔记
  • 《Storm教程》笔记
  • 《Yarn教程》笔记
  • 《Presto教程》笔记
  • 《图数据库教程》笔记
  • 《Kerberos教程》笔记
  • 《Maxwell教程》笔记
  • 《MinIO教程》笔记
  • 《DataX教程》笔记
  • 《Superset教程》笔记
  • 《IOTDB教程》笔记
  • 《大数据相关》笔记
  • 《PaddleNLP教程》笔记
  • 《Nginx教程》笔记
  • 《Java技术文档》
  • 《Maven教程》笔记
  • 《IDEA使用教程》
  • 学习
  • 面试
  • 心情杂货
  • 实用技巧
  • 友情链接
关于
收藏
  • 分类
  • 标签
  • 归档
  • HbaseShell命令
  • HbaseJMX监控
  • 协处理器使用
  • Hbase基于Snapshot数据迁移
  • hbase-server下载javax el失败
  • Hbase表无法disable
  • spark executor cores设置未生效
    • namespace rit问题处理
    • HbaseRIT问题解决
    • Docker运行Hbase单节点
    • 《Hbase教程》笔记
    Jast-zsh
    2023-03-10
    目录

    spark executor cores设置未生效

    [toc]

    # 问题

    在提交spark任务时,指定executor.cores使用cpu核数,但提交后实际未生效

    –executor-cores 4 或者 set spark.executor.cores =4指定

    ON YARN模式下可以使用选项 –num-executors 来直接设置application的executor数。 该选项对应的配置参数是 spark.executor.instances

    实际配置:

    set spark.executor.cores=4;
    set spark.executor.memory=8g;
    set spark.executor.instances=11;
    
    1
    2
    3

    实际使用了12个core,并不是11*4+1=45

    # 解决方法

    因为我们的capacity schedule使用的是DefaultResourceCalculator,那么DefaultResourceCalculator它在加载container时其实仅仅只会考虑内存而不考虑cores。

    所以,如果我们想让它既考虑内存也考虑cores的话,需要修改文件$HADOOP_HOME/etc/hadoop/capacity-scheduler.xml

    将

    如果没有该配置,则默认为该配置
    <property>
    <name>yarn.scheduler.capacity.resource-calculator</name>
    <value>org.apache.hadoop.yarn.util.resource.DefaultResourceCalculator</value>
    </property>
    
    1
    2
    3
    4
    5

    修改为

    <property>
    <name>yarn.scheduler.capacity.resource-calculator</name>
    <value>org.apache.hadoop.yarn.util.resource.DominantResourceCalculator</value>
    </property>
    
    1
    2
    3
    4

    请注意每个节点的配置文件都需要修改。并且重启Yarn。

    再提交任务发现,实际使用的core为45个。

    以上的一切配置都是基于capacity调度器进行配置的,但是如果你使用的是fair调度器,那么无需配置该参数,fair调度器已经有该功能。

    • 参考:https://blog.csdn.net/qq_35440040/article/details/78963722
    上次更新: 2023/03/10, 22:18:19
    Hbase表无法disable
    namespace rit问题处理

    ← Hbase表无法disable namespace rit问题处理→

    最近更新
    01
    Linux可视化监控
    02-26
    02
    Maven私服搭建
    02-26
    03
    当ElasticSearch时间字段设置多个格式到底是用的哪个?
    01-19
    更多文章>
    Theme by Vdoing | Copyright © 2016-2025 Jast-zsh | MIT License
    • 跟随系统
    • 浅色模式
    • 深色模式
    • 阅读模式