gpt4 book ai didi

java - 为什么 Spark Standalone 集群不使用所有可用核心?

转载 作者:搜寻专家 更新时间:2023-11-01 01:33:29 26 4
gpt4 key购买 nike

我已经为 Apache Spark 1.2.1 独立集群完成了以下配置:

  • Hadoop 2.6.0
  • 独立集群中的 2 个节点 - 一主一从
  • 3 节点 Cassandra
  • 核心总数:6(2 个主节点,4 个从节点)
  • 总内存:13 GB

我在独立集群管理器中运行 Spark 作为:

./spark-submit --class com.b2b.processor.ProcessSampleJSONFileUpdate \
--conf num-executors=2 \
--executor-memory 2g \
--driver-memory 3g \
--deploy-mode cluster \
--supervise \
--master spark://abc.xyz.net:7077 \
hdfs://abc:9000/b2b/b2bloader-1.0.jar ds6_2000/*.json

我的工作正在成功执行,即从文件中读取数据并将其插入到 Cassandra。

Spark 文档说在独立集群中使用所有可用核心,但我的集群每个应用程序只使用 1 个核心。此外,在 Spark UI 上启动应用程序后,它显示 Applications:0 running 和 Drivers:1 running。

我的查询是:

  1. 为什么它没有使用所有可用的 6 个内核?
  2. 为什么 spark UI 显示应用程序:0 正在运行?

代码:

public static void main(String[] args) throws Exception {

String fileName = args[0];
System.out.println("----->Filename : "+fileName);

Long now = new Date().getTime();

SparkConf conf = new SparkConf(true)
.setMaster("local")
.setAppName("JavaSparkSQL_" +now)
.set("spark.executor.memory", "1g")
.set("spark.cassandra.connection.host", "192.168.1.65")
.set("spark.cassandra.connection.native.port", "9042")
.set("spark.cassandra.connection.rpc.port", "9160");

JavaSparkContext ctx = new JavaSparkContext(conf);

JavaRDD<String> input = ctx.textFile("hdfs://abc.xyz.net:9000/dataLoad/resources/" + fileName,6);
JavaRDD<DataInput> result = input.mapPartitions(new ParseJson()).filter(new FilterLogic());

System.out.print("Count --> "+result.count());
System.out.println(StringUtils.join(result.collect(), ","));

javaFunctions(result).writerBuilder("ks","pt_DataInput",mapToRow(DataInput.class)).saveToCassandra();

}

最佳答案

如果您将应用程序中的 master 设置为本地(通过 .setMaster("local")),它将不会连接到 spark://abc.xyz。网:7077.

如果您使用 spark-submit 命令进行设置,则无需在应用程序中设置 master。

关于java - 为什么 Spark Standalone 集群不使用所有可用核心?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29793490/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com