故障排除 - Amazon SageMaker

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

故障排除

如果在使用 Amazon SageMaker Data Wrangler 时出现问题,我们建议您执行以下操作:

  • 如果提供了错误消息,请阅读消息并解决它报告的问题(如果可能)。

  • 确保您的 Studio Classic 用户的IAM角色具有执行操作所需的权限。有关更多信息,请参阅 安全性和权限

  • 如果您尝试从其他 AWS 服务(例如 Amazon Redshift 或 Athena)导入时出现问题,请确保您已配置执行数据导入所需的权限和资源。有关更多信息,请参阅 导入

  • 如果问题仍然存在,请选择屏幕右上方的获取帮助,联系 Data Wrangler 团队。有关更多信息,请参阅以下图片。

    数据牧马人帮助表单在 Data Wrangler 控制台中的位置。
    数据牧马人控制台中的 Data Wrangler 帮助表单。

作为最后的手段,您可以尝试重新启动运行 Data Wrangler 的内核。

  1. 保存并退出要重新启动内核的 .flow 文件。

  2. 选择正在运行的终端和内核图标,如下图所示。

    控制台中 “运行终端和内核” 图标的位置。
  3. 选择要终止内核的 .flow 文件右侧的停止图标,如下图所示。

    停止图标在控制台中的位置。
  4. 刷新浏览器。

  5. 重新打开正在处理的 .flow 文件。

Amazon 问题疑难解答 EMR

使用以下信息来帮助您解决在使用 Amazon 时可能出现的错误EMR。

  • 连接失败 — 如果连接失败并显示以下消息The IP address of the EMR cluster isn't private error message,则说明您的 Amazon EMR 集群可能未在私有子网中启动。作为安全最佳实践,Data Wrangler 仅支持连接到私有 Ama EMR zon 集群。选择您启动EMR集群的私有EC2子网。

  • 连接挂起和超时 – 问题很可能是网络连接问题造成的。您开始连接到集群后,屏幕不会刷新。大约 2 分钟后,您可能会看到以下错误:JdbcAddConnectionError: An error occurred when trying to connect to presto: xxx: Connect to xxx failed: Connection timed out (Connection timed out) will display on top of the screen.

    此错误可能有两个根本原因:

    • Amazon EMR 和 Amazon SageMaker Studio Classic 有所不同VPCs。我们建议同时推出 Amazon EMR 和 Studio Classic VPC。您也可以使用对VPC等互连。有关更多信息,请参阅什么是对VPC等互连? 。

    • Amazon EMR 主安全组在 Presto 使用的端口上缺少 Amazon SageMaker Studio Classic 安全组的入站流量规则。要解决此问题,请允许端口 8889 上的入站流量。

  • 由于连接类型配置错误,连接失败 – 您可能会看到以下错误消息: Data Wrangler couldn't create a connection to {connection_source} successfully. Try connecting to {connection_source} again. For more information, see Troubleshoot. If you’re still experiencing issues, contact support.

    请检查身份验证方法。您在 Data Wrangler 中指定的身份验证方法,应该与在集群上使用的身份验证方法相匹配。

  • 您没有LDAP身份验证HDFS权限 — 使用以下指南解决使用 Linux 凭据设置HDFS权限的问题。您可以使用以下命令登录集群:

    hdfs dfs -mkdir /user/USERNAME hdfs dfs -chown USERNAME:USERNAME /user/USERNAME
  • LDAP身份验证缺少连接密钥错误-您可能会看到以下错误消息:Data Wrangler couldn't connect to EMR hive successfully. JDBC connection is missing required connection key(s): PWD

    要进行LDAP身份验证,必须同时指定用户名和密码。JDBCURL存储在 Secrets Manager 中的属性缺失PWD

  • 在对LDAP配置进行故障排除时:我们建议确保LDAP身份验证器(LDAP服务器)已正确配置为连接到 Amazon EMR 集群。可使用 ldapwhoami 命令帮助解决配置问题。例如,您可以运行以下命令:

    • 对于 LDAPS — ldapwhoami -x -H ldaps://ldap-server

    • 对于 LDAP — ldapwhoami -x -H ldap://ldap-server

    如果身份验证器配置成功,任一命令都应返回 Anonymous

Salesforce 故障排除

生命周期配置错误

当您的用户首次打开 Studio Classic 时,他们可能会收到一条错误消息,说他们的生命周期配置有问题。使用 Amazon CloudWatch 访问您的生命周期配置脚本编写的日志。有关生命周期配置调试的更多信息,请参阅调试生命周期配置

