在配置单元中 "LOAD DATA" 时访问被拒绝

Access denied when "LOAD DATA" in hive

当我执行一些语句时,我对 HDFS 路径 'XXX' 具有读取权限 "LOAD DATA INPATH 'XXX' into table YYY ..."

发生错误:

ERROR: AuthorizationException: User 'ZZZ' does not have privileges to access: 'XXX'

为什么 "LOAD DATA" 语句需要比 "READ" 更多的权限?

问题是 LOAD DATA 命令将文件从您在 INPATH 中指定的路径物理移动到创建 table 时指定的位置。现在,如果它必须移动数据,它需要对源文件夹的 RW 权限,因此会出现错误。

在此处搜索加载数据:Apache Docs

HTH.

您可能已经设置了所有权限,但运行进入权限错误。这是因为之前的更改没有反映在 Metastore 中,因此您需要从 IMPALA 运行 "INVALIDATE METADATA"。 (如果你使用 IMPALA)

这将解决权限问题。