HIVE跑个insert into select xxx 为什么CPU飙高

本文分析了在Hive中使用`insert into select`语句时,为何会出现CPU使用率升高的现象。主要探讨了Tez执行引擎的工作原理,包括Tez的DAG任务定义、优化目标以及其相对于MapReduce的优势,解释了Tezchild进程占用CPU较高的原因,并给出了Hive配置Tez的注意事项。
摘要由CSDN通过智能技术生成

HIVE跑个insert into select xxx 为什么CPU飙高

近期做一款数据湖的选型性能比对,发现跑个Hive的insert into select xxx做入库的性能测试时,想着按理map阶段都是从一张表里面读取数据对磁盘IO有压力而已,结果发现集群的cpu也伴随着比较高,我们来分析分析吧!
执行HIVE SQL如下:
在这里插入图片描述
跑完,发现磁盘IO与CPU都有一个峰值的高

1. 现象展示

在这里插入图片描述
修改hdfs写磁盘的策略,这边集群的盘为异构盘态。

修改写磁盘的策略
<property>
  <name>dfs.datanode.fsdataset.volume.choosing.policy</name>
  <value>org.apache.hadoop.hdfs.server.datanode.fsdataset.AvailableSpaceVolumeChoosingPolicy</value>
  <description>
   datanode数据副本存放的磁盘选择策略,有2种方式:
   一种是轮询方式(org.apache.hadoop.hdfs.server.datanode.fsdataset.RoundRobinVolumeChoosingPolicy,为默认方式)
   另一种为选择可用空间足够多的磁盘存储方式,这个为了防止各个节点上的各个磁盘的存储均匀采用这个方式。
  </description>
 </property>
 <property>
  <name>dfs.datanode.available-space-volume-choosing-policy.balanced-space-threshold</name>
  <value>912680550400</value>
  <description>
   850G
   当在上面datanode数据副本存放的磁盘选择可用空间足够多的磁盘存储方式
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值