繁体   English   中英

Hive使用参数化的位置创建外部表

[英]Hive CREATE EXTERNAL TABLE with parameterized LOCATION

这按预期工作:

 DROP TABLE mytable; 
 CREATE EXTERNAL TABLE mytable (
     Dim1 STRING,
     Dim2 STRING,
     Dim3 STRING ) 
 LOCATION 'hdfs:///user/myuser/data';

但这不是:

 set rootpath = 'hdfs:///user/myuser/data'; 
 DROP TABLE mytable; 
 CREATE EXTERNAL TABLE mytable (
     Dim1 STRING,
     Dim2 STRING,
     Dim3 STRING ) 
 LOCATION '${hiveconf:rootpath}';

它失败并显示以下错误(配置单元0.9.0):

失败:解析错误:第9:11行输入“ hdfs”不匹配,期望EOF接近“''

我做错什么了吗,或者这是已知问题/限制? 有任何解决方法的建议吗?

我认为应该阅读LOCATION ${hiveconf:rootpath}

您还可以使用我们经常在创建表DDL中使用的环境变量。 可以称为$ {env:variable_name}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM