库API 2.0
库API允许您安装和卸载图书馆和图书馆集群上的地位。
重要的
访问数据砖REST api,你必须进行身份验证。
所有集群状态
端点 |
HTTP方法 |
---|---|
|
|
得到所有图书馆的地位在所有集群。状态可以对所有库安装在集群通过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
。
响应
{“状态”:({“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”:假}]}]}
集群状态
端点 |
HTTP方法 |
---|---|
|
|
让图书馆集群上的状态。状态可以对所有库安装在集群通过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
。
响应
{“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 |
|
集群的惟一标识符。 |
library_statuses |
一个数组的LibraryFullStatus |
所有图书馆集群的状态。 |
安装
端点 |
HTTP方法 |
---|---|
|
|
在一个集群上安装库。安装后是异步的,它在后台完成请求。
重要的
这个调用会失败如果集群终止。
安装车轮图书馆集群上运行皮普
命令对车轮文件直接在司机和执行者。库中指定的所有依赖项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方法 |
---|---|
|
|
设置库上卸载一个集群。库不卸载,直到重新启动集群。卸载库没有安装在集群上没有影响,但并不是一个错误。
例子
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或凹口 |
|
如果jar, URI的jar安装。支持DBFS和S3 uri。例如: 如果鸡蛋,鸡蛋的URI被安装。支持DBFS和S3 uri。例如: 如果whl, URI的车轮或压缩安装车轮。支持DBFS和S3 uri。例如: 如果pypi, pypi库安装的规范。指定 如果maven, maven库安装的规范。例如: 如果凹口,凹口库安装的规范。 |
LibraryFullStatus
图书馆在特定集群的状态。
字段名 |
类型 |
描述 |
---|---|---|
图书馆 |
图书馆的惟一标识符。 |
|
状态 |
在集群上安装库的状态。 |
|
消息 |
一个数组的 |
发生的所有信息和警告信息到目前为止这个库。 |
is_library_for_all_clusters |
|
图书馆是否将被安装在所有集群通过UI库。 |
MavenLibrary
字段名 |
类型 |
描述 |
---|---|---|
坐标 |
|
Gradle-style Maven坐标。例如: |
回购 |
|
Maven回购安装Maven寄来的包裹。如果省略,Maven中央存储库和引发搜索包。 |
除外责任 |
一个数组的 |
依赖性排除列表。例如: Maven依赖除外责任:https://maven.apache.org/guides/introduction/introduction-to-optional-and-excludes-dependencies.html。 |
PythonPyPiLibrary
字段名 |
类型 |
描述 |
---|---|---|
包 |
|
的名字PyPI包安装。还支持一个可选的版本规范。例子: |
回购 |
|
可以找到包的存储库。如果没有指定,默认使用脉冲指数。 |
RCranLibrary
字段名 |
类型 |
描述 |
---|---|---|
包 |
|
凹口的名字包安装。这个字段是必需的。 |
回购 |
|
可以找到包的存储库。如果没有指定,默认使用凹口回购。 |
LibraryInstallStatus
图书馆在一个特定的集群的状态。
状态 |
描述 |
---|---|
等待 |
没有安装图书馆尚未采取行动。这个状态应该是非常短暂的。 |
解决 |
元数据需要安装图书馆正在从提供存储库中检索。 为Jar、鸡蛋、Whl库,这一步是无为法。 |
安装 |
图书馆积极安装,通过添加资源火花或执行系统命令在火花节点。 |
安装 |
图书馆已成功安装。 |
跳过 |
安装在砖集群运行时7.0或以上的跳过是因为Scala版本不兼容。 |
失败的 |
一些步骤安装失败。在消息字段中可以找到更多信息。 |
UNINSTALL_ON_RESTART |
图书馆被标记为删除。库可以删除只有当集群重新启动,所以图书馆进入这种状态将保持,直到重新启动集群。 |