hive——2.使用

本文详细介绍Hive数据定义语言(DDL)的操作,包括表的创建、查看、修改及删除等核心指令。同时,介绍了如何加载数据到Hive表中,并提及了元数据存储的相关配置。针对常见错误提供了解决方案。

启动hive:

启动hadoop:start-all.sh

启动hive:hive

[root@hadoop01 ~]# hive

hive>

 

DDL操作:

创建表:

create命令

hive> create table student(id bigint,name string,age int);

OK

Time taken: 0.945 seconds

hive>

 

查看表:

show命令

hive> show tables;

OK

student

Time taken: 0.074 seconds,

Fetched: 1 row(s)

hive>

查看以t结尾的表:

hive> SHOW TABLES '.*t';

OK student

Time taken: 0.016 seconds,

Fetched: 1 row(s)

hive>

查看表的结构:

hive> describe student;

OK

id bigint

name string

age int

Time taken: 0.1 seconds,

Fetched: 3 row(s)

hive>

 

改变表:

alter命令

改表名:

hive> alter table student rename to stu;

加列:

hive> alter table stu add columns (birthplace string);

修改列:(没仔细研究)

hive> alter table stu replace columns (birthplace string,home string,id int,name string);

OK

Time taken: 0.246 seconds

hive>

请注意,REPLACE COLUMNS将替换所有现有列,仅更改表的架构,而不是数据。该表必须使用native SerDe。

REPLACE COLUMNS也可用于从表的模式中删除列。

 

删除表:

drop table stu;

 

元数据存储:

元数据默认存储在Derby数据库中,其磁盘存储位置在hive-site.xml中配置,javax.jdo.option.ConnectionURL。

 

 

加载数据:

1.将本地或hdfs文件中的数据加载到Hive中:

hive> LOAD DATA LOCAL INPATH'./examples/files/kv1.txt'OVERWRITE INTO TABLE pokes;

hive> LOAD DATA INPATH '/user/myname/kv2.txt' OVERWRITE INTO TABLE invites PARTITION (ds='2008-08-15');

 

 

类sql语句:

参考hive官网:

https://cwiki.apache.org/confluence/display/Hive/GettingStarted#GettingStarted-RunningHiveCLI

 

 

 

遇到的错误:

1.在hive中执行sql语句报错:

SemanticException org.apache.hadoop.hive.ql.metadata.HiveException

解决:

参考:https://blog.youkuaiyun.com/xiaoqiu_cr/article/details/80913437

重新初始化元数据,再启动hive即可

[root@hadoop01 ~]# schematool -dbType mysql -initSchema

[root@hadoop01 ~]# hive

 

 

 

 

 

 

 

 

 

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值