hive查看表中列的信息命令_9-3.Hive动态分区

Hive参数

hive当中的参数、变量,都是以命名空间开头

0a6086cbf284da1ce467d4cbf6424cd7.png

通过${}方式进行引用,其中system、env下的变量必须以前缀开头

hive 参数设置方式

1、修改配置文件 ${HIVE_HOME}/conf/hive-site.xml

2、启动hive cli时,通过--hiveconf key=value的方式进行设置

例:hive --hiveconf hive.cli.print.header=true

3、进入cli之后,通过使用set命令设置 set hive.cli.print.header=true;

hive set命令

在hive CLI控制台可以通过set对hive中的参数进行查询、设置

set设置:

set hive.cli.print.header=true;

set查看

set hive.cli.print.header

hive参数初始化配置

当前用户家目录下的.hiverc文件

如: ~/.hiverc

如果没有,可直接创建该文件,将需要设置的参数写到该文件中,hive启动运行时,会加载改文件中的配置。

hive历史操作命令集

~/.hivehistory

Hive 动态分区

开启支持动态分区

set hive.exec.dynamic.partition=true;

默认:false

set hive.exec.dynamic.partition.mode=nostrict;

默认:strict(至少有一个分区列是静态分区)

相关参数

set hive.exec.max.dynamic.partitions.pernode;

每一个执行mr节点上,允许创建的动态分区的最大数量(100)

set hive.exec.max.dynamic.partitions;

所有执行mr节点上,允许创建的所有动态分区的最大数量(1000)

set hive.exec.max.created.files;

所有的mr job允许创建的文件的最大数量(100000)

加载数据

先建立原始表,load数据到原始表,然后从原始表向分区表导数据

from psn21

insert overwrite table psn22 partition(age, sex)

select id, name, age, sex, likes, address distribute by age, sex;

样例步骤

1.data3

1,bob,12,boy,lol-book-movie,beijing:shangxuetang-sahanghai:pudong1,tob,13,boy,lol-book-movie,beijing:shangxuetang-sahanghai:pudong1,mary,girl,13,lol-book-movie,beijing:shangxuetang-sahanghai:pudong1,lily,girl,14,lol-book-movie,beijing:shangxuetang-sahanghai:pudong1,susan,girl,22,lol-book-movie,beijing:shangxuetang-sahanghai:pudong1,jim,66,boy,lol-book-movie,beijing:shangxuetang-sahanghai:pudong1,tom,55,boy,lol-book-movie,beijing:shangxuetang-sahanghai:pudong1,jack,34,boy,lol-book-movie,beijing:shangxuetang-sahanghai:pudong

2.建原始表

 CREATE TABLE psn21( id INT, name STRING, age INT, sex STRING, likes ARRAY, address MAP)ROW FORMAT DELIMITEDFIELDS TERMINATED BY ','COLLECTION ITEMS TERMINATED BY '-'MAP KEYS TERMINATED BY ':'LINES TERMINATED BY '';

3.建分区表

CREATE TABLE psn22 ( id INT, name STRING, likes ARRAY, address MAP ) partitioned by (age int,sex string) ROW FORMAT DELIMITED FIELDS TERMINATED BY ',' COLLECTION ITEMS TERMINATED BY '-' MAP KEYS TERMINATED BY ':' LINES TERMINATED BY '';

4.导入原始表

 load data local inpath '/root/data3' into table psn21

5.导入分区表

set hive.exec.dynamic.partition=true;set hive.exec.dynamic.partition.mode=nostrict; from psn21insert overwrite table psn22 partition(age,sex)select id,name ,likes ,address ,age,sex distribute by age,sex;

hive运行方式

命令行方式cli:控制台模式

脚本运行方式(实际生产环境中用最多)

JDBC方式:hiveserver2

web GUI接口 (hwi、hue等)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值