尝试从 Spark 在 Hive 中创建外部表并保存内容时出现以下错误。
The root scratch dir: /tmp/hive on HDFS should be writable. Current permissions are: rw-rw-rw-
我什至尝试将 /tmp/hive 文件夹的权限设置为 chmod 777 但没有成功。
尝试从 Spark 在 Hive 中创建外部表并保存内容时出现以下错误。
The root scratch dir: /tmp/hive on HDFS should be writable. Current permissions are: rw-rw-rw-
我什至尝试将 /tmp/hive 文件夹的权限设置为 chmod 777 但没有成功。
您授予权限可能是错误的,因为我认为您授予了本地/tmp/hive
目录的权限,但您应该授予/tmp/hive
HDFS 的权限
hadoop fs -chmod 777 /tmp/hive
设置暂存目录的更好方法是 hive-site.xml 中的 /user/${username}/tmp/hive。这样,所有查询详细信息都将写入提交的用户临时目录。在这种情况下,您不需要更改临时目录的权限。否则,所有用户都应该可以写全局暂存目录。
如果您首先使用 hdfs、cfs 或本地文件系统,请检查 hive-site.xml。
对于cfs,您将不得不使用sudo dse hadoop fs -chmod 777 /tmp/hive
对于 hdfs,您必须使用
sudo hdfs dfs -chmod 777 /tmp/hive
或sudo hadoop fs -chmod 777 /tmp/hive
我猜是本地的,你已经照顾好了。