对 Lake Formation 集群进行故障排查 - Amazon EMR
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 Amazon Web Services 服务入门

对 Lake Formation 集群进行故障排查

本部分向您介绍在将 Amazon EMR 与 Amazon Lake Formation 结合使用时对常见问题进行故障排查的过程。

不允许访问数据湖

您必须明确选择在 Amazon EMR 集群上进行数据筛选,然后才能分析和处理数据湖中的数据。当数据访问失败时,您将在笔记本条目的输出中看到一条通用 Access is not allowed 消息。

要选择并允许在 Amazon EMR 上进行数据筛选,请参阅《Amazon Lake Formation 开发人员指南》中的允许在 Amazon EMR 上进行数据筛选以获取说明。

会话过期

EMR Notebooks 和 Zeppelin 的会话超时由 Lake Formation 的 IAM 角色的 Maximum CLI/API session duration 设置控制。此设置的默认值为 1 小时。如果出现会话超时,在尝试返回 Spark SQL 命令时,您将在笔记本条目的输出中看到下列消息。

Error 401 HTTP ERROR: 401 Problem accessing /sessions/2/statements. Reason: JWT token included in request failed validation. Powered by Jetty:// 9.3.24.v20180605 org.springframework.web.client.HttpClientErrorException: 401 JWT token included in request failed validation…

要验证您的会话,请刷新页面。系统将提示您使用 IdP 重新进行身份验证并将重定向回笔记本。重新进行身份验证后,您可以继续运行查询。

用户在所请求表上没有权限

试图访问您没有访问权限的表时,在尝试运行 Spark SQL 命令时,您将在笔记本条目的输出中看到下列异常:

org.apache.spark.sql.AnalysisException: org.apache.hadoop.hive.ql.metadata.HiveException: Unable to fetch table table. Resource does not exist or requester is not authorized to access requested permissions. (Service: AWSGlue; Status Code: 400; Error Code: AccessDeniedException; Request ID: …

要访问该表,您必须通过在 Lake Formation 中更新与此表关联的权限,向用户授予访问权限。

插入、创建和变更表:在测试版中不支持

不支持插入、创建和变更受 Lake Formation 策略保护的数据库中的表。如果执行这些操作,在尝试运行 Spark SQL 命令时,您会在笔记本条目的输出中看到下列异常。

java.io.IOException: com.amazon.ws.emr.hadoop.fs.shaded.com.amazonaws.services.s3.model.AmazonS3Exception: Access Denied (Service: Amazon S3; Status Code: 403; Error Code: AccessDenied; Request ID: …

有关更多信息,请参阅将 Amazon EMR 与 Amazon Lake Formation 集成的限制