未使用的火花工人

时间:2019-03-26 15:53:09

标签: apache-spark spark-thriftserver

我已经配置了独立的Spark集群,该集群具有1个主服务器,1个从属服务器和Thrift服务器连接到Cassandra集群,该服务器用作Tableau应用程序的JDBC连接器。无论如何,当我启动任何查询工作程序时,从站都出现在工作程序列表中,似乎没有用作执行程序(使用了0个核)。所有工作量均由主执行器执行。同样在Thrift Web控制台中,我观察到只有一个执行程序处于活动状态。

基本上,我希望Spark集群的两个执行器上的分布式工作负载都能实现更高的性能。

从主日志中:

  

2019-03-26 15:36:52信息大师:54-我当选领导人!新   状态:ALIVE 2019-03-26 15:37:00信息大师:54-注册工人   worker-ip:37678,具有16核,61.8 GB RAM

来自工作人员日志:

  

2019-03-26 15:37:00 INFO工人:54-已成功注册   主spark:// master-hostname:7077

我的spark-defaults.conf是:

spark.driver.memory=50g
spark.driver.maxResultSize=4g

spark.sql.thriftServer.incrementalCollect=false
spark.sql.shuffle.partition=17
spark.sql.autoBroadcastJoinThreshold=10485760
spark.sql.inMemoryColumnarStorage.compressed=true
spark.sql.inMemoryColumnarStorage.batchSize=10000

spark.cores.max=32
spark.executor.cores=16
spark.memory.offHeap.enabled=true
spark.memory.offHeap.size=1g

pic1工人

enter image description here

pic2执行者

enter image description here

任何帮助都受到赞赏。

1 个答案:

答案 0 :(得分:3)

当工人身上没有火花时,有一些主要的嫌疑人需要消除。

  1. 您是否在Web UI中看到工作人员?
  2. 防火墙是否允许您发送实际的工作量并获得响应?有关更多详细信息,请参见this existing answer
  3. 奴隶有足够的自由资源来接受工作吗?我注意到您需要16个内核,也许这个数目比可用的更多?
  4. 是否需要容量?考虑并行提交多个作业(这需要执行者,并且需要足够小的资源),以确保不仅“巧合”地避免了该节点。继续前进,直到看到它确实不适合您的主节点为止。

如果所有这些均失败,则可能需要更多上下文。

  • 您没有共享任何错误消息,真的没有错误在任何地方吗?
  • 您正在使用哪种集群(Hadoop,Mesos?)