Snowpark Migration Accelerator: 在 Jupyter 笔记本中使用 SMA¶
我可以在工具中使用 Python 笔记本(.ipynb 文件)吗?¶
是!将笔记本文件 (.ipynb) 放在您选择作为工具输入的源目录中。笔记本可以位于该目录中的任何子文件夹中。可以在源目录或其子文件夹中同时包含 Python 文件 (.py) 和笔记本文件 (.ipynb)。该工具将处理所有兼容文件,无论文件在目录结构中的位置如何。
将笔记本文件 (.ipynb) 转换为 Python (.py) 文件有几个优点:
更好的版本控制:Python 文件更容易在 Git 等版本控制系统中跟踪更改和管理
改善协作:团队成员可以更有效地查看和编辑标准 Python 文件中的代码
更轻松的自动化:Python 文件可以直接在自动管道和计划任务中执行
更简洁的代码组织:Python 文件鼓励更好的代码结构和模块化
减小了文件大小:Python 文件通常比包含额外元数据的笔记本文件小
您有两个选择:
如果您打算继续以笔记本格式使用,请保持原样。SMA 可以直接分析和转换笔记本。
如果您想停止使用笔记本,请将 Python 代码提取到 .py 文件中。尽管这可以通过替代方案实现,但没有必要,因为 SMA 可以处理笔记本和 Python 文件。
要仅从 Jupyter 笔记本文件中提取 Python 代码,可以使用 nbconvert 实用工具。方法如下:
使用以下命令之一安装 nbconvert (https://pypi.org/project/nbconvert/) 包:
对于 Windows/Linux:
pip install nbconvert
对于 MacOS:
pip3 install nbconvert
或python3 -m pip install nbconvert
创建 Jupyter 笔记本目录的备份副本
使用命令行将所有 Jupyter 笔记本转换为 Python 脚本:
对于 Windows/Linux:
find /path/to/folder/with/notebooks -name '*.ipynb' | xargs python -m nbconvert --to script
对于 MacOS:
find /path/to/folder/with/notebooks -name '*.ipynb' | xargs python3 -m nbconvert --to script
这将在与笔记本相同的目录中创建 Python 脚本文件。
通过在输出目录上运行 SMA for Python 来处理转换后的 Python 文件。