SQL 扩展的 JupyterLab SQL 编辑器功能 - 亚马逊 SageMaker AI
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

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

SQL 扩展的 JupyterLab SQL 编辑器功能

SQL 扩展提供了神奇的命令,可在 JupyterLab 笔记本单元格中启用 SQL 编辑器功能。

如果您是 SageMaker 发行版映像版本 1.6 的用户,则必须通过在 JupyterLab 笔记本%load_ext amazon_sagemaker_sql_magic中运行来加载 SQL 扩展魔法库。这将打开 SQL 编辑功能。

对于 SageMaker 分发映像版本 1.7 及更高版本的用户,无需执行任何操作,SQL 扩展会自动加载。

加载扩展后,在单元格开头添加 %%sm_sql 神奇命令,即可激活 SQL 编辑器的以下功能。

  • 连接-选择下拉菜单:在单元格中添加 %%sm_sql 神奇命令后,单元格顶部会出现一个下拉菜单,显示可用的数据来源连接。选择一个连接,即可自动填写查询该数据来源所需的参数。下面是选择名为 connection-name 的连接后生成的 %%sm_sql 神奇命令字符串示例。

    %%sm_sql --metastore-type GLUE_CONNECTION --metastore-id connection-name

    使用下面 SQL 编辑器的功能建立 SQL 查询,然后通过运行单元格来运行查询。有关 SQL 执行功能的更多信息,请参阅 SQL 扩展程序的 JupyterLab SQL 执行功能

  • 查询结果下拉菜单:您可以从连接选择下拉菜单旁边的下拉菜单中选择结果类型,从而指定如何呈现查询结果。从以下两个备选方案中选择一个:

    • 单元格输出:(默认)该选项在笔记本单元格输出区域显示查询结果。

    • Pandas DataFrame:此选项使用查询结果填充熊猫 DataFrame 。当你选择此选项 DataFrame 时,一个额外的输入框可以让你命名。

  • SQL 语法高亮:该单元格通过颜色和样式自动直观区域分 SQL 关键字、子句、运算符等。这使得 SQL 代码更易于阅读和理解。SELECTFROMWHERE 等关键词,SUMCOUNT 等内置函数,或 GROUP BY 等分句会以不同颜色和粗体样式突出显示。

  • SQL 格式化:您可以通过以下方式之一,应用一致的缩进、大小写、间距和换行来分组或分隔 SQL 语句和子句。这使得 SQL 代码更易于阅读和理解。

    • 右键单击 SQL 单元格,选择 Format SQL

    • 当 SQL 单元格处于焦点位置时,在 Windows 系统中使用 ALT + F 快捷键,在 MacOS 系统中使用 Option + F

  • SQL 自动填充:该扩展可在输入时自动建议和完成 SQL 关键字、函数、表名、列名等内容。当您开始键入一个 SQL 关键字(如 SELECTWHERE)时,扩展程序会弹出一个提示,建议您自动完成单词的其余部分。例如,在键入表或列名时,它会建议匹配数据库模式中定义的表和列名。

    重要

    要在 JupyterLab 笔记本中启用 SQL 自动完成功能, SageMaker AI 分发映像版本 1.6 的用户必须在终端中运行以下npm install -g vscode-jsonrpc sql-language-server命令。安装完成后,通过运行重新启动 JupyterLab 服务器restart-jupyter-server

    对于 SageMaker 分发映像版本 1.7 及更高版本的用户,无需执行任何操作。

    单元格提供了两种自动完成已识别 SQL 关键字的方法:

    • 明确调用(推荐):选择 Tab 键启动上下文感知建议菜单,然后选择 Enter 接受建议项目。

    • 连续提示:在您输入时,单元格会自动提示补全。

    注意
    • 只有当 SQL 关键字为大写字母时,才会触发自动完成功能。例如,输入 SELECT 会提示输入 SEL,但输入 sel 则不会。

    • 首次连接数据来源时,SQL 自动完成会对数据来源的元数据进行索引。索引编制过程可能需要一些时间才能完成,具体取决于数据库的大小。