1.先启动集群,在开启hive服务

start-all.sh

nohup  hiveserver2(后台运行,可以重定向输出到制定文件)

Hive 外部表 内部表 分区表

2.使用beeline连接数据库

注意!

Hive 外部表 内部表 分区表

3.创建内部表

create table t_inside(ip string,url string,time string)row format delimited fields terminated by ',';

(以逗号来分割表数据)

Hive 外部表 内部表 分区表

上传数据文件到表目录下

Hive 外部表 内部表 分区表

当上传到表目录下,表中自动添加数据

Hive 外部表 内部表 分区表

(这里忘加逗号,数据就没有被分割开)

4.创建外部表

Hive 外部表 内部表 分区表

这里需要指定数据源,这里使用的是hdfs中的目录,想使用本地目录可以在localtion 后面加local

Hive 外部表 内部表 分区表

内部表与外部表的区别:外部表需自己指定表目录,且在删除后,外部表的元数据不会被删除

5.分区表

Hive 外部表 内部表 分区表
注意:分区的列(本文中的dt)不可以与其他列相同

分区表中的数据通过load加载

Hive 外部表 内部表 分区表

也可以加载hdfs中的文件

注意:加载本地文件相当于复制操作,加载hdfs文件相当于hdfs操作

相关文章: