hive on tez 指定队列后任务一直处于running状态

如上图所示一直处于running状态,查看日志发现一直重复弹出同一个info:

2024-10-18 16:57:32,739 [INFO] [AMRM Callback Handler Thread] |rm.YarnTaskSchedulerService|:

Allocated: <memory:0, vCores:0>

释义 : 当前应用程序没有分配到任何内存(memory:0)和虚拟核心(vCores:0)。这意味着 YARN 还没有给该作业分配任何资源来启动任务。

Free: <memory:1024, vCores:1>

释义: 当前集群中可用的资源包括 1024MB 的内存和 1 个 vCore(虚拟核心)。虽然有一些空闲资源,但可能不够或者未被分配给当前作业。

pendingRequests: 6

释义: 当前作业还有 6 个任务在等待资源分配。YARN 还没有为这些任务找到可以运行的容器,作业因此被阻塞。

delayedContainers: 0

释义: 没有任何延迟分配的容器。通常,当 YARN 没有立即分配到符合要求的资源时,容器会被延迟,直到合适的资源可用。

heartbeats: 3551

释义: ApplicationMaster (AM) 与 ResourceManager (RM) 之间已经进行了 3551 次心跳通信。这是 YARN 用来监控资源和应用状态的机制。每个心跳之间,RM 会更新 AM 关于资源的状态。

lastPreemptionHeartbeat: 3550

释义: 这是第 3550 次心跳发送时,ResourceManager 发送的最后一次"抢占心跳"(Preemption Heartbeat)。抢占是 YARN 在资源紧张时的机制,用于重新分配低优先级任务的资源给更高优先级的任务。

highestWaitingRequestWaitStartTime: 1729241801061

: 当前队列中等待时间最长的资源请求的开始时间。这个数值是时间戳,通常是从1970年1月1日 UTC 时间以来的毫秒数,代表该任务的等待时间较长

highestWaitingRequestPriority: 32

释义: 这是当前等待资源的最高优先级请求的优先级值。通常,优先级值越小,优先级越高。32 代表该请求的优先级较低,因此它可能在调度过程中优先级靠后。

重点是:Allocated: <memory:0, vCores:0>和Free: <memory:1024, vCores:1>

先看集群总内存和cores情况,总共132G,75cores:

整个集群明显还有空闲资源,再看对于aviation队列的设置:

configured capacity=5%,表示队列的初始容量百分比,即avation队列在最开始可以使用132G*5%=6.75G,75*5%=3.75cores。

configured max capacity=10%定义了队列使用集群资源的上限,即使其他队列资源空闲,aviation 队列也不能超过这个上限,即132*10%=13.2G,75*10%=7.5cors

尝试调大configured max capacity至30%,

成功解决:

相关推荐
冬至喵喵5 小时前
【hive】函数集锦:窗口函数、列转行、日期函数
大数据·数据仓库·hive·hadoop
weixin_472339461 天前
Doris查询Hive数据:实现高效跨数据源分析的实践指南
数据仓库·hive·hadoop
神奇侠20242 天前
Hive SQL常见操作
hive·hadoop·sql
itachi-uchiha2 天前
Docker部署Hive大数据组件
大数据·hive·docker
viperrrrrrrrrr72 天前
大数据学习(131)-Hive数据分析函数总结
大数据·hive·学习
qq_408413392 天前
spark 执行 hive sql数据丢失
hive·sql·spark
yt948323 天前
如何在IDE中通过Spark操作Hive
ide·hive·spark
viperrrrrrrrrr74 天前
大数据学习(129)-Hive数据分析
大数据·hive·学习
伍六星4 天前
图片上传问题解决方案与实践
大数据·hive·hadoop
杨DaB5 天前
【JavaWeb】Maven、Servlet、cookie/session
hive·servlet·maven