将交互式会话与 Microsoft Visual Studio Code 配合使用 - AWS Glue

将交互式会话与 Microsoft Visual Studio Code 配合使用

先决条件

  • 安装 AWS Glue 交互式会话并验证其可与 Jupyter Notebook 搭配使用。

  • 通过 Jupyter 下载和安装 Visual Studio Code。有关详细信息,请参阅采用 VS 代码的 Jupyter Notebook

开始使用 VS Code 进行交互式会话
  1. 在 VS Code 中禁用 Jupyter AutoStart。

    在 Visual Studio Code 中,Jupyter 内核将自动启动,这将防止您的魔术命令因会话已开启而生效。要在 Windows 上禁用自动启动,请前往文件 > 首选项 > 扩展 > Jupyter > 右键单击 Jupyter,然后选择扩展设置

    在 MacOS 上,请前往代码 > 设置 > 扩展 > Jupyter > 右键单击 Jupyter,然后选择扩展设置

    向下滚动直到看到 Jupyter:禁用 Jupyter 自动启动。选中标有“如果为 true,则禁止为您自动启动 Jupyter”。You must instead run a cell to start Jupyter(您必须运行一个单元格才能开启 Jupyter)。”

    
              屏幕截图显示为 VS 代码中 Jupyter 扩展启用的复选框。
  2. 转到 File(文件)> New File(新建文件)> Save(保存)以使用您选择的名称将此文件保存为 .ipynb 扩展,或者在 select a language(选择语言)下选择 jupyter 并保存文件。

    
              此屏幕截图显示正在使用新名称保存文件。
  3. 双击文件。系统将显示 Jupyter Shell 并打开笔记本。

    
              屏幕截图显示打开的笔记本。
  4. 在 Windows 上,您首次创建文件时,默认情况下,其未选择内核。单击 Select Kernel(选择内核),此时将显示可用内核的列表。选择 Glue PySpark

    在 MacOS 上,如果您看不到 Glue PySpark 内核,请尝试以下步骤:

    1. 运行本地 Jupyter 会话以获取 URL。

      例如,运行以下命令以启动 Jupyter Notebook。

      jupyter notebook

      当笔记本首次运行时,您会看到一个如 http://localhost:8888/?token=3398XXXXXXXXXXXXXXXX 的 URL。

      复制 URL。

    2. 在 VS Code 中,单击当前内核,然后选择其他内核...,然后选择现有的 Jupyter 服务器...。粘贴从上述步骤中复制的 URL。

      如果收到错误消息,请查看 VS Code Jupyter Wiki

    3. 如果成功,这会将内核设置为 Glue PySpark

    
              屏幕截图显示突出显示的 Select Kernel(选择内核)按钮。

    选择 Glue PySparkGlue Spark 内核(分别适用于 Python 和 Scala)。

    
              屏幕截图显示 AWS Glue PySpark 的选项。

    如果您在下拉列表中没有看到 AWS Glue PySparkAWS Glue Spark 内核,请确保您已在上述步骤安装 AWS Glue 内核,或者设置 Visual Studio Code 时 python.pythonPath 正确无误。要验证 python.pythonPath,请参阅以下步骤。

    1. 在 MS VS 代码中,导航到 Manage(管理)> Settings(设置)。单击打开设置图标。

      
                  屏幕截图显示 settings tab(设置选项卡)和 Text Editor page(文本编辑器页面)。
    2. python.pythonPath 应指向您的 Python 环境 python >位置路径<。如果您使用 code . 从虚拟环境中打开 Visual Studio Code,则其将指向该虚拟环境的 pythonPath。

    3. 如果您没有看到 python.pythonPath,请添加它并重启 Visual Studio Code。请参阅以下示例。

      { "python.pythonPath":"Python path of Python Virual environment" }
      { "python.pythonPath":"/Users/username/Documents/interactive_sessions_demo/lib/python3.8" }
      
                  屏幕截图显示 settings tab(设置选项卡)和 Text Editor page(文本编辑器页面)。
  5. 创建 AWS Glue 交互式会话。继续操作,以您在 Jupyter notebook 中相同的方式创建会话。在第一个单元格的顶部指定任意魔术,并运行代码语句。