库API 2.0

库API允许您安装和卸载图书馆和图书馆集群上的地位。

重要的

访问数据砖REST api,你必须进行身份验证

所有集群状态

端点

HTTP方法

2.0 /图书馆/ all-cluster-statuses

得到

得到所有图书馆的地位在所有集群。状态可以对所有库安装在集群通过API或UI库以及库将被安装在所有集群通过UI库。如果一个库将被安装在所有集群,is_library_for_all_clusters真正的,即使图书馆也安装在这个特定的集群。

例子

请求

curl——netrc请求\https:// < databricks-instance > / api / 2.0 /图书馆/ all-cluster-statuses\|金桥。

取代< databricks-instance >与砖工作区实例名例如,dbc-a1b2345c-d6e7.cloud.www.neidfyre.com

这个示例使用. netrc文件和金桥

响应

{“状态”:({“cluster_id”:“11203 -我的集群”,“library_statuses”:({“图书馆”:{“罐子”:“dbfs: / mnt /图书馆/ library.jar”},“状态”:“安装”,“消息”:[],“is_library_for_all_clusters”:}]},{“cluster_id”:“20131 -我-其他-集群”,“library_statuses”:({“图书馆”:{“蛋”:“dbfs: / mnt /图书馆/ library.egg”},“状态”:“错误”,“消息”:(“不能下载图书馆”),“is_library_for_all_clusters”:}]}]}

响应结构

字段名

类型

描述

状态

一个数组的ClusterLibraryStatuses

一个集群状态列表。

集群状态

端点

HTTP方法

2.0 /图书馆/集群状态

得到

让图书馆集群上的状态。状态可以对所有库安装在集群通过API或图书馆UI以及图书馆将被安装在所有集群通过UI库。如果一个库将被安装在所有集群,is_library_for_all_clusters真正的,即使图书馆也安装在集群。

例子

请求

curl——netrc请求\“https:// < databricks-instance > / api / 2.0 /图书馆/集群状态? cluster_id = < cluster-id > '\|金桥。

或者:

curl——netrc\https:// < databricks-instance > / api / 2.0 /图书馆/集群状态\——数据cluster_id=< cluster-id >\|金桥。

替换:

  • < databricks-instance >与砖工作区实例名例如,dbc-a1b2345c-d6e7.cloud.www.neidfyre.com

  • < cluster-id >集群的砖工作区ID,例如1234 - 567890 example123

这个示例使用. netrc文件和金桥

响应

