hive
evo_steven
这个作者很懒,什么都没留下…
展开
-
hive查询优化总结
一、join优化Join查找操作的基本原则:应该将条目少的表/子查询放在 Join 操作符的左边。原因是在 Join 操作的 Reduce 阶段,位于 Join 操作符左边的表的内容会被加载进内存,将条目少的表放在左边,可以有效减少发生内存溢出错误的几率。Join查找操作中如果存在多个join,且所有参与join的表中其参与join的key都相同,则会将所有的join合并到一个mapred原创 2012-12-04 20:29:27 · 452 阅读 · 0 评论 -
hive merge file
当Hive输入由很多个小文件组成,由于每个小文件都会启动一个map任务,如果文件过小,以至于map任务启动和初始化的时间大于逻辑处理的时间,会造成资源浪费,甚至OOM。为此,当我们启动一个任务,发现输入数据量小但任务数量多时,需要注意在Map前端进行输入合并当然,在我们向一个表写数据时,也需要注意输出文件大小1. Map输入合并小文件对应参数:set mapred.max.原创 2013-11-26 11:17:37 · 1097 阅读 · 0 评论 -
hive job配置和mapreduce数目控制
开启动态分区:hive.exec.dynamic.partition=true默认值:false描述:是否允许动态分区hive.exec.dynamic.partition.mode=nonstrict默认值:strict描述:strict是避免全分区字段是动态的,必须有至少一个分区字段是指定有值的。读取表的时候可以不指定分区。设置如下参数配置动态分区的使用环境:原创 2013-11-26 11:19:08 · 7614 阅读 · 0 评论 -
Hive - hive.groupby.skewindata环境变量与负载均衡
HiveQL 去重操作和SQL一样,HiveQL中同样支持DISTINCT操作,如下示例:(1) SELECT count(DISTINCT uid) FROM log(2) SELECT ip, count(DISTINCT uid) FROM log GROUP BY ip(3) SELECT ip, count(DISTINCT uid, uname) FROMlog G转载 2013-12-24 11:45:59 · 9822 阅读 · 0 评论 -
基于HIVE文件格式的map reduce代码编写
我们的数据绝大多数都是在HIVE上,对HIVE的SEQUENCEFILE和RCFILE的存储格式都有利用,为了满足HIVE的数据开放,hive client的方式就比较单一,直接访问HIVE生成的HDFS数据也是一种必要途径,所以本文整理测试了如何编写基于TEXTFILE、SEQUENCEFILE、RCFILE的数据的map reduce的代码。以wordcount的逻辑展示3种MR的代码。转载 2013-12-23 16:08:11 · 877 阅读 · 0 评论 -
Hive刷分区MSCK
一、介绍我们平时通常是通过alter table add partition方式增加Hive的分区的,但有时候会通过HDFS put/cp命令往表目录下拷贝分区目录,如果目录多,需要执行多条alter语句,非常麻烦。Hive提供了一个"Recover Partition"的功能。具体语法如下: MSCK REPAIR TABLE table_name;原理相当简单,执行后,Hi...原创 2019-01-08 16:43:49 · 3914 阅读 · 0 评论