如果您无法调试错误,可以手动创建配置文件。每次删除或重新启动 Jupyter 服务器时,都必须创建该文件。可按照以下过程手动创建该文件。

创建配置文件
  1. 导航到 Studio 经典版。

  2. 依次选择文件新建终端

  3. 创建 .sfgenie_identity_provider_oauth_config

  4. 在文本编辑器中打开该文件。

  5. 将包含 S JSON ecrets Manager 密钥的亚马逊资源名称 (ARN) 的对象添加到文件中。您可以使用以下模板创建对象。

    { "secret_arn": "example-secret-ARN" }
  6. 保存对文件所做的更改。

无法从 Data Wrangler 流访问 Salesforce Data Cloud

您的用户在从 Data Wrangler 流中选择 Salesforce Data Cloud 后,可能会收到一条错误消息,指出设置连接的先决条件尚未满足。这可能是由以下错误引起的:

  • Secrets Manager 中的 Salesforce 密钥尚未创建。

  • Secrets Manager 中的 Salesforce 密钥已创建,但缺少 Salesforce 标签。

  • Secrets Manager 中的 Salesforce 密钥是错误 AWS 区域地创建的。例如,您的用户将无法访问 ca-central-1 中的 Salesforce Data Cloud,因为您是在 us-east-1 中创建的密钥。您可以将密钥复制到 ca-central-1 中,也可以使用相同的凭证在 ca-central-1 中创建新密钥。有关复制密钥的信息,请参阅将密钥复制到其他 AWS Secrets ManagerAWS 区域密钥

  • 您的用户用于访问 Amazon SageMaker Studio Classic 的策略缺少以下权限 AWS Secrets Manager

  • 你在生命周期配置中指定的JSON对象的 Secrets Manager ARN 中有一个错字。

  • 包含你的 Salesforce OAuth 配置的 Secrets Manager 密钥里有一个错字

显示 redirect_uri_mismatch 的空白页面

您的用户在选择保存并连接后,可能会被重定向到一个显示 redirect_uri_mismatch 的页面。你在 Salesforce Connected App 设置中注册的回调URI要么丢失,要么不正确。

使用以下URL命令检查您的 Studio Classic URL 是否已在您的 Salesforce 组织的 “连接应用程序” 设置中正确注册:https://EXAMPLE_SALESFORCE_ORG/lightning/setup/NavigationMenus/home/. 有关使用已连接应用程序设置的更多信息,请导航至以下内容URL:https://EXAMPLE_SALESFORCE_ORG/lightning/setup/NavigationMenus/home/

注意

URI在 Salesforce 的系统内进行传播大约需要十分钟。

共享空间

共享空间目前不适用于 Salesforce Data Cloud 集成。您可以删除您打算使用的 Amazon SageMaker 域中的共享空间,也可以使用其他未设置共享空间的域名。

OAuth重定向错误

您的用户在选择连接后,应该能够从 Salesforce Data Cloud 导入数据。如果遇到错误,我们建议要求用户执行以下操作:

  • 告诉他们耐心等待 — 当他们被重定向回 Amazon SageMaker Studio Classic 时,最多可能需要一分钟才能完成身份验证过程。当用户被重定向时,我们建议告知用户应避免与浏览器交互。例如,不应关闭浏览器选项卡、切换到其他选项卡或与 Data Wrangler 流交互。与浏览器交互可能会删除连接到数据云所需的授权码。

  • 让用户重新连接到数据云 – 一些暂时性问题可能会导致与 Salesforce Data Cloud 的连接失败。让用户创建新的 Data Wrangler 流,然后再次尝试连接到 Salesforce Data Cloud。

  • 确保您的用户使用 Amazon SageMaker Studio Classic 关闭所有其他选项卡 — 在多个选项卡中打开 Studio Classic 可能会导致 Salesforce 数据云连接失败。确保您的用户只打开一个 Studio Classic 选项卡。

  • 多个用户同时访问 Studio Classic — 一次只能有一个用户访问一个亚马逊 SageMaker 域名。如果多个用户访问同一个域,则用户尝试创建的与 Salesforce 数据云的连接可能会失败。

同时更新 Data Wrangler 和 Studio Classic 也可能修复它们的错误。有关更新 Data Wrangler 的信息,请参阅更新 Data Wrangler。有关更新 Studio Classic 的信息,请参阅关闭并更新 SageMaker Studio 经典版

如果上述疑难解答步骤均不起作用,则可能会发现来自 Salesforce 的错误消息,Studio Classic URL 中嵌入了相应的描述。以下是您可能发现的消息示例:error=invalid_client_id&error_description=client%20identifier%20invalid

