hive学习(六) 参数和动态分区
1.hive 参数、变量
1.1hive的命名空间:
![](/Users/ADMINI~1/AppData/Local/Temp/enhtmlclip/Image(7).png)
1.2hive 参数设置方式
![](/Users/ADMINI~1/AppData/Local/Temp/enhtmlclip/Image(8).png)
1.3hive set命令
set hive.cli.print.header=true;
set查看
set hive.cli.print.header
![](/Users/ADMINI~1/AppData/Local/Temp/enhtmlclip/Image(9).png)
![](/Users/ADMINI~1/AppData/Local/Temp/enhtmlclip/Image(10).png)
2.hive动态分区
2.1数据文件data3
2.2创建表psn21
create table psn21(
id int,
name string,
age int,
sex string,
likes array<string>,
address map<string,string>
)
row format delimited
fields terminated by ','
collection items terminated by '-'
map keys terminated by ':'
lines terminated by '\n';
2.3加载data3数据到psn21表
load data local inpath '/root/data3' into table psn21;
2.4创建一个带分区的表psn22
create table psn22(
id int,
name string,
likes array<string>,
address map<string,string>
)
partitioned by(age int,sex string)
row format delimited
fields terminated by ','
collection items terminated by '-'
map keys terminated by ':'
lines terminated by '\n';
2.4将psn21的表导入到带分区的psn22表:
#在hive2.x版本如果直接将psn21查询到的对应字段插入到psn22表,会报错。.x版本是可以的
from psn21 insert into psn22 select id,name,likes,address,age,sex;
#正确操作应该用一个关键字 distribute by partition1,partition2
from psn21 insert into psn22 select id,name,likes,address,age,sex distribute by age,sex;
3.常用参数设置
3.1开启支持动态分区
set hive.exec.dynamic.partition=true;
set hive.exec.dynamic.partition.mode=nostrict;
3.2相关参数
set hive.exec.max.dynamic.partitions.pernode;
set hive.exec.max.dynamic.partitions;
set hive.exec.max.created.files;
hive学习(六) 参数和动态分区的更多相关文章
- Hive学习之修改表、分区、列
Hive学习之修改表.分区.列 https://blog.csdn.net/skywalker_only/article/details/30224309 https://www.cnblogs.co ...
- Hive Experiment 2(表动态分区和IDE)
1.使用oracle sql developer 4.0.3作为hive query的IDE. 下载hive-jdbc driver http://www.cloudera.com/content/c ...
- 对现有Hive的大表进行动态分区
分区是在处理大型事实表时常用的方法.分区的好处在于缩小查询扫描范围,从而提高速度.分区分为两种:静态分区static partition和动态分区dynamic partition.静态分区和动态分区 ...
- hive学习05 参数设置
001参数设置 hive执行命令的本质是mapreduce,当然也可以作为关系型数据库进行查询 --设置一个job有多少个reducer处理,依据多少的是文件的大小,默认1G set hive.exe ...
- Hive动态分区 参数配置及语法
Hive本身是不支持动态分区的.. 但动态分区是真的方便啊..不然手动维护要累死..按日期甚至小时来分区时动辄就好几千上万的分区..手动到哪一年去..? 想要用动态分区要先做一些设置来修改默认的配置. ...
- hive动态分区和混合分区
各位看官,今天我们来讨论下再Hive中的动态分区和混合分区方面的一些知识点以及相关的一些问题. 前面我们已经讲过管理表和外部表的一般分区的一些知识点,对于需要对表创建很多的分区,那么用户就需要些很多的 ...
- hive 动态分区实现 (hive-1.1.0)
笔者使用的hive版本是hive-1.1.0 hive-1.1.0动态分区的默认实现是只有map没有reduce,通过执行计划就可以看出来.(执行计划如下) insert overwrite tabl ...
- hive中简单介绍分区表(partition table)——动态分区(dynamic partition)、静态分区(static partition)
一.基本概念 hive中分区表分为:范围分区.列表分区.hash分区.混合分区等. 分区列:分区列不是表中的一个实际的字段,而是一个或者多个伪列.翻译一下是:“在表的数据文件中实际上并不保存分区列的信 ...
- hive从查询中获取数据插入到表或动态分区
Hive的insert语句能够从查询语句中获取数据,并同时将数据Load到目标表中.现在假定有一个已有数据的表staged_employees(雇员信息全量表),所属国家cnty和所属州st是该表的两 ...
随机推荐
- linux服务之NTP时间服务器
1. NTP简介 NTP(Network Time Protocol,网络时间协议)是用来使网络中的各个计算机时间同步的一种协议.它的用途是把计算机的时钟同步到世界协调时UTC,其精度在局域网内可达0 ...
- jqury中关于ajax的几个常用的函数
一: AJAX 是一种在无需重新加载整个网页的情况下,能够更新部分网页的技术. 什么是 AJAX ? AJAX = 异步 JavaScript 和 XML. AJAX 是一种用于创建快速动态网页的技术 ...
- dorado7常用内容
1.dataset添加数据this.get("#dsProduct").getData().insert();或者this.get("#dsProduct"). ...
- oracle 数据库记录
/*----------------------------------------------------------------------------*/ 问题1[--------] Selec ...
- 弄清楚CSS的匹配原理让你写出高效的CSS
用了这么多年的CSS,现在才明白CSS的真正匹配原理,不知道你是否也跟我一样?看1个简单的CSS: DIV#divBox p span.red{color:red;} 按习惯我们对这个CSS 的理解是 ...
- PID控制算法的C语言实现九
(1)微分先行PID控制算法 微分先行PID控制的特点是只对输出量yout(k)进行微分,而对给定值rin(k)不进行微分.这样,在改变给定值时,输出不会改变,而被控量的变化通常是比较缓和的.这种输出 ...
- UESTC--1730
原题链接:http://acm.uestc.edu.cn/problem.php?pid=1730 分析:线段树单点更新,区间求和. #include<iostream> #include ...
- 《提升c++性能的编程技术》读书笔记
http://note.youdao.com/noteshare?id=9ab0eda264c85b774021426867e18eae
- EL表达式格式化日期
在EL表达式中要显示"yyyy-MM-dd"格式的日期: 使用<fmt:>格式化标签 1 在页面上导入 <%@ taglib prefix=" ...
- Linux命令学习-图形化界面命令开关闭
su root password 1, 关闭图形界面: init 3 关闭图形界面(XServer服务也会关闭) 开启图形界面: init 5 或 startx 开机时,不进入 X Window: v ...