我在hive表上运行spark-sql .
使用以下参数启动spark-shell时,它会成功运行,
“--driver-memory 8G --executor-memory 10G --executor-cores 1 --num-executors 30”
但是当spark-shell启动时,作业会挂起
“--driver-memory 8G --executor-memory 10G --executor-cores 1 --num-executors 40”
差异仅在于执行者的数量(30对40) .
在第二种情况下,我看到每个执行程序上有1个活动但它没有运行 . 我没有在spark-shell上看到任何“任务已完成”的消息 .
作业成功运行,执行者数量低于30 .
我的纱线群集有42个节点,每个节点30个核心,每个节点大约50G内存 .
有什么指向我要看的地方吗?
我比较了两次运行的调试级别日志,看起来挂起的运行没有任何这样的日志行 . 良好的运行有一堆这些线 .
“org.apache.spark.storage.BlockManager logDebug - 块broadcast_0_piece0的级别是StorageLevel(true,true,false,false,1)”“org.apache.spark.storage.BlockManager logDebug - 块broadcast_1的级别是StorageLevel(true ,true,false,true,1)“
1 回答
这是因为类路径问题,我包括一些旧版本的依赖项,当删除时不再导致问题