欢迎光临
我们一直在努力

计算机Hive中两大表连接,发生了数据倾斜,有一个reduce无法完成,检查发现t1中guid=” 的记录有很多,其他guid都不重复,这条语句该怎样优化? select t1.* ,nvl(t2.x,1 ) from t1 left join t2 on t1.guid = t2.guid-笔试面试资料

本站提供程序员计算机面试经验学习,笔试经验,包括字节跳动/头条,腾讯,阿里,美团,滴滴出行,网易,百度,京东,小米,华为,微软等互联网大厂真题学习背诵。

答案:

这是qklbishe.com第5930 篇笔试面试资料
提供答案分析,通过本文《Hive中两大表连接,发生了数据倾斜,有一个reduce无法完成,检查发现t1中guid=” 的记录有很多,其他guid都不重复,这条语句该怎样优化? select t1.* ,nvl(t2.x,1 ) from t1 left join t2 on t1.guid = t2.guid-笔试面试资料》可以理解其中的代码原理,这是一篇很好的求职学习资料
本站提供程序员计算机面试经验学习,笔试经验,包括字节跳动/头条,腾讯,阿里,美团,滴滴出行,网易,百度,京东,小米,华为,微软等互联网大厂真题学习背诵。

答案:

 
Hive中两大表连接,发生了数据倾斜,有一个reduce无法完成,检查发现t1中guid=''的记录有很多,其他guid都不重复,这条语句该怎样优化?
select t1.*
,nvl(t2.x,1)
from t1
left join t2
on t1.guid = t2.guid

Hive中两大表连接,发生了数据倾斜,有一个reduce无法完成,检查发现t1中guid=” 的记录有很多,其他guid都不重复,这条语句该怎样优化? 	  	 		select  t1.* 	  	 		,nvl(t2.x,1 ) 	  	 		from  t1 	  	 		left join  t2 	  	 		on  t1.guid = t2.guid-笔试面试资料 零葬
对guid字段中的空串加随机数,打散到其他的reducer中,避免这个reducer的压力太大
select t1.*, nvl(t2.x,1) from t1 left join t2 on (case when t1.guid='' then concat('yuewen', rand()) else t1.guid end)=t2.guid;

今天 10:46:38 回复(0)

文章部分来自互联网,侵权联系删除
www.qklbishe.com

赞(0)
未经允许不得转载: 京大飞辅助网程序员面试-区块链javago面经 » 计算机Hive中两大表连接,发生了数据倾斜,有一个reduce无法完成,检查发现t1中guid=” 的记录有很多,其他guid都不重复,这条语句该怎样优化? select t1.* ,nvl(t2.x,1 ) from t1 left join t2 on t1.guid = t2.guid-笔试面试资料

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址