HIVE的使用

hive笔记

数据库的创建和删除
CREATE DATABASE|SCHEMA IF NOT EXISTS  <database name>;
DROP DATABASE IF EXISTS <database name>;
#-----------------------------------------
创建时添加db文件保存在HDFS的路径
CREATE (DATABASE|SCHEMA) [IF NOT EXISTS] database_name
    [COMMENT database_comment]
    [LOCATION hdfs_path]
    [WITH DBPROPERTIES (property_name=property_value, ...)];

CREATE DATABASE IF NOT EXISTS lxw1234
COMMENT 'lxw的大数据田地-lxw1234.com'
localtion 'hdfs://namenode/user/lxw1234/lxw1234.db/';
#使用HDFS超级用户创建数据库后,该数据库在HDFS上的存储路径的属主为超级用户,如果该数据库是为某个或者某些用户使用的,则需要修改路径属主,或者在Hive中进行授权
修改数据库属性
修改数据库属性:
ALTER (DATABASE|SCHEMA) database_name
SET DBPROPERTIES (property_name=property_value, …);

修改数据库属主:
ALTER (DATABASE|SCHEMA) database_name
SET OWNER [USER|ROLE] user_or_role;
删除数据库
#默认情况下,Hive不允许删除一个里面有表存在的数据库,如果想删除数据库,要么先将数据库中的表全部删除,要么可以使用CASCADE关键字,使用该关键字后,Hive会自己将数据库下的表全部删除。RESTRICT关键字就是默认情况,即如果有表存在,则不允许删除数据库。
DROP (DATABASE|SCHEMA) [IF EXISTS] database_name [RESTRICT|CASCADE];
查看分区信息
show partitions table_name
查看hdfs文件信息
dfs -ls /user/hive/warehouse/table02;
查看表的结构
desc formatted table_name;
desc table_name;
清除表中的数据
# delect:用于删除特定行条件,你可以从给定表中删除所有的行
# TRUNCATE:truncate用于删除所有的行,这个行为在Hive元存储删除数据是不可逆的
# DROP:删除hive中的表
# truncate 不能删除外部表!因为外部表里的数据并不是存放在Hive中的warehouse中
truncate table table_name;
# 另外一种清除表中数据的方法
insert overwrite table table_name select * from table_name where 1=0;
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值