我们正在尝试使用Hadoop和处理Common Crawl。
我们的问题是,如果我们创建一个包含1个Master
节点和1个Core
以及2个Task
节点的集群,则每个组中只有一个节点将获得较高的CPU /网络使用率。
我们还尝试了2个Core
和没有Task
个节点,但在这种情况下,也只使用了一个Core
节点。
遵循节点/群集监控的一些屏幕截图。作业一直在运行(在前两个并行映射阶段),并且应该已经使用了大部分可用的CPU功率,正如您在工作Task
节点的屏幕截图中看到的那样。
但是为什么闲置的Task
节点没有被利用?
我们的hadoop作业,作为Jar
步骤运行,对地图作业没有限制。它由链接的多个map / reduce步骤组成。最后一次减少作业仅限于一个减速器。
截图: https://drive.google.com/drive/folders/1xwABYJMJAC_B0OuVpTQ9LNSj12TtbxI1?usp=sharing
ClusterId:j-3KAPYQ6UG9LU6
StepId:s-2LY748QDLFLM9
我们在另一次运行期间在空闲节点的系统日志中发现了以下内容,可能是EMR问题?
ERROR main: Failed to fetch extraInstanceData from https://aws157-instance-data-1-prod-us-east-1.s3.amazonaws.com/j-2S62KOVL68GVK/ig-3QUKQSH7YJIAU.json?X-Amz-Algorithm=AWS4-HMAC-SHA256&X
问候 卢卡斯
答案 0 :(得分:0)
晚了聚会,但是您尝试将这些属性设置为spark Submit命令的一部分。
--conf 'spark.dynamicAllocation.enabled=true'
--conf 'spark.dynamicAllocation.minExecutors=<MIN_NO_OF_CORE_OR_TASK_NODES_YOU_WANT>'