key*_*int 7 performance configuration distributed-computing apache-spark spark-streaming
我的Spark群集有1个主服务器和3个工作服务器(在4台独立的机器上,每台机器有1个核心),其他设置如下图所示,其中spark.cores.max设置为3,spark.executor.cores也是3(图1)
但是,当我提出我的工作,星火产业集群,从星火网络的用户界面,我可以看到只有一个执行程序用于(根据使用的内存和RDD块在PIC-2 ),但不是所有的执行者.在这种情况下,处理速度比我预期的要慢得多.
由于我将max cores设置为3,所以不应该将所有执行程序都用于此工作吗?
如何配置Spark以将当前作业分配给所有执行程序,而不是只运行当前作业的一个执行程序?
非常感谢.
------------------ pic-1:

------------------ pic-2:

你说你正在运行两个接收器,它们是什么类型的接收器(Kafka、Hdfs、Twitter??)
您使用的是哪个 Spark 版本?
根据我的经验,如果您使用文件接收器以外的任何接收器,那么它将永久占用 1 个核心。因此,当您说您有 2 个接收器时,那么 2 个核心将永久用于接收数据,因此您只剩下 1 个核心在执行工作。
请同时发布 Spark master 主页截图。以及 Job 的 Streaming 页面截图。
| 归档时间: |
|
| 查看次数: |
4976 次 |
| 最近记录: |