java hive配置_Hive配置项的含义详解(1)

一个hive任务,如何才算是优化的任务,hadoop job config里哪些配置能影响hive的效率。看看hive的详细配置我们可以略知一二。

hive的配置:

hive.ddl.output.format:hive的ddl语句的输出格式,默认是text,纯文本,还有json格式,这个是0.90以后才出的新配置;

hive.exec.script.wrapper:hive调用脚本时的包装器,默认是null,如果设置为python的话,那么在做脚本调用操作时语句会变为python

hive.exec.plan:hive执行计划的文件路径,默认是null,会在运行时自动设置,形如hdfs://xxxx/xxx/xx;

hive.exec.scratchdir:hive用来存储不同阶段的map/reduce的执行计划的目录,同时也存储中间输出结果,默认是/tmp//hive,我们实际一般会按组区分,然后组内自建一个tmp目录存储;

hive.exec.submitviachild:在非local模式下,决定hive是否要在独立的jvm中执行map/reduce;默认是false,也就是说默认map/reduce的作业是在hive的jvm上去提交的;

hive.exec.script.maxerrsize:当用户调用transform或者map或者reduce执行脚本时,最大的序列化错误数,默认100000,一般也不用修改;

hive.exec.compress.output:一个查询的最后一个map/reduce任务输出是否被压缩的标志,默认为false,但是一般会开启为true,好处的话,根据这篇文章,节省空间不说,在不考虑cpu压力的时候会提高io;

hive.exec.compress.intermediate:类似上个,在一个查询的中间的map/reduce任务输出是否要被压缩,默认false,但一般也会手动开启,这篇文章对比了这两个配置,其中回复讲到,The former affects compression between MapReduce stages in a Hive query. The latter affects compression between map and reduce phases during the shuffle. 如此而已;

hive.jar.path:当使用独立的jvm提交作业时,hive_cli.jar所在的位置,无默认值;

hive.aux.jars.path:当用户自定义了UDF或者SerDe,这些插件的jar都要放到这个目录下,无默认值;

hive.partition.pruning:在编译器发现一个query语句中使用分区表然而未提供任何分区谓词做查询时,抛出一个错误从而保护分区表,默认是nonstrict;(待读源码后细化,网上资料极少)

hive.map.aggr:map端聚合是否开启,默认开启;这篇文章给出了map端聚合的很详细的描述;

hive.join.emit.interval:在发出join结果之前对join最右操作缓存多少行的设定,默认1000;hive jira里有个对该值设置太小的bugfix;

hive.map.aggr.hash.percentmemory:map端聚合时hash表所占用的内存比例,默认0.5,这个在map端聚合开启后使用,参看hive.map.aggr里提到的文章;

hive.default.fileformat:CREATE TABLE语句的默认文件格式,默认TextFile,其他可选的有SequenceFile、RCFile还有Orc;对于文件格式的说明对比,这里有篇对比可以参考,infoq上有篇文章讲了hadoop的文件格式;

hive.merge.mapfiles:在只有map的作业结束时合并小文件,默认开启true;

hive.merge.mapredfiles:在一个map/reduce作业结束后合并小文件,默认不开启false;

hive.merge.size.per.task:作业结束时合并文件的大小,默认256MB;

hive.merge.smallfiles.avgsize:在作业输出文件小于该值时,起一个额外的map/reduce作业将小文件合并为大文件,小文件的基本阈值,设置大点可以减少小文件个数,需要mapfiles和mapredfiles为true,默认值是16MB;

posted on 2013-08-13 15:24 changedi 阅读(3615) 评论(0)  编辑  收藏 所属分类: 数据

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/488439.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

怎么在别人网站注入js脚本_别人的网站是怎么实现引流的?这些站外SEO技巧是关键...

点击上方蓝字关注我们!因为分享,我们相遇在SEO路上“网站上线一段时间了,为什么没有流量?为什么没有询盘?”对于做网络营销的企业而言,网站流量与询盘是建立网站的根本目的,可是为什么操作了一段…

比尔盖茨NEJM发文:新冠肺炎是百年一遇的流行病!全世界应该如何应对?

来源:生物谷面对任何危机,政府都有两个同等重要的责任:解决眼前的问题,并防止它再次发生。COVID-19大流行就是一个恰当的例子。我们现在需要拯救生命,同时也需要改善我们应对疫情的方式。第一点更为紧迫,但…

java实现上传图片代码_Java图片上传实现代码

