如何使用HiveQL语句在Hive中创建临时表?

文章介绍了如何在Hive中使用Beeline客户端创建和管理临时表。临时表只在当前会话可见,数据存储在HDFS的指定临时目录下,并在会话结束时自动删除。这些表不支持分区和索引,且会遮盖同名的非临时表。
摘要由CSDN通过智能技术生成

临时表是Hive数据表的一种特殊形式,临时表只对当前会话可见,数据被存储在用户的临时目录,并在会话结束时删除。接下来,在虚拟机 Node_03中使用Hive客户端工具Beeline,远程连接虚拟机Node_02的 HiveServer2服务操作Hive,在数据库hive_database中创建临时表temporary_table,具体命令如下。

CREATE TEMPORARY TABLE
hive_database.temporary_table
く
name STRING,
age int,
gender STRING
ROW FORMAT DELIMITED
FIELDS TERMINATED BY ','
LINES TERMINATED BY '\n'
STORED AS textfile
TBLPROPERTIES("comment"="This is a temporary table");

上述命令执行完成后,在Hive客户端工具Beeline中执行“DESC FORMATTED temporary_table;"命令,查看数据库 hive_database中临时表 temporary_table 的表结构信息,如图所示。
1683535035732_1679556990484_82-(1).jpg

临时表temporary_table的表结构信息

临时表temporary_table在HDFS的数据存储路径为/tmp_local/hive/root目录中,该路径中/tmp_local/hive为Hive配置文件中参数 hive.exec.scratchdir指定的临时目录,/root是根据当前用户名root创建的目录。在Hive客户端工具Beeline中执行“!table”命令退出当前会话,再次使用Hive客户端工具Beeline,在虚拟机Node_03中远程连接虚拟机Node_02的HiveServer2服务时,会发观数据库 hive_database中已经不存在临时表temporary_table。

注意:

(1)临时表不支持分区,不能基于CREATETABLE句式创建临时分区表。

(2)临时表不支持索引。

(3)临时表是数据表的一种展现形式,因此针对数据表的操作同样可以应用于临时表。

(4)如果同一数据库中的临时表与非临时表名称一致,那么此会话内任何操作都会被解析为临时表的操作,用户将无法访问同名的非临时表。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值