hive
bigkeen
这个作者很懒,什么都没留下…
展开
-
hive大数据倾斜总结
在做Shuffle阶段的优化过程中,遇到了数据倾斜的问题,造成了对一些情况下优化效果不明显。主要是因为在Job完成后的所得到的Counters是整个Job的总和,优化是基于这些Counters得出的平均值,而由于数据倾斜的原因造成map处理数据量的差异过大,使得这些平均值能代表的价值降低。Hive的执行是分阶段的,map处理数据量的差异取决于上一个stage的reduce输出,所以如何将数据均匀的转载 2015-03-04 10:32:26 · 341 阅读 · 0 评论 -
map和reduce 个数的设定 (Hive优化)经典
一、 控制hive任务中的map数: 1. 通常情况下,作业会通过input的目录产生一个或者多个map任务。 主要的决定因素有: input的文件总个数,input的文件大小,集群设置的文件块大小(目前为128M, 可在hive中通过set dfs.block.size;命令查看到,该参数不能自定义修改);2. 举例: a) 假设input转载 2015-03-26 19:07:56 · 358 阅读 · 0 评论 -
hive的查询注意事项以及优化总结 .
Hive是将符合SQL语法的字符串解析生成可以在Hadoop上执行的MapReduce的工具。使用Hive尽量按照分布式计算的一些特点来设计sql,和传统关系型数据库有区别,所以需要去掉原有关系型数据库下开发的一些固有思维。基本原则:1:尽量尽早地过滤数据,减少每个阶段的数据量,对于分区表要加分区,同时只选择需要使用到的字段select ... from Ajoin Bon转载 2015-03-26 19:44:32 · 390 阅读 · 0 评论 -
hive join详解
Common Join最为普通的join策略,不受数据量的大小影响,也可以叫做reduce side join ,最没效率的一种join 方式. 它由一个mapreduce job 完成.首先将大表和小表分别进行map 操作, 在map shuffle 的阶段每一个map output key 变成了table_name_tag_prefix + join_column_value转载 2016-04-14 17:20:12 · 405 阅读 · 0 评论 -
HIVE中Join的专题---Join详解
Hive表连接的语法支持如下:Sql代码 join_table: table_reference JOIN table_factor [join_condition] | table_reference {LEFT|RIGHT|FULL} [OUTER] JOIN table_reference join_condition | table_refere转载 2016-04-14 17:27:25 · 778 阅读 · 0 评论 -
SQL join中级篇--hive中 mapreduce join方法分析
1. 概述。本文主要介绍了mapreduce框架上如何实现两表JOIN。2. 常见的join方法介绍假设要进行join的数据分别来自File1和File2.2.1 reduce side joinreduce side join是一种最简单的join方式,其主要思想如下:在map阶段,map函数同时读取两个文件File1和File2,为了区分两种来源的key/value数据转载 2016-05-04 21:49:36 · 742 阅读 · 0 评论 -
Hive 基础之:分区、桶、Sort Merge Bucket Join
Hive 已是目前业界最为通用、廉价的构建大数据时代数据仓库的解决方案了,虽然也有 Impala 等后起之秀,但目前从功能、稳定性等方面来说,Hive 的地位尚不可撼动。其实这篇博文主要是想聊聊 SMB join 的,Join 是整个 MR/Hive 最为核心的部分之一,是每个 Hadoop/Hive/DW RD 必须掌握的部分,之前也有几篇文章聊到过 MR/Hive 中的 join,其实转载 2016-05-04 23:03:10 · 703 阅读 · 0 评论 -
hive udtf的使用
原文:http://blog.linezing.com/2011/03/hive%E4%B8%ADudtf%E7%BC%96%E5%86%99%E5%92%8C%E4%BD%BF%E7%94%A81. UDTF介绍UDTF(User-Defined Table-Generating Functions) 用来解决 输入一行输出多行(On-to-many mapin转载 2016-04-24 20:02:52 · 1062 阅读 · 0 评论 -
Skew Join与Left Semi Join相关
Skew Join真实数据中数据倾斜是一定的, hadoop 中默认是使用hive.exec.reducers.bytes.per.reducer = 1000000000也就是每个节点的reduce 默认是处理1G大小的数据,如果你的join 操作也产生了数据倾斜,那么你可以在hive 中设定set hive.optimize.skewjoin = true; set hiv转载 2016-08-30 18:28:28 · 528 阅读 · 0 评论