利用环境管理依赖

Important

此功能在 Beta 版中。 账户管理员可以通过“标准计算环境”开关,在账户控制台预览页面控制该功能的访问。 请参阅 Manage Azure Databricks 预览版

在经典计算中, 环境 依赖模式允许你使用 基础环境 在工作负载层面管理依赖,而无需安装计算范围库。 这与 无服务器计算所采用的模型相同。

环境设置与计算层的变化保持隔离,因此工作负载在计算发生变化时不会崩溃。 而且因为 Azure Databricks 缓存了基础环境,依赖关系不会在启动时解决和安装,因此计算启动更快,避免了包解析、仓库可用性或网络可靠性等故障。

连接使用 环境 依赖模式的计算后,你可以选择基础环境,并在笔记本的 环境 侧面板添加依赖。 参见 在笔记本中使用环境

Requirements

依赖模式设置仅适用于满足以下要求的计算:

  • Databricks 运行时 19(测试版)及以上版本
  • 标准接入模式
  • 在交互式笔记本中运行的通用计算

有关支持细节,请参见 限制

设置依赖模式

要创建使用环境依赖模式的计算:

  1. 在工作区侧边栏,点击 计算图标计算 ,然后打开 多功能计算 标签。

  2. 单击“ 创建计算”。

  3. 性能下,从 Databricks Runtime 版本下拉菜单中选择 19 Beta 或更高版本。

  4. 展开 高级 部分,然后点击 依赖

  5. 对于 依赖项模式,请保持选中 自动,让 Azure Databricks 自动确定该模式;或者单击 手动 并选择 环境,自行进行设置。 参见 依赖模式选项

    计算创建表单的“高级”部分中的“依赖项”选项卡,在其中“依赖模式”设置为“自动”,并且解析为“环境”。

  6. 配置剩余的计算,然后点击 创建

计算运行后,附加一个笔记本,并按照“ 在笔记本中使用环境”中描述的配置其环境。

依赖模式选项

依赖模式控件有两个设置,用于确定如何选择该模式:

  • 自动:Azure Databricks 根据计算配置解析模式。 除非计算中指定了 Docker、Spark 环境变量或初始化脚本,否则自动解析为 环境 ,这种情况下解析为 集群库
  • 手动:你可以自行选择环境集群库

选择 手动模式时,请选择最适合您需求的模式:

  • 环境:利用基础环境在工作负载层面管理依赖关系。 集群库、Docker、Spark环境变量和初始化脚本均被禁用。 使用该模式实现一致且可移植的依赖体验,与无服务器计算相匹配。
  • 集群库:经典行为。 通过集群库、init脚本或Docker安装计算依赖。 如果你的工作量需要这些设置,请使用这个模式。

更新现有计算

如果你正在编辑现有计算的设置,如果计算设置不兼容,比如初始化脚本、集群库或 Docker ,切换到 环境 模式会被阻止。 如果你先移除了不兼容的设置,之后就可以编辑依赖模式。

如果你从环境模式切换到集群库模式,连接的笔记本会保留其环境选项,但这些选择会变成非激活状态。 如果你把计算切换回 环境 模式,这些选择又会重新激活。

在笔记本中使用环境

要在笔记本中使用环境,将笔记本连接到使用 环境 依赖模式的经典计算资源。 附加笔记本后,你可以像在无服务器计算资源上一样,在环境侧窗格environment中配置笔记本的依赖项。

在使用“环境”依赖模式的经典计算中,通过“环境”侧窗格配置笔记本环境。

选择基础环境

基础环境决定了笔记本预装的库和环境版本。 在环境侧窗格中的“基础环境”选择器中,您可在此选择环境。 Databricks 建议使用最新版本,以获取最新的笔记本功能。 要查看每个环境版本的详细信息,请参见 环境版本

基本环境选择器包含以下选项:

  • 标准:具有 Databricks 提供库的默认基础环境。
  • ML:一个基础环境,预装了 Databricks Runtime for 机器学习 中的 Python 和系统软件包。
  • 更多:展开以显示其他选项:
    • 标准和机器学习环境的早期版本。
    • 自定义:使用 YAML 文件指定自定义环境。
  • 工作区环境:列出所有由工作区管理员配置的兼容基础环境。

将依赖项添加到笔记本

Azure Databricks缓存笔记本的虚拟环境,因此每次重新打开笔记本或恢复处于非活动状态后,依赖项不会重新安装。

要单独安装某个依赖项:

  1. 依赖 部分,输入依赖路径,然后点击 +添加依赖。 可以在 requirements.txt 文件中指定有效的任何格式的依赖项。 Python轮子文件或Python项目(例如,包含 pyproject.tomlsetup.py 的目录)可以位于工作区文件或 Unity Catalog 存储卷中。

    • 如果使用工作区文件,则路径应为绝对路径,以 /Workspace/开头。
    • 如果在 Unity 目录卷中使用文件,路径应采用以下格式: /Volumes/<catalog>/<schema>/<volume>/<path>.whl
  2. 单击Apply安装依赖项并重启Python进程。

Important

请勿在笔记本中安装 PySpark,也不要安装任何会将 PySpark 作为依赖项进行安装的库。 这样做会停止会话并导致出现错误。 如果发生这种情况,请移除库并重置环境。

要查看已安装的依赖,请点击环境侧面板中的“已安装”标签。 单击窗格底部的 pip 日志 ,打开笔记本环境的 pip 安装日志。

Limitations

环境依赖模式支持交互笔记本中的 Python 工作负载和依赖。 以下限制适用:

  • 经典职业不使用 环境 依赖模式。 当作业在指定了 Environments 模式的经典通用计算资源上运行时,此设置会被忽略,作业将改为以 Cluster libraries 模式运行。
  • %scala 代码不支持,会失败。
  • 所有标准访问模式限制适用,包括不支持 R。参见 标准计算需求与限制
  • 目前你无法通过 计算策略强制依赖模式设置。

不兼容的设置

当环境依赖模式被启用时,以下计算设置将被禁用:

  • Docker (Azure Databricks Container Services)
  • 火花环境变量
  • 启动脚本
  • 集群库