翻译: https://www.cloudera.com/documentation/enterprise/latest/topics/cdh_ig_filesystem_perm.html
版本: 5.14.2
Hive数据存储在HDFS中,通常位于/user/hive/warehouse下 。如果/user/hive and /user/hive/warehouse 目录尚不存在,则需要创建目录。确保这个位置(或者你指定的任何路径 hive.metastore.warehouse.dir )存在并且可以由您希望创建表的用户写入。
重要:
Cloudera建议将Hive仓库目录的权限设置为 1777 ,让所有用户都可以访问 。这允许用户创建和访问他们的表,但是阻止不了他们删除其他用户的表。
另外,每个提交查询的用户都必须有一个HDFS主目录。 / tmp目录 (在本地文件系统上)必须是可写的,因为Hive广泛使用它。
HiveServer2 Impersonation 允许用户以连接用户的身份执行查询并访问HDFS文件。
如果您未启用impersonation,HiveServer2默认执行所有Hive任务作为启动Hive服务器的用户; 对于使用Kerberos身份验证的群集,这是映射到与HiveServer2一起使用的Kerberos主体的ID 。设置权限 1777 如上所述,允许此用户访问Hive仓库目录。
您可以 在服务器和客户端上设置更改此默认行为hive.metastore.execute.setugi 为true。此设置会使Metastore服务器使用客户端的用户和组权限。