简单12招让Hive运行快一点,再快一点

Hive可以让你在Hadoop上使用SQL,但是在分布系统上的SQL的调优是不同的。这里有12个技巧能够帮助你。

Hive并不是一个关系型数据库,但它假装是大部分情况中的一个。它有表格,运行SQL,并且支持JDBC和ODBC。

这个启示有利及不利的消息:Hive不运行查询数据库方式。这是一个很长的故事,但是我在工作周花了80多个小时亲自调整Hive。不用说,我不必再头疼了。因此,为了您的利益,这里有一些建议,让你的Hive项目比我的运行的快一点。

1、不要使用MapReduce

你是否相信Tez,Spark或者Impala,但是不相信MapReduce。它是缓慢的,它比Hive还要慢。如果你在Hortonwork的分布,你可以在脚本的顶部输入 set hive.execution.engine=tez

在子句中使用Impala.希望当你的impala不再合适的时候设置 hive.execution.engine=spark

2、不要在SQL字符串配对

注意,尤其是在Hive,如果你在本该是子句的地方配对字符串,会产生一个交叉的产品警告。如果你有一个几秒内运行的查询,与需要几分钟才能配对的字符串。你最好选择使用多个工具,允许你添加搜索Hadoop。查看Elasticsearch’s Hiveintegration or Lucidwork’s integration for Solr。或者,哪里有Cloudera Search. RDBMSes 非常善于做这个,但是Hive就很差了。

Apache Hive拟人画

3、不要加入一个子查询

你最好创建一个临时列表,然后加入临时表不询问Hive如何智能的处理子查询。也就是说不要这么做。

而是要这么样做

在这一点上,它真的不应该在Hive的进化上如此之快,但是它通常是这样的。

4、使用Parquet或者ORC,但是不要把它们转化成运动

这就是说,相对用Parquet或者ORC,例如,TEXTFILE。然而,如果你有文本数据进来,并且促进它变的更结构化,转换到目标表。你不能从文本文件加载数据到一个ORC,所以做初始加载到文本。

如果你创建其他的表,你最终会运行不到你的分析。在那里做ORCing,因为转换到ORC或者Parquet需要时间,并且不值得进行你的ETL过程的第一步。如果你有简单的平面文件进来,并且不做任何调整。然后你被加载到一个临时表,并且选择创建一个ORC或者Parquet。我不嫉妒你因为它真的很慢。

5、尝试把矢量化打开或者关闭

增加

在你的脚本的顶端。尝试让它们开或关,因为矢量化在Hive的新版本中似乎有一些问题。

6、不要用结构加入

我不得不承认我原本的大脑的SQL语法依然是SQL-92时代,所以我无论如何不倾向于使用结构。但是如果你做一些像对复合PKS子句超重复的事情,结构是方便的。不幸的是,Hive隔断了它们——尤其是在子句上,当然,在较小的数据集并没有这么做,也没有产生任何错误的时间。在绝对禁区,你得到一个有趣的向量误差。这个限制是没有记录任何我所知道的地方。把这个看成是一个有序的方式来了解你的执行引擎的内部结构!

7、检查容器的尺寸

你可能需要为Impala或者Tez增加你容器的尺寸。此外,”建议”尺寸可能不适用于您的系统,如果你有较大的节点尺寸。你可能要确保你的YARN队列和一般的YARN记忆是恰当的。你可能还想把它钉在一个东西上,这个东西不是所有人都使用的默认队列。

8、启动统计

Hive的确有点愚蠢的东西加入,除非数据启动起来。你可能还想在Impala使用查询提示。

9、考虑Mapjoin优化

如果你对查询做了解释,你可能会发现最近Hive的版本足够聪明到去自动应用优化的。但是你需要去调整他们。

10、如果可以,把最大的表放在最后

11、区分你的朋友……额……

如果你在许多子句的地方有一个项目,如一个日期(但是并不是一个理想的范围)或者重复的位置,您可能有您的区分键!分区的基本意思是”分裂成为它自己的目录,”这意味着不是在寻找一个大的文件,Hive查看一个文件,因为你用你的join/where从句让你只看location=’NC’,这是你的一个小数据集。此外,与列值不同,您可以在负载数据报表中推分区。但是,请记住,HDFS不喜欢小的文档。

12、使用哈希表列的比较

如果你在每个查询中比较相同的10个字段,考虑使用()对比总结。这些有时是非常有用的,你可能会把它们放在一个输出表中。注意Hive0.12是低分辨率的,但是更好的可以使用的值在0.13。

本文作者:Andrew C. Oliver

来源:51CTO

时间: 2024-06-16 14:19:35

简单12招让Hive运行快一点,再快一点的相关文章

近一点再近一点看马云

□书评人 沈威风 <这才是马云>一书之中,作者--马云的助理陈伟,曾经在阿里巴巴内网上发了一个帖子,其中有一句话感慨地说,他从来没见过马云接受记者超过1小时以上的采访.我笑着纠正他,说这话不准确,应该加上一句,"除了沈威风之外,没有超过1小时的记者采访." 写这件事,完全没有显摆的意思,只是想说明,在挺长的一段时间里,我一直自认为是一个离马云挺近的人,也就因此自认为是一个挺了解他的人. 了解一个人,绝对是和距离有关系的. 在2007年写完<淘宝网,倒立者赢>这本

