设为首页 加入收藏

TOP

hive学习笔记-数据操作(二)
2015-11-21 01:52:38 来源: 作者: 【 】 浏览:4
Tags:hive 学习 笔记 数据 操作
e/warehouse/test4/* ./data/newdata
hdfs dfs -text /user/hive/warehouse/test5/* > ./data/newdata(可以对多种格式进行输出,压缩、序列化等)
hive -S -e "select * from test4" | grep yang > ./data/newdata

hive动态分区
分区不确定,需要从查询结果中查看。不需要为每个分区都使用alter table添加
使用动态分区需要配置的参数:
set hive.exec.dynamic.partition=true;//使用动态分区
set hive.exec.dynamic.partition.model=nonstrick;//分区有两种方式:一种是strick有限制分区,需要有一个静态分区,且放在最前面。一种就是nostrick无限制模式
set hive.exec.max.dynamic.partitions.pernode=10000;//每个节点生成动态分区的最大个数
set hive.exec.max.dynamic.partitions=100000;//生成动态分区的最大个数
set hive.exec.max.created.fiels=150000;//一个任务最多可以创建的文件数目
set dfs.datanode.max.xcievers=8192;//限定一次最多打开的文件数

insert overwrie table test7 partition(dt) select name,time as dt from test6;


表属性操作
修改表名:
alter table tableName rename to newName
修改列明:
alter table tableName change column old_col new_col newType comment '....' after colName(如果要为第一列则将aftercolName 改为first)
增加列:
alter table tableName add columns (c1 type comment '..',c2 type comment '...')
修改表属性
查看表属性
desc formatted tablename
这个是可以要修改的表的属性信息
Table Parameters:
COLUMN_STATS_ACCURATE false
last_modified_by colin
last_modified_time 1440154819
numFiles 0
numRows -1
rawDataSize -1
totalSize 0
transient_lastDdlTime 1440154819
修改属性:
alter table tableName set tblproerties('propertiesName'='.....');
比如修改comment
alter table tableName set tblproperties("comment"="xxxxx");
修改序列化信息:
无分区表
alter table tableName set serdepropertie('fields.delim'='\t');
有分区表
alter table tableName partition(dt='xxxx') set serdeproperties('fields.delim'='\t');
修改Location:
alter table tableName [partition(..)] set localtion 'path';
内部表外部表转换:

alter table tableName set tblproperties ('EXTERNAL'='TRUE|FALSE');必须大写EXTERNAL

首页 上一页 1 2 下一页 尾页 2/2/2
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇数据库的基本概念 下一篇ETL拉链算法汇总大全

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容: