apache-spark - WARN TaskSchedulerImpl:初始作业未接受任何资源
问题描述
当我运行 spark-shell 并在我的 spark-standalone 集群上读取 parquet 文件时,一开始我会得到
“ WARN TaskSchedulerImpl:初始作业未接受任何资源;检查您的集群 UI 以确保工作人员已注册并有足够的资源”
但是几次之后,我的工人将被注册并且可以完成工作。那我可以做 df.count 。
日志是这样的:
21/06/22 18:40:36 WARN TaskSchedulerImpl:初始作业未接受任何资源;检查您的集群 UI 以确保工作人员已注册并拥有足够的资源
21/06/22 18:40:36 DEBUG TaskSchedulerImpl: parentName: , name: TaskSet_0.0, runningTasks: 0
21/06/22 18:40:37 DEBUG TaskSchedulerImpl: parentName: , name: TaskSet_0.0, runningTasks: 0
21/06/22 18:40:38 DEBUG TaskSchedulerImpl: parentName: , name: TaskSet_0.0, runningTasks: 0
21/06/22 18:40:49 DEBUG TaskSchedulerImpl: parentName: , name: TaskSet_0.0, runningTasks: 0
21/06/22 18:40:50 INFO CoarseGrainedSchedulerBackend$DriverEndpoint: 已注册的执行程序 NettyRpcEndpointRef(spark-client://Executor) (*****:58638),ID 为 0
21/06/22 18:40:50 DEBUG TaskSchedulerImpl: parentName: , name: TaskSet_0.0, runningTasks: 0
21/06/22 18:40:50 调试 TaskSetManager:TaskSet 0.0 的有效位置级别:NO_PREF,ANY
21/06/22 18:40:50 INFO TaskSetManager:在阶段 0.0 启动任务 0.0(TID 0,***** 执行器 0,分区 0,PROCESS_LOCAL,8058 字节)
21/06/22 18:40:50 DEBUG TaskSetManager:本地级别 NO_PREF 没有任务,因此移动到本地级别 ANY
21/06/22 18:40:50 调试 DefaultTopologyMapper:收到 172.19.0.82 的请求
21/06/22 18:40:50 信息 BlockManagerMasterEndpoint:注册块管理器 *****:42088 和 3.0 GB RAM,BlockManagerId(0,*****,42088,无)
21/06/22 18:40:50 调试 CoarseGrainedSchedulerBackend$DriverEndpoint:在执行程序 ID 上启动任务 0:0 主机名:*****。
21/06/22 18:40:50 DEBUG TaskSchedulerImpl: parentName: , name: TaskSet_0.0, runningTasks: 1
[Stage 0:> (0 + 1) / 1]21/06/22 18:40:51 DEBUG BlockManager: 以字节获取本地块广播_0_piece0
21/06/22 18:40:51 调试 BlockManager:块广播_0_piece0 的级别是 StorageLevel(磁盘,内存,1 个副本)
21/06/22 18:40:51 INFO BlockManagerInfo:在内存中添加了广播_0_piece0 *****:42088(大小:26.6 KB,免费:3.0 GB)
21/06/22 18:40:51 DEBUG TaskSchedulerImpl: parentName: , name: TaskSet_0.0, runningTasks: 1
21/06/22 18:40:52 DEBUG TaskSchedulerImpl: parentName: , name: TaskSet_0.0, runningTasks: 0
21/06/22 18:40:52 INFO TaskSetManager: 在 ***** (executor 0) (1/1) 上的 2462 毫秒内完成阶段 0.0 (TID 0) 中的任务 0.0
21/06/22 18:40:52 INFO TaskSchedulerImpl:从池中删除了任务已全部完成的 TaskSet 0.0
21/06/22 18:40:52 INFO DAGScheduler: ResultStage 0 (parquet at :23) 在 121.699 秒内完成
21/06/22 18:40:52 DEBUG DAGScheduler: 移除阶段 0 后,剩余阶段 = 0
21/06/22 18:40:52 信息 DAGScheduler:作业 0 完成:镶木地板:23,耗时 121.753858 秒
df: org.apache.spark.sql.DataFrame = [SOURCE: string, EXTERNAL_CUSTOMER_ID: string ... 19 个更多字段]
==================================================== =================================== 谁能告诉我为什么我得到“最初的工作没有接受任何资源”一开始?因为它,我不得不等了这么久。
提前欣赏任何线索和建议。
解决方案
推荐阅读
- visual-studio-code - 定义要在文件夹模板扩展名中使用的文件模板
- jenkins - 在我的 Jenkins 构建隐藏文件后,我还可以使用文件吗?
- terraform - 本地人,对于每个和模块安全组
- docker - Ansible:获取本地文件并在任务中使用其定义的变量
- python - 具有匹配分数的数组中的模式匹配:输出值似乎不准确
- database - 从qt中的数据库加载时的舍入双变量
- next.js - vercel 无服务器函数调用超时
- swift - 仅显示最近的错误 架构 x86_64 的 4 个重复符号
- visual-studio - Visual Studio - 配置转换会破坏 XML 格式
- qt - 支持命令行的 Qt6 安装程序