本文实例为大家分享了java图片上传代码,供大家参考,具体内容如下import java.io.*;import java.net.*;/**发送端*/class picsend{public static void main(String[] args) throws Exception{if(args.length!1){System.out.println("请选择一张.jpg图…

每个努力奋斗过的人,被不公正的际遇砸了满头包的时候,都有那么一瞬间的代入感。出生就是hard模式的人,早已经历了太多的劳其筋骨饿其体肤,再多的人为考验只会摧毁人对美好的向往。...

每个努力奋斗过的人,被不公正的际遇砸了满头包的时候,都有那么一瞬间的代入感。出生就是hard模式的人,早已经历了太多的劳其筋骨饿其体肤,再多的人为考验只会摧毁人对美好的向往。转载于:https://www.cnblogs.com/dj258/p/6805629…

python 利器_Python的爬虫利器之urllib

urllib包urllib是一个包含几个模块来处理请求的库:- urllib.request发送http请求- urllib.error处理请求过程中出现的异常- urllib.parse解析url- urllib.robotparser解析robots.txt文件一般我们爬虫只需要常用的几个,下面只列出比较常用的函数我们使用u…

中国数学相比与西方数学为什么会处于劣势?

来源:数学职业家虽然中国人更习惯【中国数学相比与西方数学为什么会处于劣势?】的视角,但私以为问【西欧数学为何可以独步天下】更合适。因为曾经辉煌过的阿拉伯数学、印度数学都落寞了。也没有其他任何地区的文明能达成西欧的成就。另外&…

java的地位和优势,Java语言之所以能持续占领霸主地位 这些优势功不可没

java作为一个真正面向对象语言,驰骋IT界二十余载,一直独占编程语言排行榜榜首,成为广泛使用的开发编程语言,为什么java就能够持续占领霸主地位呢?有哪些必然的优势呢?这首要的优势就是:既然是真…

WebBrowser,挖坑,跳坑,填坑

最近在 C# Asp.net 平台上的一个项目中用到了 WebBrowser 控件。自然而然就进入了 一连串的坑了。用网络上一同行的话“用WebBrowse,就是在给自己挖坑”。 道术太浅,这个坑我还是跳了。 需求:截取网页中的一部分,生成图片。 咣当咣…

python中用户尝试输入三次_用Python实现登录接口,允许尝试三次

项目需求描述:要求用户输入用户名和密码,认证成功后显示欢迎信息,如果连续输错三次则锁定用户名。逻辑流程图:实现代码:#!/usr/bin/env pythonimport sysaccount_file ‘account.txt‘lock_file ‘lock.txt‘# put a…

你可能会错过的3个重要AI趋势

来源:雷锋网以下3个趋势,目前可能尚未引起注意,但长期来看会产生重大影响。根据Gartner的一项调查,到2020年底,全球48%的CIO将部署AI。尽管人们对AI和ML持乐观态度,但我仍然持怀疑态度。在可以预…

php flush nginx,Nginx+phpfastcgi下flush输出问题

最近由于业务需要,需要使用php的flush输出缓存刷新,处理浏览器超时问题.最初的测试代码如下:ob_start();//打开缓冲区for ($i10; $i>0; $i--){echo $i.‘‘;ob_flush();flush();sleep(1);}ob_end_flush();//输出并关闭缓冲die();本以为这样就能1秒钟输出一个数字…

线性代数知识点总结_线性代数导读+笔记

一些学习线性代数的心得和资源分享,供大家参考。资源Introduction to Linear Algebra, 5th Edition​math.mit.edu学线性代数主要的参考书,Strang 教授也算是网红了,讲课讲得十分浅显易懂,网上有配套的video,强烈推荐。…

5G通信网络专题报告:新一轮移动通信网络建设迎来高潮

报告来源:山西证券1. 移动通信网络概述1.1 移动通信网络行业界定异地间人与人、人与物、物与物进行信息的传递和交换称为通信。通信以获取信息为目的,实现信息传输所需的一切设备和传输媒介构成通信系统,通信系统大体包括终端和通信网络两部分…

Oracle 通过字段名查询其所在的表

select owner , table_name , column_name from dba_tab_columns where column_nameLOG_TYPE ;转载于:https://www.cnblogs.com/linnuo/p/6812339.html

python标准库 下载_下载python标准库--python

1 #coding:utf-82 importurllib23 importos,sys4 from BeautifulSoup import BeautifulSoup #For processing HTML5 from bs4 importBeautifulSoup6 classBookSave():7 8 dir:html文件保存目录 url:index.html目录 static_url:js、css所在目录的上级目录9 distingui…

马赛克战——利用人工智能和自主系统来实施决策中心作战

知远战略与防务研究所 沐俭/编译自:美国战略与预算评估中心网站【知远导读】本篇推送编辑节选自美国战略与预算评估中心2020年2月11日发布的同名研究报告,报告由CSBA高级研究员布莱恩克拉克等撰写。报告认为,美军目前这种以一体化、多功能集…

java动态内存分部,如何利用Java实现动态内存分配?

一.实验原理原理:内存以分区为单位,每个分区可由(ID,addr,size,)进行描述class sector{int id -1;//记录作业的编号int addr0;//内存的起始位置int size100;//分配的内存大小}建立两个链表avail和busy。av…

codevs 1283 等差子序列

http://codevs.cn/problem/1283/ 题目描述 Description给一个 1 到 N 的排列{Ai}&#xff0c;询问是否存在 1<p1<p2<p3<p4<p5<…<pLen<N&#xff08;Len>3&#xff09;&#xff0c;使得 Ap1,Ap2,Ap3,…ApLen 是一个等差序列。 输入描述 Input Descr…

postgresql两个列模糊比较_JDBC进阶(一):批处理与获取自增长列的值

一、批处理假如要插入一万条记录到数据表中&#xff0c;那么使用普通的方法就要执行一万次插入操作&#xff0c;这样会频繁打开和关闭数据库连接&#xff0c;导致执行速度变慢。因此可以使用批处理机制将多条语句一次性提交给数据库批量处理。批处理的相关API&#xff1a;void …

深度解读后疫情时代下,零售行业的趋势及技术前瞻

来源&#xff1a;苏宁零售技术研究院作者&#xff1a;王俊杰、罗海棠博士、郭永慧、池曙强、张绿漪博士新冠状病毒肺炎疫情发展严峻&#xff0c;短时间内席卷全国。民众在政府的号召下选择了尽量不出行&#xff0c;餐饮、旅游、线下零售等行业面临严峻考验。但同时&#xff0c;…