栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 前沿技术 > 大数据 > 大数据系统

5.1.4、Hive

5.1.4、Hive

1、hive的子查询

where 条件里不支持不等式子查询,实际上是支持 in、not in、exists、not exists
select * from students where clazz in(select clazz from students as t where t.id=‘1
500100970’); //注意2张表是相同的,需要加标识,就是给表命名,区分

2、字段相加函数

字段含有null值,使用nvl函数
eg:select id,nvl(x,0) from vels; //x为null就是0

3、基本查询语言DML

(1)where :过滤数据、!!!分区裁剪!!!
(2)distinct
:去重

(3) join:left join、right join、join 注意MapJoin
map Join过程:大表进行切分block,在不同机器上,join小表时,join在每个机器上都应该有相同的数据,所有小表不进行mr,只是一个复制,所以复制的表小一些效率高

(4)group by : 通常结合聚合函数一起使用

(5)order by:对查询结果集执行一个全局排序,这也就是说所有的数据都通过一个reduce进行处理的过程,对于大数据集,这个过程将消耗很大的时间来执行

(6)sort by:局部排序,当有多个reduce时,只能保证单个reduce输出有序,不能保证全局有序
在使用sort by之前,需要先设置Reduce的数量>1,才会做局部排序,如果Reduce数量是1,作用与order by一样,全局排序。

(7)distribute by:分区,就是分区,让可能相同的hashcode的数据进入一个reduce

(8)cluster by = distribute by + sort by

image-20210114163608574.png

https://zhuanlan.zhihu.com/p/93747613 order by、distribute by、sort by、cluster by详解

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/303187.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号