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

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

CREATE TEMPORARY TABLEhive_database.temporary_tableくname STRING,age int,gender STRINGROW FORMAT DELIMITEDFIELDS TERMINATED BY ','LINES TERMINATED BY '\\n'STORED AS textfileTBLPROPERTIES("comment"="This is a temporary table");

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

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

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

本文来自投稿,不代表重蔚自留地立场,如若转载,请注明出处https://www.cwhello.com/265501.html

如有侵犯您的合法权益请发邮件951076433@qq.com联系删除

(0)
黑马程序员黑马程序员订阅用户
上一篇 2023年5月29日
下一篇 2023年5月29日

相关推荐

联系我们

QQ:951076433

在线咨询:点击这里给我发消息邮件:951076433@qq.com工作时间:周一至周五,9:30-18:30,节假日休息