AWS Glue Sagemaker 笔记本“没有名为 awsglue.transforms 的模块”

Posted

技术标签:

【中文标题】AWS Glue Sagemaker 笔记本“没有名为 awsglue.transforms 的模块”【英文标题】:AWS Glue Sagemaker Notebook "No module named awsglue.transforms" 【发布时间】:2019-10-04 13:50:38 【问题描述】:

我创建了一个 Sagemaker 笔记本来开发 AWS Glue 作业,但是在运行提供的示例(“使用 AWS Glue 加入、过滤和加载关系数据”)时,我收到以下错误:

有谁知道我设置错误/没有设置导致导入不起作用?

【问题讨论】:

【参考方案1】:

我遇到了同样的问题,所选的解决方案对我不起作用。

我确实设法通过使用云形成 (AWS::Glue::DevEndpoint) 开始工作。 通过反复试验,我注意到您不能同时指定 NumberOfNodesNumberOfWorkers。您必须指定其中一个。

使用 NumberOfNodes: 5 导致与问题中指定的完全相同的错误。但是使用第二个选项效果很好。

总而言之,要修复此错误,您可以使用 CloudFormation 并确保使用 NumberOfWorkers 属性。

【讨论】:

【参考方案2】:

对于 Glue 0.9,您需要从 here 下载库文件,对于 Glue 1.0,您需要从 here 下载库文件(检查您的 Glue 作业以获取版本)。

将 zip 放入 S3 并在您的 Dev Endpoint 上的“Python 库路径”中引用它。

【讨论】:

这是在哪里记录的? 这个解决方案对我不起作用。请在下面查看最终对我有用的内容【参考方案3】:

hm...这种方法对我不起作用。 我刚刚将 zip 放到“Python 库路径”中,对其进行了引用,但它不起作用

【讨论】:

【参考方案4】:

AWSGlueServiceNotebookRole 添加到您的开发端点 IAM 角色,重新启动内核并重新运行

【讨论】:

以上是关于AWS Glue Sagemaker 笔记本“没有名为 awsglue.transforms 的模块”的主要内容,如果未能解决你的问题,请参考以下文章

AWS Sagemaker Spark S3 访问问题

SageMaker 无权执行:iam:PassRole

如何修复 aws 区域错误“ValueError:必须使用 SageMaker 支持的区域设置本地 AWS 配置”

从 AWS SageMaker 访问 Google BigQuery

ClearML 如何在 AWS Sagemaker 中更改 clearml.conf 文件

AWS Glue 作业生命周期 - 笔记本到作业