繁体   English   中英

无法在 Hive 中创建表

[英]Unable to create table in Hive

我在简单查询下运行以创建一个简单的表。

创建表 test (id int, name varchar(20));

但是我收到以下错误,请告诉我需要做什么。

失败:执行错误,从 org.apache.hadoop.hive.ql.exec.DDLTask 返回代码 1。 MetaException(message:file:/user /hive/warehouse/test 不是目录或无法创建目录)

我已授予对 /user/hive/warehouse 文件夹的完全读/写访问权限。

您的 hive 用户无权将导演创建到 hdfs 中。 每当您创建表时,hive 都会在 User/hive/warehouse/table 中创建一个目录,但在这里无法在 user/hive/warehouse/ 中创建目录,因此授予此目录的权限以允许您的用户创建表。

http://www.cloudera.com/documentation/archive/cdh/4-x/4-2-0/CDH4-Installation-Guide/cdh4ig_topic_18_7.html

听起来像是权限问题。 下面的更改模式命令可能会有所帮助。

hadoop fs -chmod -R 755 /user/hive/warehouse/

错误消息说

file:/user /hive/warehouse/test". 

尽管 /user 和路径的其余部分之间存在空间, file:/意味着 Hive 正在尝试在本地文件系统上而不是在 hdfs 上创建该目录。 访问配置可能有问题。 我会检查 HADOOP_CONF_DIR 环境变量是否已正确初始化。

对我来说,这个问题和你的完全一样(创建内部表),与权限无关,但与存储有关,它被 100% 使用。 尝试检查相同。

暂无
暂无

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

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