1.进入hive客户端
>hive
2.查看数据库
>show databases;
3.查看表
>show tables;
4.对表进行的查询操作与sql几乎相同,需要注意的是尽量不要查看或操作过多数据。
5.创建表
>create table 表名(user_id int,user_name string) clustered by (user_id)
注意!推荐给表加上事务!否则在使用flume的时候会报错!
>create table 表名(user_id int,user_name string) clustered by (user_id) into 2 buckets stored as orc tblproperties('transactional'='true');
数据类型:
基本数据类型:
type | desc |
---|---|
tinyint | 1 byte signed integer |
smallint | 2 byte signed integer |
int | 4 byte signed integer |
bigint | 8 byte signed integer |
boolean | true or false |
float | 单精度 |
double | 双精度 |
string | . |
timestamp | . |
binary | . |
集合数据类型:
type | 例子 |
---|---|
struct | struct(‘John’,’Doe’) |
map | map(‘first’,’John’,’last’,”Doe) |
array | array(‘array’,’Doe’) |
还有个union
6.查看表的结构详情
>desc table 表名;
7.删除表内数据
>truncate table 表名;
8.删除表
>drop table 表名;
如果要永久删除的话 在表名后面加个 purge
9.关于锁
查看被锁住的表:
>show locks;
给表解锁
>unlock table 数据库名.表名;
(如果已经执行了use数据库,那么可以省略前面的 数据库名.)
关闭锁机制(默认为true)
>set hive.support.concurrency=false;
低版本的hive里面 默认配置对事务的支持不是很好,所以有些配置需要自己去set,比如:
>set hive.txn.manager = org.apache.hadoop.hive.ql.lockmgr.DummyTxnManager;