要使运行在集群上的笔记本电脑和作业可以使用第三方或自定义代码,可以安装一个库。库可以用Python、Java、Scala和r编写。您可以上传Java、Scala和Python库,并指向PyPI、Maven和CRAN存储库中的外部包。

本文主要讨论在工作区UI中执行库任务。方法也可以管理库库CLI或者是库API 2.0

提示

Databricks包含了Databricks运行时中的许多常用库。要查看Databricks Runtime中包含哪些库,请查看系统环境Databricks运行时发布说明为您的Databricks运行时版本。

重要的

Databricks不调用Pythonatexit当您的笔记本或作业完成处理时执行。如果你使用注册的Python库atexit处理程序,您必须确保您的代码在退出之前调用所需的函数。

安装Python eggs已弃用,并将在未来的Databricks Runtime版本中删除。使用Python轮或从PyPI安装包。

可以以三种方式安装库:工作区、集群安装和笔记本作用域。

  • 工作区库作为本地存储库,从中创建集群安装的库。工作区库可能是您的组织创建的自定义代码,也可能是您的组织标准化的开源库的特定版本。

  • 集群库可以被运行在集群上的所有笔记本使用。您可以直接从公共存储库(如PyPI或Maven)安装集群库,也可以从以前安装的工作区库创建集群库。

  • 笔记本范围的库,可用于Python和R,允许您安装库并创建笔记本会话范围的环境。这些库不会影响在同一集群上运行的其他笔记本电脑。笔记本范围的库不会持久存在,必须为每个会话重新安装。当您需要为特定的笔记本定制环境时,请使用笔记本范围的库。

本节包括:

Python环境管理

下表概述了可用于在Databricks中安装Python库的选项。

请注意

  • 使用magic命令的笔记本范围库在默认情况下是启用的。看到需求获取详细信息。

  • 不赞成使用库实用程序的笔记本范围的库。

Python包源

使用%pip的笔记本范围的库

带有库实用程序的笔记本范围的库(弃用)

集群库

工作库乔布斯API

PyPI

使用%皮普安装.看到例子

使用dbutils.library.installPyPI

选择PyPI作为源

添加一个新的pypi对象添加到作业库中,并指定字段。

私有PyPI镜像,如Nexus或Artifactory

使用%皮普安装——index-url选择。保密管理是可用的。看到例子

使用dbutils.library.installPyPI并指定回购论点。

不受支持的。

不受支持的。

vc,比如GitHub,使用原始源代码

使用%皮普安装并指定存储库URL作为包名。看到例子

不受支持的。

选择PyPI作为源并指定存储库URL作为包名。

添加一个新的pypi对象指定为作业库,并将存储库URL指定为字段。

带有原始源代码的私有VCS

使用%皮普安装并指定具有基本身份验证的存储库URL作为包名。保密管理是可用的。看到例子

不受支持的。

不受支持的。

不受支持的。

DBFS

使用%皮普安装.看到例子

使用dbutils.library. install (dbfs_path)

选择DBFS/S3作为源

添加一个新的whl对象指定为作业库,并将DBFS路径指定为字段。

S3

使用%皮普安装连同一个预先签名的URL。S3协议的路径s3: / /不支持。

使用dbutils.library. install (s3_path)

选择DBFS/S3作为源

添加一个新的whl对象指定为作业库,并将S3路径指定为字段。