代码之家  ›  专栏  ›  技术社区  ›  t_warsop

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

  •  1
  • t_warsop  · 技术社区  · 6 年前

    在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一起工作。

    0 回复  |  直到 6 年前
        1
  •  1
  •   t_warsop    6 年前

    找出了问题所在,您需要结束一个端点,以便为DyanmoDB巡更VPC。

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

    1. AWS专有网络
    2. 端点
    3. 创建终结点
    4. 选择dynamodb服务(将是Gateway类型)
    5. 选择笔记本正在使用的专有网络
    推荐文章