最简单几招 教你怎么把妹子腿变长

  拍出美腿,显示出好身材,是每个摄影师和模特都追求的目标.虽然我们没有超模一样的逆天大长腿,但是掌握这些拍照小技巧,我们也可以拍出大长腿,看看知乎小时先生为我们推荐的超实用的简单几招. 精简干货!学姐为例:   拍摄方面: 腿粗细长短,都是客观的既定事实,只有一点拍摄技术方面的要求: 趴在地上拍.韩冲大神曾说过一句话:"蹲下来,相信我",恩这就是拍大美腿的核心灵魂! 后面算我闲扯.不喜欢做后期的同学现在就请赏我个小小的赞呗! 喜欢后期的同学请继续看: 我接下所说的后期都是小幅度美化,

android-一段很简单的代码 Eclipse没有报错 可是手机上一点按钮就意外停止

问题描述 一段很简单的代码 Eclipse没有报错 可是手机上一点按钮就意外停止 (http://img.ask.csdn.net/upload/201505/31/1433054546_331226.png) 和书上对比了好多次了-.- 第一个 ```package com.example.ex04_01; import android.app.Activity; import android.content.Intent; import android.os.Bundle; import a

让工作节奏慢一点, 再简单的工作也能做出大成就

     快,是当下的工作主旋律.拿到任务,快刀斩乱麻,达成目标交差.甚至同时处理多个事务,一天到晚忙前忙后.一旦闲下来,便觉缺少了存在感.这未必是什么好事,事情做得比较浅,经验不能有效的积累,最终其实还是快不了,还反而让情绪受工作牵制.相对于这种做事做到恰到好处的做法,我更喜欢要做就往大了做.       从一个任务的表面来看,做出结果就算完事,这是结果导向.你要一份报告,我就给你一份报告.解一个Bug, 就保证这个Bug正常,扩展一下没有问题就好.如果真得很紧急,这样做是理所当然,这时候慢下

你家的Wi-Fi被蹭了!你造吗?简单6招解决蹭网问题

  现在很多智能路由器都自带手机APP,可以随时查看联网的设备,踢到蹭网设备也是轻而易举.但路由器不是年抛设备,很多人都还用着老古董,对于它们,应该如何查看是否被蹭网呢?又该如何规避呢?下面简单6招解决蹭网问题. 如何鉴别是否被蹭网? 第一点. 网速无缘无故变慢. 如果平时下载.浏览都很快,网速突然变慢,就要警惕. 第二点. 发现陌生设备. 在电脑网络上发现陌生设备基本可以肯定比的网络已经被别人盗用. 第三点. 排查IP地址. 经由管理界面经路由器上所列设备与电脑名.IP地址.硬件地址进行对比,

RAW格式插件 PS简单三招 阴天修出区域光影大片效果

  们知道阴天拍摄的风景照,往往会存在色彩晦涩,光线平淡,对比度不高等问题,可是用RAW格式插件,在photoshop里简单几招便可化腐朽为神奇,让你色彩光线平平的阴天照片瞬间高大上变身光影大片,修图效果如下图所示,还不赶紧学起来. (1)打开RAW格式图片文件,在ACR中观察图片的直方图,发现图片的中间区域的像素比较少,色阶图呈凹形,高光区域和暗部区域像素丰富,没有溢出.照片曝光正常,色彩平淡. (2)在面板上面的工具栏中选择渐变滤镜工具,从天空到地面拉出渐变.分别调整色温.色调.曝光.对比等

RAW格式简单三招 阴天修出区域光大片效果

  我们知道阴天拍摄的风景照,往往会存在色彩晦涩,光线平淡,对比度不高等问题,可是用RAW格式插件,在photoshop里简单几招便可化腐朽为神奇,让你色彩光线平平的阴天照片瞬间高大上变身光影大片,修图效果如下图所示,还不赶紧学起来. (1)打开RAW格式图片文件,在ACR中观察图片的直方图,发现图片的中间区域的像素比较少,色阶图呈凹形,高光区域和暗部区域像素丰富,没有溢出.照片曝光正常,色彩平淡. (2)在面板上面的工具栏中选择渐变滤镜工具,从天空到地面拉出渐变.分别调整色温.色调.曝光.对比

win7关闭开机动画让win7系统开机再快一点

以前我们说过很多种帮助Win7开机加速的方法,比如减少Win7开机启动的程序.服务或计划任务等.不过这些都优化都是针对已经进入Win7系统后进行的,要想让Win7系统开机再快一点,还有一种比较"另类"的优化方法,那就是关闭Win7系统的开机动画.这个系统默认的动画看久了,是不是也有点审美疲劳? 点击"开始"按钮,在搜索框中输入"msconfig",并按回车键,打开"系统配置"对话框. 输入msconfig打开系统配置 切换到&

RAW格式简单3招 阴天修出区域光大片效果

  我们知道阴天拍摄的风景照,往往会存在色彩晦涩,光线平淡,对比度不高等问题,我们用RAW格式插件,在photoshop里简单几招便可花腐朽为神奇,让你色彩光线平平的阴天照片瞬间高大上变身光影大片,修图效果如上图所示,还不赶紧学起来. (1)打开RAW格式图片文件,在ACR中观察图片的直方图,发现图片的中间区域的像素比较少,色阶图呈凹形,高光区域和暗部区域像素丰富,没有溢出.照片曝光正常,色彩平淡. (2)在面板上面的工具栏中选择渐变滤镜工具,从天空到地面拉出渐变.分别调整色温.色调.曝光.对比