您可以查看中的错误消息URL并尝试解决它出现的问题。如果错误消息或描述不清楚,我们建议您搜索 Salesforce 知识库。如果搜索知识库不起作用,您可以联系 Salesforce 帮助中心以寻求更多帮助。

Data Wrangler 需要很长时间才能加载

当您的用户从 Salesforce Data Cloud 重定向回 Data Wrangler 时,可能需要很长的加载时间。

如果这是用户首次使用 Data Wrangler 或者他们删除了内核,则可能需要大约 5 分钟才能将新的 Amazon EC2 实例配置为使用 Data Wrangler。

如果用户并不是第一次使用 Data Wrangler,并且未删除内核,您可以要求用户刷新页面或关闭尽可能多的浏览器选项卡。

如果上述干预措施都不起作用,可以让用户建立与 Salesforce Data Cloud 的新连接。

用户导出数据失败且出现 Invalid batch Id 错误

当你的用户导出他们对自己的 Salesforce 数据所做的转换时,Data Wrangler 在后端使用的 SageMaker 处理任务可能会失败。Salesforce Data Cloud 可能暂时不可用,或者可能存在缓存问题。

为了解决这个问题,我们建议让您的用户回到导入数据并更改正在查询的列顺序的步骤。例如,用户可以将以下查询:

SELECT col_A, col_B FROM table

更改为以下查询:

SELECT col_B, col_A FROM table

用户在更改了列的顺序,并确保所做的后续转换仍然有效之后,可以再次开始导出数据。

用户无法导出非常大的数据集

如果您的用户从 Salesforce Data Cloud 导入了一个非常大的数据集,那么可能无法导出所做的转换。大型数据集可能包含太多行,也可能是复杂查询的结果。

我们建议让您的用户执行以下操作:

  • 简化他们的SQL查询

  • 对其数据进行采样

以下是用户可用来简化查询的一些策略:

  • 指定列名,而不是使用 * 运算符

  • 查找要导入的数据子集,而不是使用更大的子集

  • 最大限度减少大型数据集之间的连接

用户可以使用采样来减少数据集中的行数。有关采样方法的信息,您的用户可以参阅采样

由于刷新令牌无效,用户无法导出数据

Data Wrangler 使用JDBC驱动程序与 Salesforce 数据云集成。身份验证的方法是OAuth。对于OAuth,刷新令牌和访问令牌是两个不同的数据,用于授权访问您的 Salesforce Data Cloud 中的资源。

访问令牌或核心令牌允许通过 Data Wrangler,直接访问 Salesforce 数据并运行查询。其寿命很短,设计为很快过期。为了保持对 Salesforce 数据的访问权限,Data Wrangler 使用刷新令牌,从 Salesforce 获取新的访问令牌。

您可能将刷新的过期设置得太快,无法为用户获取新的访问令牌。您可能需要重访刷新令牌策略,以确保此策略可容纳需要为用户长时间运行的查询。有关配置刷新令牌策略的信息,请参阅 https://EXAMPLE_SALESFORCE_ORG_URL/lightning/setup/ConnectedApplication/home/

查询失败或表未加载

Salesforce 遇到了服务中断。即使您已正确配置所有设置,您的用户也可能在一段时间内无法导入其数据。

服务中断可能出于维护原因而发生。我们建议您第二天再查看问题是否已解决。

如果您遇到问题的时间超过一天,我们建议您联系 Salesforce 帮助中心以寻求进一步的帮助。有关联系 Salesforce 的信息,请参阅您希望如何与 Salesforce 取得联系?

OAUTH_APP_BLOCKED工作室经典版重定向期间

当您的用户被重定向回 Amazon SageMaker Studio Classic 时,他们可能会注意到其error=OAUTH_APP_BLOCKED中的查询参数URL。用户可能是遇到了一个暂时性问题,应该可以在一天之内自行解决。

也有可能是您屏蔽了用户对连接的应用程序的访问。有关解决此问题的信息,请参阅 https://EXAMPLE_SALESFORCE_ORG_URL/lightning/setup/ConnectedApplication/home/

OAUTH_APP_DENIED工作室经典版重定向期间

当您的用户被重定向回 Amazon SageMaker Studio Classic 时,他们可能会注意到其error=OAUTH_APP_ACCESS_DENIED中的查询参数URL。您尚未向其配置文件类型授予访问与 Data Wrangler 关联的 Connected App 的权限。

要解决用户的访问问题,请导航至 https://EXAMPLE_SALESFORCE_ORG_URL/lightning/setup/ManageUsers/home/,并检查是否为用户分配了正确的配置文件。