
hive 优化
xiewenbo
互联网广告行业呆过几年,旅游公司呆过几年,对机器学习,自然语言处理,图像识别,个性化推荐 有兴趣
展开
-
Hive MapJoin 优化
1、Hive本地MR 如果在hive中运行的sql本身数据量很小,那么使用本地mr的效率要比分布式的快很多。但是hive本地MR对内存使用很敏感,查询的数据不能太大,否则本地内存是吃不消的。So the query processor will launch this task in a child jvm, which has the same heap size as the转载 2014-05-02 21:50:50 · 1221 阅读 · 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转载 2014-06-05 17:15:02 · 604 阅读 · 0 评论 -
Orcfile文件格式解析
Orcfile(Optimized Row Columnar)是hive 0.11版里引入的新的存储格式,是对之前的RCFile存储格式的优化。写这个的哥们来自于HortonWorks,代码写的很不错,比之前的rcfile强多了(据说rcfile是个中科院的童鞋跑去facebook写的,看来中国的计算机教育水平还是有限啊。。。囧,跑题了) 先介绍下Orc的文件格式,截一张官方的图:转载 2014-06-04 20:20:25 · 1356 阅读 · 0 评论 -
HIVE RCFile高效存储结构
本文介绍了Facebook公司数据分析系统中的RCFile存储结构,该结构集行存储和列存储的优点于一身,在 MapReduce环境下的大规模数据分析中扮演重要角色。Facebook曾在2010 ICDE(IEEE International Conference on Data Engineering)会议上介绍了数据仓库Hive。Hive存储海量数据在Hadoop系统中,提供了一套类数据转载 2014-06-04 20:15:02 · 516 阅读 · 0 评论 -
hive文件存储格式
hive在建表是,可以通过‘STORED AS FILE_FORMAT’ 指定存储文件格式例如:[plain] view plaincopy> CREATE EXTERNAL TABLE MYTEST(num INT, name STRING) > ROW FORMAT DELIMITED FIELDS TERMINATED BY '\t'转载 2014-06-04 20:14:25 · 705 阅读 · 0 评论 -
Hive 随谈 – Hive 优化1
Hive 针对不同的查询进行了优化,优化可以通过配置进行控制,本文将介绍部分优化的策略以及优化控制选项。列裁剪(Column Pruning)在读数据的时候,只读取查询中需要用到的列,而忽略其他列。例如,对于查询: SELECT a,b FROM T WHERE e 其中,T 包含 5 个列 (a,b,c,d,e),列 c,d 将会被忽略,只会读取a, b, e 列转载 2014-05-02 22:24:46 · 486 阅读 · 0 评论 -
Combining Hive and Python
Querying large datasets with Hive is trivial. However, there are times when Hive’s built in functions are insufficient. For example, I recently needed to extract the ordering of elements in an array.转载 2014-05-07 14:37:15 · 678 阅读 · 0 评论 -
hive sort by,order by ,distribute by,cluster by
ORDER BY and SORT BYThe ORDER BY clause is familiar from other SQLdialects. It performs atotal ordering ofthequery result set. This means that all the data is passed through a single reducer,w转载 2014-05-04 16:07:03 · 899 阅读 · 0 评论 -
Optimizing Skewed Joins
什么是Skewed Join?MapReduce是一个分布式的处理系统,不同的key会经过map处理以后发往不同的reduce,但是有一种可能是有一个key特别大,因为key是相同的是分不开的,如果有一个特别大会造成一个reduce运行特别缓慢,消耗非常多的内存。我们采取的方式是把超大key也分散到不同的reduce里面做。Pig对skewed join的是先有三个步骤,第一个是通过Samp转载 2014-05-03 17:38:52 · 704 阅读 · 0 评论 -
Hive怎样决定reducer个数?
Hadoop MapReduce程序中,reducer个数的设定极大影响执行效率,这使得Hive怎样决定reducer个数成为一个关键问题。遗憾的是Hive的估计机制很弱,不指定reducer个数的情况下,Hive会猜测确定一个reducer个数,基于以下两个设定:1. hive.exec.reducers.bytes.per.reducer(默认为1000^3)2. hive.e转载 2014-05-02 22:32:52 · 1120 阅读 · 0 评论 -
Hive SQL优化之 Count Distinct
Hive是Hadoop的子项目,它提供了对数据的结构化管理和类SQL语言的查询功能。SQL的交互方式极大程度地降低了Hadoop生态环境中数据处理的门槛,用户不需要编写程序,通过SQL语句就可以对数据进行分析和处理。目前很多计算需求都可以由Hive来完成,极大程度地降低了开发成本。目前,Hive底层使用MapReduce作为实际计算框架,SQL的交互方式隐藏了大部分MapReduce的细节转载 2014-06-09 10:14:45 · 17127 阅读 · 1 评论