0

在此处输入图像描述

AWS EMR MetaException,消息:

global_temp 上的 Lake Formation 权限不足。

我正在尝试使用火花会话来使用配置单元元存储查询数据。这些表是用胶水编目的。我可以直接使用spark.read.parquet. 但是,我想使用该spark.sql方法从 EMR 中查询目录。

当我运行该行时:

spark.sql("show tables from gluedatabase").show() 

我收到这样的错误:

'org.apache.hadoop.hive.ql.metadata.HiveException: MetaException(message:Insufficient Lake Formation permission(s) on global_temp (Service: AWSGlue; Status Code: 400; Error Code: AccessDeniedException));'
Traceback (most recent call last):
  File "/usr/lib/spark/python/lib/pyspark.zip/pyspark/sql/session.py", line 767, in sql
    return DataFrame(self._jsparkSession.sql(sqlQuery), self._wrapped)
  File "/usr/lib/spark/python/lib/py4j-0.10.7-src.zip/py4j/java_gateway.py", line 1257, in __call__
    answer, self.gateway_client, self.target_id, self.name)
  File "/usr/lib/spark/python/lib/pyspark.zip/pyspark/sql/utils.py", line 69, in deco
    raise AnalysisException(s.split(': ', 1)[2], stackTrace)
pyspark.sql.utils.AnalysisException: 'org.apache.hadoop.hive.ql.metadata.HiveException: MetaException(message:Insufficient Lake Formation permission(s) on global_temp (Service: AWSGlue; Status Code: 400; Error Code: AccessDeniedException));'
4

1 回答 1

0

我在设置 Glue 开发人员端点时遇到了类似的问题。尝试将 EMR 集群的角色添加到 Lake Formation 中的数据库创建者列表中。Lake Formation -> 管理员和数据库创建者

那应该解决它。祝你好运

于 2021-02-11T08:58:54.613 回答