{“cluster_id”:“11203 -我的集群”,“library_statuses”:({“图书馆”:{“罐子”:“dbfs: / mnt /图书馆/ library.jar”},“状态”:“安装”,“消息”:[],“is_library_for_all_clusters”:},{“图书馆”:{“pypi”:{“包”:“beautifulsoup4”},},“状态”:“安装”,“消息”:(“从PyPI成功解决方案”),“is_library_for_all_clusters”:},{“图书馆”:{“凹口”:{“包”:“艾达”,“回购”:“https://cran.us.r-project.org”},},“状态”:“失败”,“消息”:(“R包安装在这火花版本不支持。\ nPlease升级到运行时3.2或更高版本”),“is_library_for_all_clusters”:}]}

请求结构

字段名

类型

描述

cluster_id

字符串

集群的惟一标识符的地位应该检索。这个字段是必需的。

响应结构

字段名

类型

描述

cluster_id

字符串

集群的惟一标识符。

library_statuses

一个数组的LibraryFullStatus

所有图书馆集群的状态。

安装

端点

HTTP方法

2.0 /图书馆/安装

帖子

在一个集群上安装库。安装后是异步的,它在后台完成请求。

重要的

这个调用会失败如果集群终止。

安装车轮图书馆集群上运行皮普命令对车轮文件直接在司机和执行者。库中指定的所有依赖项setup . py文件安装,这需要库名称来满足轮文件名公约

安装在执行器发生只有当启动一个新任务。与砖7.1运行时,下面,库的安装顺序是不确定的。对于轮库,您可以确保确定的安装顺序通过创建一个zip文件后缀.wheelhouse.zip包括所有车轮文件。

例子

curl——netrc POST请求\https:// < databricks-instance > / api / 2.0 /图书馆/安装\——数据@install-libraries.json

install-libraries.json:

{“cluster_id”:“10201 -我的集群”,“库”:({“罐子”:“dbfs: / mnt /图书馆/ library.jar”},{“蛋”:“dbfs: / mnt /图书馆/ library.egg”},{“whl”:“dbfs: / mnt /图书馆/ mlflow-0.0.1.dev0-py2-none-any.whl”},{“whl”:“dbfs: / mnt /图书馆/ wheel-libraries.wheelhouse.zip”},{“专家”:{“坐标”:“org.jsoup: jsoup: 1.7.2”,“除外责任”:(“slf4j: slf4j”]}},{“pypi”:{“包”:“simplejson”,“回购”:“https://my-pypi-mirror.com”}},{“凹口”:{“包”:“艾达”,“回购”:“https://cran.us.r-project.org”}}]}

替换:

  • < databricks-instance >与砖工作区实例名例如,dbc-a1b2345c-d6e7.cloud.www.neidfyre.com

  • 的内容install-libraries.json与字段,适合您的解决方案。

这个示例使用. netrc文件。

请求结构

字段名

类型

描述

cluster_id

字符串

集群的惟一标识符来安装这些库。这个字段是必需的。

一个数组的图书馆

安装的库。

卸载

端点

HTTP方法

2.0 /图书馆/卸载

帖子

设置库上卸载一个集群。库不卸载,直到重新启动集群。卸载库没有安装在集群上没有影响,但并不是一个错误。

例子

curl——netrc POST请求\https:// < databricks-instance > / api / 2.0 /图书馆/卸载\——数据@uninstall-libraries.json

uninstall-libraries.json:

{“cluster_id”:“10201 -我的集群”,“库”:({“罐子”:“dbfs: / mnt /图书馆/ library.jar”},{“凹口”:“艾达”}]}

替换:

  • < databricks-instance >与砖工作区实例名例如,dbc-a1b2345c-d6e7.cloud.www.neidfyre.com

  • 的内容uninstall-libraries.json与字段,适合您的解决方案。

这个示例使用. netrc文件。

请求结构

字段名

类型

描述

cluster_id

字符串

集群的惟一标识符来卸载这些库。这个字段是必需的。

一个数组的图书馆

库卸载。

数据结构

ClusterLibraryStatuses

字段名

类型

描述

cluster_id

字符串

集群的惟一标识符。

library_statuses

一个数组的LibraryFullStatus

所有图书馆集群的状态。

图书馆

字段名

类型

描述

jar或蛋whl pypi或maven或凹口

字符串字符串字符串PythonPyPiLibraryMavenLibraryRCranLibrary

如果jar, URI的jar安装。支持DBFS和S3 uri。例如:{“罐子”:“dbfs: / mnt /砖/ library.jar”}{“罐子”:“s3: / /桶/ library.jar”}。如果使用S3,确保集群在图书馆读访问。你可能需要启动实例的集群配置文件访问S3 URI。

如果鸡蛋,鸡蛋的URI被安装。支持DBFS和S3 uri。例如:{“蛋”:“dbfs: /我的/蛋”}{“蛋”:“s3: / /桶/蛋”}。如果使用S3,确保集群在图书馆读访问。你可能需要启动实例的集群配置文件访问S3 URI。

如果whl, URI的车轮或压缩安装车轮。支持DBFS和S3 uri。例如:{“whl”:“dbfs: /我的/ whl”}{“whl”:“s3: / /桶/ whl”}。如果使用S3,确保集群在图书馆读访问。你可能需要启动实例的集群配置文件访问S3 URI。轮文件名需要使用正确的公约。如果要安装压缩轮子,文件名后缀.wheelhouse.zip

如果pypi, pypi库安装的规范。指定回购字段是可选的,如果没有指定,默认使用脉冲指数。例如:{“包”:“simplejson”,“回购”:“https://my-repo.com”}

如果maven, maven库安装的规范。例如:{“坐标”:“org.jsoup: jsoup: 1.7.2”}

如果凹口,凹口库安装的规范。

LibraryFullStatus

图书馆在特定集群的状态。

字段名

类型

描述

图书馆

图书馆

图书馆的惟一标识符。

状态

LibraryInstallStatus

在集群上安装库的状态。

消息

一个数组的字符串

发生的所有信息和警告信息到目前为止这个库。

is_library_for_all_clusters

BOOL

图书馆是否将被安装在所有集群通过UI库。

MavenLibrary

字段名

类型

描述

坐标

字符串

Gradle-style Maven坐标。例如:org.jsoup: jsoup:是1.7.2。这个字段是必需的。

回购

字符串

Maven回购安装Maven寄来的包裹。如果省略,Maven中央存储库和引发搜索包。

除外责任

一个数组的字符串

依赖性排除列表。例如:[" slf4j: slf4j”,“* hadoop-client”):

Maven依赖除外责任:https://maven.apache.org/guides/introduction/introduction-to-optional-and-excludes-dependencies.html

PythonPyPiLibrary

字段名

类型

描述

字符串

的名字PyPI包安装。还支持一个可选的版本规范。例子:simplejsonsimplejson = = 3.8.0。这个字段是必需的。

回购

字符串

可以找到包的存储库。如果没有指定,默认使用脉冲指数。

RCranLibrary

字段名

类型

描述

字符串

凹口的名字包安装。这个字段是必需的。

回购

字符串

可以找到包的存储库。如果没有指定,默认使用凹口回购。

LibraryInstallStatus

图书馆在一个特定的集群的状态。

状态

描述

等待

没有安装图书馆尚未采取行动。这个状态应该是非常短暂的。

解决

元数据需要安装图书馆正在从提供存储库中检索。

为Jar、鸡蛋、Whl库,这一步是无为法。

安装

图书馆积极安装,通过添加资源火花或执行系统命令在火花节点。

安装

图书馆已成功安装。

跳过

安装在砖集群运行时7.0或以上的跳过是因为Scala版本不兼容。

失败的

一些步骤安装失败。在消息字段中可以找到更多信息。

UNINSTALL_ON_RESTART

图书馆被标记为删除。库可以删除只有当集群重新启动,所以图书馆进入这种状态将保持,直到重新启动集群。