AWS SageMaker笔记本列表表使用boto3和PySpark

AWS SageMaker笔记本列表表使用boto3和PySpark,pyspark,amazon-dynamodb,boto3,amazon-sagemaker,Pyspark,Amazon Dynamodb,Boto3,Amazon Sagemaker,在AWS SageMaker中执行以下代码时遇到一些困难。它应该只列出DynamoDB中的所有表 import boto3 resource = boto3.resource('dynamodb', region_name='xxxx') response = resource.tables.all() for r in response: print(r.name) 如果SageMaker笔记本内核被设置为“conda_python3”,那么代码可以正常执行,并且表会按照预期在笔记

在AWS SageMaker中执行以下代码时遇到一些困难。它应该只列出DynamoDB中的所有表

import boto3
resource = boto3.resource('dynamodb', region_name='xxxx')
response  = resource.tables.all()
for r in response:
    print(r.name)
如果SageMaker笔记本内核被设置为“conda_python3”,那么代码可以正常执行,并且表会按照预期在笔记本中列出(这种情况几乎会立即发生)

但是,如果我将内核设置为“Sparkmagic(PySpark)”,那么相同的代码将无限运行,并且根本不输出表列表


有人知道为什么PySpark内核会发生这种情况,而conda3内核却不会?理想情况下,我需要将此代码作为依赖PySpark的更大脚本的一部分运行,因此我希望它能够与PySpark一起工作。

了解问题所在,您需要结束一个端点,以浏览DyanmoDB的VPC

要执行此操作,请导航到:

  • AWS专有网络
  • 端点
  • 创建端点
  • 选择dynamodb服务(将为网关类型)
  • 选择笔记本电脑正在使用的专有网络